ChoiceParser<T> class
Null safety
A parser that uses the first parser that succeeds.
- Inheritance
- Object
- Parser<
T> - ListParser<
T, T> - ChoiceParser
- Available Extensions
- AcceptParser
- AndParserExtension
- CastListParserExtension
- CastParserExtension
- ChoiceParserExtension
- ContinuationParserExtension
- EndOfInputParserExtension
- FlattenParserExtension
- GreedyRepeatingParserExtension
- LabelParserExtension
- LazyRepeatingParserExtension
- MapParserExtension
- MatchesParser
- MatchesSkippingParser
- NotParserExtension
- OptionalParserExtension
- PatternParserExtension
- PossessiveRepeatingParserExtension
- SeparatedByParserExtension
- SequenceParserExtension
- SettableParserExtension
- SkipParserExtension
- TokenParserExtension
- TrimmingParserExtension
- WhereParserExtension
Constructors
-
ChoiceParser(Iterable<
Parser< children, {FailureJoiner<T> >T> ? failureJoiner})
Properties
-
children
→ List<
Parser< T> > -
The children parsers being delegated to.
final, inherited
-
failureJoiner
→ FailureJoiner<
T> -
Strategy to join multiple parse errors.
final
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
Methods
-
captureResultGeneric<
T> (T callback(Parser< R> self)) → T -
Internal helper to capture the generic type
R
of the parse result from extension methods. This makes it possible to wrap the parser without loosing type information.@internal, @nonVirtual, inherited -
copy(
) → ChoiceParser< T> -
Returns a shallow copy of the receiver. [...]
override
-
fastParseOn(
String buffer, int position) → int -
Primitive method doing the actual parsing. [...]
override
-
hasEqualChildren(
covariant Parser other, Set< Parser> seen) → bool -
Compare the children of two parsers. [...]
@nonVirtual, @protected, inherited
-
hasEqualProperties(
covariant ChoiceParser< T> other) → bool -
Compare the properties of two parsers. [...]
override
-
isEqualTo(
Parser other, [Set< Parser> ? seen]) → bool -
Recursively tests for structural equality of two parsers. [...]
@nonVirtual, inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
parse(
String input) → Result< T> -
Returns the parse result of the
input
. [...]@nonVirtual, inherited -
parseOn(
Context context) → Result< T> -
Primitive method doing the actual parsing. [...]
override
-
replace(
Parser source, Parser target) → void -
Changes the receiver by replacing
source
withtarget
. Does nothing ifsource
does not exist in Parser.children. [...]inherited -
toString(
) → String -
A string representation of this object. [...]
inherited
-
withFailureJoiner(
FailureJoiner< T> failureJoiner) → ChoiceParser<T> - Switches the failure joining strategy.
Operators
-
operator ==(
Object other) → bool -
The equality operator. [...]
inherited