parse method

  1. @override
Result<({int end, int start, String value})>? parse(
  1. State<StringReader> state
)
override

Parses the input and returns a result wrapped in Result if successful, null otherwise.

Implementation

@override
Result<({int start, int end, String value})>? parse(
    State<StringReader> state) {
  final pos = state.pos;
  final r = p.parse(state);
  if (r != null) {
    final v = state.input.substring(pos, state.pos);
    return Result((start: pos, end: state.pos, value: v));
  }

  return null;
}