ProdRule

Type Alias ProdRule 

Source
pub type ProdRule = Vec<Alternative>;
Expand description

Stores a normalized production rule, where each alternative (e.g. B C) is stored in a Vec<GrNode> and all the alternatives are stored in a Vec.

§Example

A -> B C | D | ε

where the nonterminal indices A=0, B=1, C=2, D=3, is stored as:

[[gnode!(nt 1), gnode!(nt 2)],[gnode!(nt 3)],[gnode!(e)]]

(where the representation of vectors & type names has been simplified to square brackets).

Aliased Type§

pub struct ProdRule { /* private fields */ }