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) -> ExprTopDownIteratorpub 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 Exprfn clone(&self) -> Expr[src]
fn clone(&self) -> ExprReturns 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 Exprfn fmt(&self, f: &mut Formatter) -> Result[src]
fn fmt(&self, f: &mut Formatter) -> ResultFormats the value using the given formatter. Read more
impl Eq for Expr[src]
impl Eq for Exprimpl PartialEq for Expr[src]
impl PartialEq for Expr