positionalArgumentParser function
ArgumentEntryParser
positionalArgumentParser({
- required ParserContext parserContext,
- required dynamic positionalParameter,
- required List<
Parameter> parameters, - required SettableParser loopbackParser,
Accepts a value expression (not starting with name=) and converts it to a ArgumentEntry
It uses a loopback parser which is an expressionParser so that it can
parse any known expression to a parameter value.
The loopbackParser
is a SettableParser
because the expressionParser
does not exist when this positionalArgumentParser is created.
Implementation
ArgumentEntryParser positionalArgumentParser({
required ParserContext parserContext,
required positionalParameter,
required List<Parameter> parameters,
required SettableParser loopbackParser,
}) =>
([for (var p in parameters) (string(p.name).trim() & char('=').trim())]
.toChoiceParser()
.not() &
loopbackParser)
.map((values) => ArgumentEntry(positionalParameter.name, values[1]));