requireNonFunctionLike
function requireNonFunctionLike<T>( // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type value: T | Function, message: string = "Expected a non-function value." ): T;
The cheap test — typeof value === "function" — which is what you want before calling something. isFunction is the stricter reading of the same question.
isX and nonX answer a question and never interrupt control flow; requireX and requireNonX hand the value back or throw. The scheme is explained in Validation conventions.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| The value to validate. |
|
| The message of the exception. A default is used when omitted. |
Returns
T — the same value, with callable excluded from its type.
Throws
Exception | Condition |
|---|---|
| the value is callable. |
Examples
What passes and what does not
requireNonFunctionLike(null); // => null
requireNonFunctionLike({}); // => {}
requireNonFunctionLike(function () {}); // throws IllegalArgumentException
requireNonFunctionLike(Math.max); // throws IllegalArgumentException
See also
Source
23 September 2026
This documentation was generated with AI (Claude) from the library's source code.