Enum pest_meta::ast::RuleType

source ·
pub enum RuleType {
    Normal,
    Silent,
    Atomic,
    CompoundAtomic,
    NonAtomic,
}
Expand description

All possible rule types

Variants

Normal

The normal rule type

Silent

Silent rules are just like normal rules — when run, they function the same way — except they do not produce pairs or tokens. If a rule is silent, it will never appear in a parse result. (their syntax is _{ ... })

Atomic

atomic rule prevent implicit whitespace: inside an atomic rule, the tilde ~ means “immediately followed by”, and repetition operators (asterisk * and plus sign +) have no implicit separation. In addition, all other rules called from an atomic rule are also treated as atomic. In an atomic rule, interior matching rules are silent. (their syntax is @{ ... })

CompoundAtomic

Compound atomic rules are similar to atomic rules, but they produce inner tokens as normal. (their syntax is ${ ... })

NonAtomic

Non-atomic rules cancel the effect of atomic rules. (their syntax is !{ ... })

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.