pub trait RuleContainerRef<'a>: Deref + Sizedwhere
    Self::Target: RuleContainer + Default,{
    type RuleRef: GrammarRule + Copy + 'a;
    type Rules: Iterator<Item = Self::RuleRef>;

    // Required method
    fn rules(self) -> Self::Rules;

    // Provided method
    fn reverse(self) -> Self::Target
       where Self::Target: Default { ... }
}
Expand description

This trait is currently needed to make the associated Rules iterator generic over a lifetime parameter.

Required Associated Types§

source

type RuleRef: GrammarRule + Copy + 'a

Immutable reference to a rule.

source

type Rules: Iterator<Item = Self::RuleRef>

Iterator over immutable references to the grammar’s rules.

Required Methods§

source

fn rules(self) -> Self::Rules

Returns an iterator over immutable references to the grammar’s rules.

Provided Methods§

source

fn reverse(self) -> Self::Targetwhere Self::Target: Default,

Reverses the grammar.

Object Safety§

This trait is not object safe.

Implementors§