Enum rusty_lr::BuildError
source · pub enum BuildError<'a, Term, NonTerm> {
RuleNotFound(NonTerm),
ReduceReduceConflict {
lookahead: Term,
rule1: usize,
rule2: usize,
rules: &'a Vec<ProductionRule<Term, NonTerm>>,
},
ShiftReduceConflict {
reduce: usize,
shift: LookaheadRuleRefSet<Term>,
term: Term,
rules: &'a Vec<ProductionRule<Term, NonTerm>>,
},
NoAugmented,
MultipleReduceType(Term),
}Expand description
Error type for grammar.build()
Variants§
RuleNotFound(NonTerm)
ReduceReduceConflict
ShiftReduceConflict
shift/reduce conflict
NoAugmented
MultipleReduceType(Term)
different reduce type assigned to same terminal symbol
Trait Implementations§
source§impl<'a, Term, NonTerm> Debug for BuildError<'a, Term, NonTerm>
impl<'a, Term, NonTerm> Debug for BuildError<'a, Term, NonTerm>
Auto Trait Implementations§
impl<'a, Term, NonTerm> Freeze for BuildError<'a, Term, NonTerm>
impl<'a, Term, NonTerm> RefUnwindSafe for BuildError<'a, Term, NonTerm>where
NonTerm: RefUnwindSafe,
Term: RefUnwindSafe,
impl<'a, Term, NonTerm> Send for BuildError<'a, Term, NonTerm>
impl<'a, Term, NonTerm> Sync for BuildError<'a, Term, NonTerm>
impl<'a, Term, NonTerm> Unpin for BuildError<'a, Term, NonTerm>
impl<'a, Term, NonTerm> UnwindSafe for BuildError<'a, Term, NonTerm>
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