Enum pest_meta::ast::Expr[][src]

pub enum Expr {
    Str(String),
    Insens(String),
    Range(StringString),
    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>, u32u32),
    Skip(Vec<String>),
    Push(Box<Expr>),
}

Variants

Matches an exact string, e.g. "a"

Matches an exact string, case insensitively (ASCII only), e.g. ^"a"

Matches one character in the range, e.g. 'a'..'z'

Matches the rule with the given name, e.g. a

Positive lookahead; matches expression without making progress, e.g. &e

Negative lookahead; matches if expression doesn't match, without making progress, e.g. !e

Matches a sequence of two expressions, e.g. e1 ~ e2

Matches either of two expressions, e.g. e1 | e2

Optionally matches an expression, e.g. e?

Matches an expression zero or more times, e.g. e*

Matches an expression one or more times, e.g. e+

Matches an expression an exact number of times, e.g. e{n}

Matches an expression at least a number of times, e.g. e{n,}

Matches an expression at most a number of times, e.g. e{,n}

Matches an expression a number of times within a range, e.g. e{m, n}

Continues to match expressions until one of the strings in the Vec is found

Matches an expression and pushes it to the stack, e.g. push(e)

Methods

impl Expr
[src]

Important traits for ExprTopDownIterator

Trait Implementations

impl Clone for Expr
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Debug for Expr
[src]

Formats the value using the given formatter. Read more

impl Eq for Expr
[src]

impl PartialEq for Expr
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

impl Send for Expr

impl Sync for Expr