Module peruse::parsers
[−]
[src]
Structs
BoxedParser |
this parser solely exists to avoid insanely long compile times in rustc. When you have a fairly large parser, it's best to box it. Yes we're introducing extra dynamic dispatch, but only on a small amount. In some cases this is the only way to get rustc to not take (literally) a million years! |
ChainedParser |
A Chained parser contains two parsers that will be used in sequence to create a tuple of parsed values |
MapParser |
A Parser that uses a closure to map the result of another parser |
OneOfParser |
A Parser that takes a vector of parsers (of the exact same type) and returns the value from the first parser to return a non-error. This parser solely exists because doing a or b or c or d... ends up crushing rustc |
OptionParser | |
OrParser | |
RecursiveParser | |
RepSepParser |
A Parser that will repeatedly parse |
RepeatParser |
A Parser that repeats the given parser until it encounters an error. A vector of the accumulated parsed values is returned |
Traits
Parser |
A Parser is a parser that parses some elements out of the beginning of a slice and returns a parsed value along with the rest of the unparsed slice |
ParserCombinator |
Combinator methods for slice parsers. In most cases, these methods copy the caller into a higher-order parser |
Functions
boxed | |
one_of | |
opt |
Create a parser that will return Some if the given parser is successful, None otherwise |
recursive |
Create a lazily evaluated parser from a function. This can be used to generate recursive parsers |
repsep |
Type Definitions
ParseResult |