functionParser function
Parser<Expression<Object> >
functionParser({
- required ParserContext context,
- required ExpressionFunction<
Object> function, - required SettableParser loopbackParser,
Implementation
Parser<Expression> functionParser({
required ParserContext context,
required ExpressionFunction<Object> function,
required SettableParser loopbackParser,
}) {
return (string(function.name, 'expected function name: ${function.name}') &
char('(').trim() &
ArgumentsParser(
parserContext: context,
parameters: function.parameters,
loopbackParser: loopbackParser,
) &
char(')').trim())
.valueContextMap(
(values, context) => FunctionExpression(
context.toPositionString(),
function,
values[2] as Map<String, Expression>,
),
);
}