petitparser library

该软件包包含PetitParser的核心库,这是一个动态解析器​​组合器框架.

Classes

ActionParser<T, R>
在委托的成功解析结果上使用给定功能执行转换的解析器.
AndParser<T>
和谓词,一个解析器,只要它的委托成功,该解析器便会成功,但不会占用输入流Parr 1994, 1995 .
AnyParser
接受任何输入元素的解析器.
CharacterParser
单个字符类的解析器类.
CharacterPredicate
抽象字符谓词类.
ChoiceParser
使用成功的第一个解析器的解析器.
Context
不变的解析上下文.
DelegateParser<R>
委托给另一个解析器的解析器. 通常,用户不需要直接使用委托解析器.
DigitCharPredicate
EndOfInputParser
在输入结束时成功的解析器.
EpsilonParser<T>
一个不消耗任何东西并成功的解析器.
ExpressionBuilder
一个允许使用前缀,后缀以及左右关联的中缀运算符对表达式语法进行简单定义的生成器. [...]
Failure<R>
在解析失败的情况下,解析结果将保持不变.
FailureParser<T>
解析器不消耗任何资源并且失败.
FlattenParser
解析器回答其委托解析的范围的子字符串.
GrammarDefinition
使用普通的Dart代码方便地定义和构建复杂的递归语法的助手. [...]
GrammarParser
从{@link GrammarDefinition}构建解析器的助手.
GreedyRepeatingParser<T>
贪婪的重复解析器,通常在正则表达式实现中看到. 它会积极消耗尽可能多的输入,然后回溯以满足"极限"条件.
LazyRepeatingParser<T>
延迟重复解析器,通常在正则表达式实现中看到. 它限制其消耗以尽早达到"极限"条件.
LetterCharPredicate
LimitedRepeatingParser<T>
一个抽象解析器,它反复在其委托的" min"和" max"实例之间进行解析,并且要求输入使用指定的解析器" limit"来完成. 子类提供重复行为,通常在正则表达式实现中可见(非盲目).
LowercaseCharPredicate
NotParser
非谓词,一个解析器,只要它的委托不执行就成功,但是不消耗任何输入Parr 1994, 1995 .
OptionalParser<T>
一个解析器,可以选择解析其委托或回答nil.
Parser<T>
所有解析器的抽象基类.
PositionParser
报告当前输入位置的解析器.
PossessiveRepeatingParser<T>
A greedy parser that repeatedly parses between 'min' and 'max' instances of its delegate.
PredicateParser
满足谓词的文字的解析器.
RangeCharPredicate
RepeatingParser<T>
一个抽象解析器,它反复解析其委托的"最小"和"最大"实例.
Result<R>
不变的解析结果.
SequenceParser
一个解析器,解析一系列解析器.
SettableParser<T>
未定义的解析器,但可以在以后的某个时间设置.
SingleCharPredicate
Success<R>
在成功解析的情况下,解析结果将是不变的.
Token<T>
令牌表示输入流的已解析部分. [...]
TokenParser<T>
解析器回答其委托解析的结果标记.
TrimmingParser<T>
一个解析器,静默使用其委托周围的另一个解析器的输入.
UppercaseCharPredicate
WhitespaceCharPredicate
WordCharPredicate

Constants

unbounded → const int
一个int,用于标记无限制的最大重复次数.
-1

Properties

pattern_ Parser<CharacterPredicate>
解析器可能读取谓词的后继序列.
最后
range_ Parser<RangeCharPredicate>
解析器读取一个字符范围.
最后
sequence_ Parser<CharacterPredicate>
解析器,读取单个字符或范围的序列.
最后
single_ Parser<RangeCharPredicate>
解析器读取单个字符.
最后

Functions

any([String message = 'input expected']) Parser<String>
返回一个接受任何输入元素的解析器. [...]
anyIn(String elements, [String message]) Parser<String>
返回一个接受任何elements的解析器. [...]
anyOf(String chars, [String message]) Parser<String>
返回一个接受任何指定字符的解析器.
char(Object char, [String message]) Parser<String>
返回仅接受特定字符的解析器.
digit([String message = 'digit expected']) Parser<String>
返回一个接受任何数字字符的解析器.
endOfInput([String message = 'end of input expected']) Parser<void>
返回在输入结束时成功的解析器.
epsilon<T>([T result]) Parser<T>
返回不消耗任何东西并成功的解析器. [...]
failure<T>([String message = 'unable to parse']) Parser<T>
返回不消耗任何内容且失败的解析器. [...]
letter([String message = 'letter expected']) Parser<String>
返回一个接受任何字母字符的解析器.
lowercase([String message = 'lowercase letter expected']) Parser<String>
返回一个接受任何小写字符的解析器.
noneOf(String chars, [String message]) Parser<String>
返回不接受任何指定字符的解析器.
pattern(String element, [String message]) Parser<String>
返回一个接受给定字符类模式的解析器.
position() Parser
返回报告当前输入位置的解析器.
predicate(int length, Predicate predicate, String message) Parser<String>
返回一个解析器,该解析器读取指定length输入,如果predicate匹配,则接受该输入,否则,给定message失败.
range(Object start, Object stop, [String message]) Parser<String>
返回一个解析器,该解析器接受介于startstop之间的任何字符.
string(String element, [String message]) Parser<String>
返回一个接受string element的解析器. [...]
stringIgnoreCase(String element, [String message]) Parser<String>
返回一个接受忽略大小写的字符串element的解析器. [...]
undefined<T>([String message = 'undefined parser']) SettableParser<T>
返回一个未定义的解析器,但可以在以后的某个时间设置. [...]
uppercase([String message = 'uppercase letter expected']) Parser<String>
返回一个接受任何大写字符的解析器.
whitespace([String message = 'whitespace expected']) Parser<String>
返回一个接受任何空白字符的解析器.
word([String message = 'letter or digit expected']) Parser<String>
返回一个接受任何单词字符的解析器.

Typedefs

ActionCallback<T, R>(T value) → R
键入的动作回调.
Predicate(String input) bool
一个通用谓词函数,它为给定的input参数返回truefalse .

Exceptions / Errors

ParserException
在解析错误的情况下引发异常.