apps-script-utils 2.1.1 Help

requireNonSymbol

function requireNonSymbol<T>( value: T | symbol, message: string = "Expected a non-symbol value." ): T;

Registered symbols from Symbol.for and the well-known symbols both pass; nothing else does.

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

value

T \| symbol

The value to validate.

message (optional) = "Expected a non-symbol value."

string

The message of the exception. A default is used when omitted.

Returns

T — the same value, with a symbol excluded from its type.

Throws

Exception

Condition

IllegalArgumentException

the value is a symbol.

Examples

What passes and what does not

requireNonSymbol("id"); // => "id" requireNonSymbol(null); // => null requireNonSymbol(Symbol("id")); // throws IllegalArgumentException requireNonSymbol(Symbol.iterator); // throws IllegalArgumentException

See also

Source

src/lang/base/requireNonSymbol.ts

23 September 2026

This documentation was generated with AI (Claude) from the library's source code.