Function.ScalarVector
Creates a scalar function on top of a vector function, batching multiple invocations.
Syntax
Function.ScalarVector(
scalarFunctionType as type,
vectorFunction as function
) as function
Remarks
Returns a scalar function of type scalarFunctionType
that invokes vectorFunction
with a single row of arguments and returns its single output. Additionally, when the scalar function is repeatedly applied for each row of a table of inputs, such as in Table.AddColumn, instead vectorFunction
will be applied once for all inputs.vectorFunction
will be passed a table whose columns match in name and position the parameters of scalarFunctionType
. Each row of this table contains the arguments for one call to the scalar function, with the columns corresponding to the parameters of scalarFunctionType
.vectorFunction
must return a list of the same length as the input table, whose item at each position must be the same result as evaluating the scalar function on the input row of the same position.
The input table is expected to be streamed in, so vectorFunction
is expected to stream its output as input comes in, only working with one chunk of input at a time. In particular, vectorFunction
must not enumerate its input table more than once.
Category
Function