[−][src]Struct lrtable::StateGraph
Methods
impl<StorageT: 'static + Hash + PrimInt + Unsigned> StateGraph<StorageT> where
usize: AsPrimitive<StorageT>,
[src]
impl<StorageT: 'static + Hash + PrimInt + Unsigned> StateGraph<StorageT> where
usize: AsPrimitive<StorageT>,
pub fn iter_stidxs(&self) -> Box<dyn Iterator<Item = StIdx>> | [src] |
Return an iterator which produces (in order from 0..self.rules_len()
) all this
grammar's valid RIdx
s.
pub fn closed_state(&self, stidx: StIdx) -> &Itemset<StorageT> | [src] |
Return the itemset for closed state stidx
. Panics if stidx
doesn't exist.
pub fn iter_closed_states<'a>( | [src] |
Return an iterator over all closed states in this StateGraph
.
pub fn core_state(&self, stidx: StIdx) -> &Itemset<StorageT> | [src] |
Return the itemset for core state stidx
or None
if it doesn't exist.
pub fn iter_core_states<'a>( | [src] |
Return an iterator over all core states in this StateGraph
.
pub fn all_states_len(&self) -> StIdx | [src] |
How many states does this StateGraph
contain? NB: By definition the StateGraph
contains
the same number of core and closed states.
pub fn edge(&self, stidx: StIdx, sym: Symbol<StorageT>) -> Option<StIdx> | [src] |
Return the state pointed to by sym
from stidx
or None
otherwise.
pub fn edges(&self, stidx: StIdx) -> &HashMap<Symbol<StorageT>, StIdx> | [src] |
Return the edges for state stidx
. Panics if stidx
doesn't exist.
pub fn all_edges_len(&self) -> usize | [src] |
How many edges does this StateGraph
contain?
pub fn pp(&self, grm: &YaccGrammar<StorageT>, core_states: bool) -> String | [src] |
Pretty print this stategraph as a String
. If core_states
is set to true, only the core
states are pretty printed; if set to false, all states (including non-core states) are
pretty printed.
pub fn pp_core_states(&self, grm: &YaccGrammar<StorageT>) -> String | [src] |
Return a pretty printed version of the core states, and all edges.
pub fn pp_closed_states(&self, grm: &YaccGrammar<StorageT>) -> String | [src] |
Return a pretty printed version of the closed states, and all edges.
Trait Implementations
Auto Trait Implementations
impl<StorageT> Send for StateGraph<StorageT> where
StorageT: Send,
impl<StorageT> Send for StateGraph<StorageT> where
StorageT: Send,
impl<StorageT> Sync for StateGraph<StorageT> where
StorageT: Sync,
impl<StorageT> Sync for StateGraph<StorageT> where
StorageT: Sync,
Blanket Implementations
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> | [src] |
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T | [src] |
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error> | [src] |
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId | [src] |
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,