Package dev.frostlake.functions
Class HigherOrderFunctionNames
java.lang.Object
dev.frostlake.functions.HigherOrderFunctionNames
The higher-order functions — the ones whose last argument is a lambda, so the argument must NOT be
pre-evaluated.
ExpressionEvaluatorVisitor applies the lambda per array element instead of
looking the name up in the FunctionRegistry maps, which is why these names were invisible to
SHOW FUNCTIONS while being perfectly dispatchable.
This set is load-bearing for dispatch: the visitor tests membership here to decide
whether to take the higher-order path, and SHOW FUNCTIONS enumerates the same set through
FunctionRegistry.allDispatchableNames(), so the listing cannot drift from the dispatch again.
Snowflake lists all three (SHOW BUILTIN FUNCTIONS LIKE 'TRANSFORM'
returns TRANSFORM(ARRAY, FUNCTION(VARIANT)) RETURN ARRAY, is_builtin = 'Y').
-
Method Summary
-
Method Details
-
contains
Whether this name takes a lambda argument and is evaluated by the higher-order path. -
names
Every higher-order function name, upper-cased and sorted.
-