Enum pest_meta::ast::Expr [−][src]
pub enum Expr { Str(String), Insens(String), Range(String, String), Ident(String), PosPred(Box<Expr>), NegPred(Box<Expr>), Seq(Box<Expr>, Box<Expr>), Choice(Box<Expr>, Box<Expr>), Opt(Box<Expr>), Rep(Box<Expr>), RepOnce(Box<Expr>), RepExact(Box<Expr>, u32), RepMin(Box<Expr>, u32), RepMax(Box<Expr>, u32), RepMinMax(Box<Expr>, u32, u32), Skip(Vec<String>), Push(Box<Expr>), }
Variants
Str(String)
Matches an exact string, e.g. "a"
Insens(String)
Matches an exact string, case insensitively (ASCII only), e.g. ^"a"
Range(String, String)
Matches one character in the range, e.g. 'a'..'z'
Ident(String)
Matches the rule with the given name, e.g. a
PosPred(Box<Expr>)
Positive lookahead; matches expression without making progress, e.g. &e
NegPred(Box<Expr>)
Negative lookahead; matches if expression doesn't match, without making progress, e.g. !e
Seq(Box<Expr>, Box<Expr>)
Matches a sequence of two expressions, e.g. e1 ~ e2
Choice(Box<Expr>, Box<Expr>)
Matches either of two expressions, e.g. e1 | e2
Opt(Box<Expr>)
Optionally matches an expression, e.g. e?
Rep(Box<Expr>)
Matches an expression zero or more times, e.g. e*
RepOnce(Box<Expr>)
Matches an expression one or more times, e.g. e+
RepExact(Box<Expr>, u32)
Matches an expression an exact number of times, e.g. e{n}
RepMin(Box<Expr>, u32)
Matches an expression at least a number of times, e.g. e{n,}
RepMax(Box<Expr>, u32)
Matches an expression at most a number of times, e.g. e{,n}
RepMinMax(Box<Expr>, u32, u32)
Matches an expression a number of times within a range, e.g. e{m, n}
Skip(Vec<String>)
Continues to match expressions until one of the strings in the Vec
is found
Push(Box<Expr>)
Matches an expression and pushes it to the stack, e.g. push(e)
Methods
impl Expr
[src]
impl Expr
ⓘImportant traits for ExprTopDownIteratorpub fn iter_top_down(&self) -> ExprTopDownIterator
[src]
pub fn iter_top_down(&self) -> ExprTopDownIterator
pub fn map_top_down<F>(self, f: F) -> Expr where
F: FnMut(Expr) -> Expr,
[src]
pub fn map_top_down<F>(self, f: F) -> Expr where
F: FnMut(Expr) -> Expr,
pub fn map_bottom_up<F>(self, f: F) -> Expr where
F: FnMut(Expr) -> Expr,
[src]
pub fn map_bottom_up<F>(self, f: F) -> Expr where
F: FnMut(Expr) -> Expr,
Trait Implementations
impl Clone for Expr
[src]
impl Clone for Expr
fn clone(&self) -> Expr
[src]
fn clone(&self) -> Expr
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for Expr
[src]
impl Debug for Expr
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Eq for Expr
[src]
impl Eq for Expr
impl PartialEq for Expr
[src]
impl PartialEq for Expr