LabeledParser<R> class
abstract
Interface of a parser that has a debug label.
- Implemented types
-
- Parser<
R>
- Parser<
- Implementers
- Available extensions
- AcceptParser
- AndParserExtension
- CastListParserExtension
- CastParserExtension
- ChoiceParserExtension
- ContinuationParserExtension
- EndOfInputParserExtension
- FlattenParserExtension
- GreedyRepeatingParserExtension
- LabelParserExtension
- LazyRepeatingParserExtension
- MapParserExtension
- MatchesParserExtension
- NotParserExtension
- OptionalParserExtension
- PatternParserExtension
- PermuteParserExtension
- PickParserExtension
- PossessiveRepeatingParserExtension
- RecordParserExtension2
- RecordParserExtension3
- RecordParserExtension4
- RecordParserExtension5
- RecordParserExtension6
- RecordParserExtension7
- RecordParserExtension8
- RecordParserExtension9
- RepeatingCharacterParserExtension
- SeparatedRepeatingParserExtension
- SequenceParserExtension
- SettableParserExtension
- SkipParserExtension
- TokenParserExtension
- TrimmingParserExtension
- WhereParserExtension
Constructors
Properties
-
children
→ List<
Parser> -
Returns a list of directly referenced parsers.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- label → String
-
Debug label of the parser object.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
accept(
String input, {int start = 0}) → bool -
Available on Parser<
Tests if theR> , provided by the AcceptParser extensioninputcan be successfully parsed. -
allMatches(
String input, {int start = 0, bool overlapping = false}) → Iterable< T> -
Available on Parser<
Returns a lazy iterable over all non-overlapping successful parse results of typeT> , provided by the MatchesParserExtension extensionTover the providedinput. -
and(
) → Parser< R> -
Available on Parser<
Returns a parser (logical and-predicate) that succeeds whenever the receiver does, but never consumes input.R> , provided by the AndParserExtension extension -
callCC<
S> (ContinuationHandler< R, S> handler) → Parser<S> -
Available on Parser<
Returns a parser that when activated captures a continuation function and passes it together with the current context into the handler.R> , provided by the ContinuationParserExtension extension -
cast<
S> () → Parser< S> -
Available on Parser<
Returns a parser that casts itself toR> , provided by the CastParserExtension extensionParser<R>. -
castList<
S> () → Parser< List< S> > -
Available on Parser<
Returns a parser that casts itself toR> , provided by the CastListParserExtension extensionParser<List<R>>. Assumes this parser to be of typeParser<List>. -
copy(
) → Parser< R> -
Returns a shallow copy of the receiver.
inherited
-
end(
{String message = 'end of input expected'}) → Parser< R> -
Available on Parser<
Returns a parser that succeeds only if the receiver consumes the complete input, otherwise return a failure with the optionalR> , provided by the EndOfInputParserExtension extensionmessage. -
fastParseOn(
String buffer, int position) → int -
Primitive method doing the actual parsing.
inherited
-
flatten(
{String? message}) → Parser< String> -
Available on Parser, provided by the FlattenParserExtension extension
Returns a parser that discards the result of the receiver and answers the sub-string its delegate consumes. -
hasEqualChildren(
covariant Parser other, Set< Parser> seen) → bool -
Compare the children of two parsers.
inherited
-
hasEqualProperties(
covariant Parser other) → bool -
Compare the properties of two parsers.
inherited
-
isEqualTo(
Parser other, [Set< Parser> ? seen]) → bool -
Recursively tests for structural equality of two parsers.
inherited
-
labeled(
String label) → LabeledParser< R> -
Available on Parser<
Returns a parser that simply defers to its delegate, but that has aR> , provided by the LabelParserExtension extensionlabelfor debugging purposes. -
map<
S> (Callback< R, S> callback, {bool hasSideEffects = false}) → Parser<S> -
Available on Parser<
Returns a parser that evaluates aR> , provided by the MapParserExtension extensioncallbackas the production action on success of the receiver. -
map2<
R> (R callback(T1, T2), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2)> , provided by the RecordParserExtension2 extensionRusing the providedcallback, see MapParserExtension.map for details. -
map3<
R> (R callback(T1, T2, T3), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2, T3)> , provided by the RecordParserExtension3 extensionRusing the providedcallback, see MapParserExtension.map for details. -
map4<
R> (R callback(T1, T2, T3, T4), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2, T3, T4)> , provided by the RecordParserExtension4 extensionRusing the providedcallback, see MapParserExtension.map for details. -
map5<
R> (R callback(T1, T2, T3, T4, T5), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2, T3, T4, T5)> , provided by the RecordParserExtension5 extensionRusing the providedcallback, see MapParserExtension.map for details. -
map6<
R> (R callback(T1, T2, T3, T4, T5, T6), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2, T3, T4, T5, T6)> , provided by the RecordParserExtension6 extensionRusing the providedcallback, see MapParserExtension.map for details. -
map7<
R> (R callback(T1, T2, T3, T4, T5, T6, T7), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2, T3, T4, T5, T6, T7)> , provided by the RecordParserExtension7 extensionRusing the providedcallback, see MapParserExtension.map for details. -
map8<
R> (R callback(T1, T2, T3, T4, T5, T6, T7, T8), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2, T3, T4, T5, T6, T7, T8)> , provided by the RecordParserExtension8 extensionRusing the providedcallback, see MapParserExtension.map for details. -
map9<
R> (R callback(T1, T2, T3, T4, T5, T6, T7, T8, T9), {bool hasSideEffects = false}) → Parser< R> -
Available on Parser<
Maps a parsed Record to(T1, T2, T3, T4, T5, T6, T7, T8, T9)> , provided by the RecordParserExtension9 extensionRusing the providedcallback, see MapParserExtension.map for details. -
neg(
{String message = 'input not expected'}) → Parser< String> -
Available on Parser<
Returns a parser that consumes any input token (character), but the receiver.R> , provided by the NotParserExtension extension -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
not(
{String message = 'success not expected'}) → Parser< Failure> -
Available on Parser<
Returns a parser (logical not-predicate) that succeeds with the Failure whenever the receiver fails, but never consumes input.R> , provided by the NotParserExtension extension -
optional(
) → Parser< R?> -
Available on Parser<
Returns new parser that accepts the receiver, if possible. The resulting parser returns the result of the receiver, orR> , provided by the OptionalParserExtension extensionnullif not applicable. -
optionalWith(
R value) → Parser< R> -
Available on Parser<
Returns new parser that accepts the receiver, if possible. The resulting parser returns the result of the receiver, orR> , provided by the OptionalParserExtension extensionvalueif not applicable. -
or(
Parser other, {FailureJoiner? failureJoiner}) → ChoiceParser -
Available on Parser, provided by the ChoiceParserExtension extension
Returns a parser that accepts the receiver orother. The resulting parser returns the parse result of the receiver, if the receiver fails it returns the parse result ofother(exclusive ordered choice). -
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
-
permute(
List< int> indexes) → Parser<List< R> > -
Available on Parser<
Returns a parser that transforms a successful parse result by returning the permuted elements atList< , provided by the PermuteParserExtension extensionR> >indexesof a list. Negative indexes can be used to access the elements from the back of the list. -
pick(
int index) → Parser< R> -
Available on Parser<
Returns a parser that transforms a successful parse result by returning the element atList< , provided by the PickParserExtension extensionR> >indexof a list. A negative index can be used to access the elements from the back of the list. -
plus(
) → Parser< List< R> > -
Available on Parser<
Returns a parser that accepts the receiver one or more times. The resulting parser returns a list of the parse results of the receiver.R> , provided by the PossessiveRepeatingParserExtension extension -
plusGreedy(
Parser< void> limit) → Parser<List< R> > -
Available on Parser<
Returns a parser that parses the receiver one or more times until it reachesR> , provided by the GreedyRepeatingParserExtension extensionlimit. This is a greedy non-blind implementation of the PossessiveRepeatingParserExtension.plus operator. Thelimitis not consumed. -
plusLazy(
Parser< void> limit) → Parser<List< R> > -
Available on Parser<
Returns a parser that parses the receiver one or more times until it reaches aR> , provided by the LazyRepeatingParserExtension extensionlimit. This is a lazy non-blind implementation of the PossessiveRepeatingParserExtension.plus operator. Thelimitis not consumed. -
plusSeparated<
S> (Parser< S> separator) → Parser<SeparatedList< R, S> > -
Available on Parser<
Returns a parser that consumes the receiver one or more times separated by theR> , provided by the SeparatedRepeatingParserExtension extensionseparatorparser. The resulting parser returns a SeparatedList containing collections of both the elements of typeRas well as the separators of typeS. -
plusString(
{String? message}) → Parser< String> -
Available on Parser<
Returns a parser that accepts the receiver one or more times. The resulting parser returns the consumed input string.String> , provided by the RepeatingCharacterParserExtension extension -
repeat(
int min, [int? max]) → Parser< List< R> > -
Available on Parser<
Returns a parser that accepts the receiver betweenR> , provided by the PossessiveRepeatingParserExtension extensionminandmaxtimes. The resulting parser returns a list of the parse results of the receiver. -
repeatGreedy(
Parser< void> limit, int min, int max) → Parser<List< R> > -
Available on Parser<
Returns a parser that parses the receiver at leastR> , provided by the GreedyRepeatingParserExtension extensionminand at mostmaxtimes until it reaches alimit. This is a greedy non-blind implementation of the PossessiveRepeatingParserExtension.repeat operator. Thelimitis not consumed. -
repeatLazy(
Parser< void> limit, int min, int max) → Parser<List< R> > -
Available on Parser<
Returns a parser that parses the receiver at leastR> , provided by the LazyRepeatingParserExtension extensionminand at mostmaxtimes until it reaches alimit. This is a lazy non-blind implementation of the PossessiveRepeatingParserExtension.repeat operator. Thelimitis not consumed. -
repeatSeparated<
S> (Parser< S> separator, int min, int max) → Parser<SeparatedList< R, S> > -
Available on Parser<
Returns a parser that consumes the receiver betweenR> , provided by the SeparatedRepeatingParserExtension extensionminandmaxtimes separated by theseparatorparser. The resulting parser returns a SeparatedList containing collections of both the elements of typeRas well as the separators of typeS. -
repeatString(
int min, int max, {String? message}) → Parser< String> -
Available on Parser<
Returns a parser that accepts the receiver betweenString> , provided by the RepeatingCharacterParserExtension extensionminandmaxtimes. The resulting parser returns the consumed input string. -
replace(
Parser source, Parser target) → void -
Changes the receiver by replacing
sourcewithtarget. Does nothing ifsourcedoes not exist in Parser.children.inherited -
seq(
Parser other) → Parser< List> -
Available on Parser, provided by the SequenceParserExtension extension
Returns a parser that accepts the receiver followed byother. The resulting parser returns a list of the parse result of the receiver followed by the parse result ofother. Calling this method on an existing sequence code does not nest this sequence into a new one, but instead augments the existing sequence withother. -
settable(
) → SettableParser< R> -
Available on Parser<
Returns a parser that points to the receiver, but can be changed to point to something else at a later point in time.R> , provided by the SettableParserExtension extension -
skip(
{Parser< void> ? before, Parser<void> ? after}) → Parser<R> -
Available on Parser<
Returns a parser that consumes inputR> , provided by the SkipParserExtension extensionbeforeandafterthe receiver, but discards the parse results ofbeforeandafterand only returns the result of the receiver. -
star(
) → Parser< List< R> > -
Available on Parser<
Returns a parser that accepts the receiver zero or more times. The resulting parser returns a list of the parse results of the receiver.R> , provided by the PossessiveRepeatingParserExtension extension -
starGreedy(
Parser< void> limit) → Parser<List< R> > -
Available on Parser<
Returns a parser that parses the receiver zero or more times until it reaches aR> , provided by the GreedyRepeatingParserExtension extensionlimit. This is a greedy non-blind implementation of the PossessiveRepeatingParserExtension.star operator. Thelimitis not consumed. -
starLazy(
Parser< void> limit) → Parser<List< R> > -
Available on Parser<
Returns a parser that parses the receiver zero or more times until it reaches aR> , provided by the LazyRepeatingParserExtension extensionlimit. This is a lazy non-blind implementation of the PossessiveRepeatingParserExtension.star operator. Thelimitis not consumed. -
starSeparated<
S> (Parser< S> separator) → Parser<SeparatedList< R, S> > -
Available on Parser<
Returns a parser that consumes the receiver zero or more times separated by theR> , provided by the SeparatedRepeatingParserExtension extensionseparatorparser. The resulting parser returns a SeparatedList containing collections of both the elements of typeRas well as the separators of typeS. -
starString(
{String? message}) → Parser< String> -
Available on Parser<
Returns a parser that accepts the receiver zero or more times. The resulting parser returns the consumed input string.String> , provided by the RepeatingCharacterParserExtension extension -
times(
int count) → Parser< List< R> > -
Available on Parser<
Returns a parser that accepts the receiver exactlyR> , provided by the PossessiveRepeatingParserExtension extensioncounttimes. The resulting parser returns a list of the parse results of the receiver. -
timesSeparated<
S> (Parser< S> separator, int count) → Parser<SeparatedList< R, S> > -
Available on Parser<
Returns a parser that consumes the receiverR> , provided by the SeparatedRepeatingParserExtension extensioncounttimes separated by theseparatorparser. The resulting parser returns a SeparatedList containing collections of both the elements of typeRas well as the separators of typeS. -
timesString(
int count, {String? message}) → Parser< String> -
Available on Parser<
Returns a parser that accepts the receiver exactlyString> , provided by the RepeatingCharacterParserExtension extensioncounttimes. The resulting parser returns the consumed input string. -
token(
) → Parser< Token< R> > -
Available on Parser<
Returns a parser that returns a Token. The token carries the parsed value of the receiver Token.value, as well as the consumed input Token.input from Token.start to Token.stop of the input being parsed.R> , provided by the TokenParserExtension extension -
toPattern(
) → Pattern -
Available on Parser<
Converts this Parser into a Pattern for basic searches within strings.R> , provided by the PatternParserExtension extension -
toString(
) → String -
A string representation of this object.
inherited
-
trim(
[Parser< void> ? left, Parser<void> ? right]) → Parser<R> -
Available on Parser<
Returns a parser that consumes input before and after the receiver, discards the excess input and only returns the result of the receiver. The optional arguments are parsers that consume the excess input. By defaultR> , provided by the TrimmingParserExtension extensionwhitespace()is used. Up to two arguments can be provided to have different parsers on theleftandrightside. -
where(
Predicate< R> predicate, {String? message, FailureFactory<R> ? factory}) → Parser<R> -
Available on Parser<
Returns a parser that evaluates theR> , provided by the WhereParserExtension extensionpredicatewith the successful parse result. If the predicate returnstruethe parser proceeds with the parse result, otherwise a parse failure is created using the optionally specifiedfactorycallback, the providedmessage, or otherwise an automatically created error message.
Operators
-
operator &(
Parser other) → Parser< List> -
Available on Parser, provided by the SequenceParserExtension extension
Convenience operator returning a parser that accepts the receiver followed byother. See seq for details. -
operator ==(
Object other) → bool -
The equality operator.
inherited
-
operator |(
Parser other) → ChoiceParser -
Available on Parser, provided by the ChoiceParserExtension extension
Convenience operator returning a parser that accepts the receiver orother. See or for details.