fastParseOn method

  1. @override
int fastParseOn(
  1. String buffer,
  2. int position
)
override

Primitive method doing the actual parsing.

This method is an optimized version of Parser.parseOn that is getting its speed advantage by avoiding any unnecessary memory allocations.

The method is overridden in most concrete subclasses to implement the optimized logic. As an input the method takes a buffer and the current position in that buffer. It returns a new (positive) position in case of a successful parse, or -1 in case of a failure.

Subclasses don't necessarily have to override this method, since it is emulated using its slower brother.

Implementation

@override
int fastParseOn(String buffer, int position) =>
    position < buffer.length && predicate.test(buffer.codeUnitAt(position))
        ? position + 1
        : -1;