RepeatingParser<T, R> class abstract

An abstract parser that repeatedly parses between 'min' and 'max' instances of its delegate.

Inheritance
Implementers
Available Extensions

Constructors

RepeatingParser(Parser<T> parser, int min, int max)

Properties

children List<Parser>
Returns a list of directly referenced parsers.
no setterinherited
delegate Parser<T>
The parser this parser delegates to.
getter/setter pairinherited
hashCode int
The hash code for this object.
no setterinherited
max int
The maximum amount of repetitions, or unbounded.
final
min int
The minimum amount of repetitions.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

captureResultGeneric<T>(T callback<R>(Parser<R> self)) → T
Internal helper to capture the generic type R of the parse result. This makes it possible to wrap the parser without loosing type information.
inherited
copy() Parser<R>
Returns a shallow copy of the receiver.
inherited
fastParseOn(String buffer, int position) int
Primitive method doing the actual parsing.
inherited
hasEqualChildren(covariant Parser other, Set<Parser> seen) bool
Compare the children of two parsers.
inherited
hasEqualProperties(covariant RepeatingParser<T, R> other) bool
Compare the properties of two parsers.
override
isEqualTo(Parser other, [Set<Parser>? seen]) bool
Recursively tests for structural equality of two parsers.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
parse(String input, {int start = 0}) Result<R>
Returns the parse result of the input.
inherited
parseOn(Context context) Result<R>
Primitive method doing the actual parsing.
inherited
replace(Parser source, Parser target) → void
Changes the receiver by replacing source with target. Does nothing if source does not exist in Parser.children.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited