PermuteParser<R> class

A parser that performs a transformation with a given function on the successful parse result of the delegate.

Inheritance
Available extensions

Constructors

PermuteParser.new(Parser<List<R>> delegate, List<int> indexes)

Properties

children List<Parser>
Returns a list of directly referenced parsers.
no setterinherited
delegate Parser<List<R>>
The parser this parser delegates to.
getter/setter pairinherited
hashCode int
The hash code for this object.
no setterinherited
indexes List<int>
Indicates which elements to return from the parsed list.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

copy() PermuteParser<R>
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.
inherited
hasEqualProperties(covariant PermuteParser<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<List<R>>
Returns the parse result of the input.
inherited
parseOn(Context context) Result<List<R>>
Primitive method doing the actual parsing.
override
permute(List<int> indexes) Parser<List<R>>

Available on Parser<List<R>>, provided by the PermuteParserExtension extension

Returns a parser that transforms a successful parse result by returning the permuted elements at indexes of 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<List<R>>, provided by the PickParserExtension extension

Returns a parser that transforms a successful parse result by returning the element at index of a list. A negative index can be used to access the elements from the back of the list.
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