parse method
- String source
override
Attempts to parse the source string matching this element.
Returns a ParseResult containing the parsed lexeme and remaining string on success. On failure, returns a failed ParseResult.
Implementation
@override
ParseResult parse(String source) {
final result = entryRule.parse(source);
if (result.remaining.isNotEmpty) {
// The full source was not consumed so the parsing has failed
return ParseResult(
false,
result.remaining,
lexeme: result.lexeme,
ruleName: name,
element: toString(),
stack: Stack<ParseResult>()..push(result),
);
}
return ParseResult(
result.success,
result.remaining,
lexeme: result.lexeme,
ruleName: name,
element: toString(),
stack: Stack<ParseResult>()..push(result),
);
}