Struct cfg::sequence::rewrite::SequencesToProductions [] [src]

pub struct SequencesToProductions<H, D> where H: RewriteSequence, D: RuleContainer {
    // some fields omitted
}

Rewrites sequence rules into production rules.

Methods

impl<H, D> SequencesToProductions<H, D> where D: RuleContainer<History=H::Rewritten>, H: Clone + RewriteSequence, H::Rewritten: Clone

fn new(destination: D) -> Self

Initializes a rewrite.

fn rewrite_sequences(sequence_rules: &[Sequence<H>], rules: D)

Rewrites sequence rules.

fn rewrite(&mut self, top: Sequence<H>)

Rewrites a sequence rule.

Trait Implementations

impl<H, D> SequenceDestination<H> for SequencesToProductions<H, D> where D: RuleContainer<History=H::Rewritten>, H: Clone + RewriteSequence, H::Rewritten: Clone

fn add_sequence(&mut self, seq: Sequence<H>)