fastParse method

  1. @override
bool fastParse(
  1. State<I> state
)
override

Parses the input and returns true if successful, false otherwise.

Implementation

@override
bool fastParse(State<I> state) {
  final r1 = end.fastParse(state);
  if (r1) {
    return true;
  }

  final pos = state.pos;
  final r2 = p.fastParse(state);
  if (!r2) {
    return false;
  }

  while (true) {
    final r1 = end.fastParse(state);
    if (r1) {
      return true;
    }

    final r2 = p.fastParse(state);
    if (!r2) {
      state.pos = pos;
      return false;
    }
  }
}