pub struct State<Term, NonTerm> {
pub shift_goto_map_term: BTreeMap<Term, usize>,
pub shift_goto_map_nonterm: BTreeMap<NonTerm, usize>,
pub reduce_map: BTreeMap<Term, BTreeSet<usize>>,
pub ruleset: BTreeSet<ShiftedRuleRef>,
}Expand description
state for internal usage during grammar building stage
Fields§
§shift_goto_map_term: BTreeMap<Term, usize>§shift_goto_map_nonterm: BTreeMap<NonTerm, usize>§reduce_map: BTreeMap<Term, BTreeSet<usize>>§ruleset: BTreeSet<ShiftedRuleRef>Implementations§
Source§impl<Term, NonTerm> State<Term, NonTerm>
impl<Term, NonTerm> State<Term, NonTerm>
pub fn new() -> State<Term, NonTerm>
Sourcepub fn unshifted_ruleset(&self) -> impl Iterator<Item = ShiftedRuleRef>
pub fn unshifted_ruleset(&self) -> impl Iterator<Item = ShiftedRuleRef>
shift -= 1 for all rules in the ruleset
Trait Implementations§
Auto Trait Implementations§
impl<Term, NonTerm> Freeze for State<Term, NonTerm>
impl<Term, NonTerm> RefUnwindSafe for State<Term, NonTerm>where
Term: RefUnwindSafe,
NonTerm: RefUnwindSafe,
impl<Term, NonTerm> Send for State<Term, NonTerm>
impl<Term, NonTerm> Sync for State<Term, NonTerm>
impl<Term, NonTerm> Unpin for State<Term, NonTerm>
impl<Term, NonTerm> UnwindSafe for State<Term, NonTerm>where
Term: RefUnwindSafe,
NonTerm: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more