pub struct Automaton<F: Symbol, Q: State, I> { /* private fields */ }
Expand description
Alternating tree automaton.
Implementations§
Source§impl<F: Symbol, Q: State, I> Automaton<F, Q, I>
impl<F: Symbol, Q: State, I> Automaton<F, Q, I>
pub fn states(&self) -> Keys<'_, Q, HashMap<F, Clause<Q, I>>> ⓘ
pub fn clauses_for_state(&self, q: &Q) -> Iter<'_, F, Clause<Q, I>>
Sourcepub fn add(&mut self, state: &Q, symbol: &F, conjuction: Conjuction<Q, I>)
pub fn add(&mut self, state: &Q, symbol: &F, conjuction: Conjuction<Q, I>)
Add the given conjuction to the clause (state, symbol).
pub fn is_initial(&self, q: &Q) -> bool
Sourcepub fn set_initial(&mut self, q: Q) -> bool
pub fn set_initial(&mut self, q: Q) -> bool
Set the given state an initial state.
Return true
if the state was not already initial.
Return false
if it was already an initial state.
pub fn map_states<R: State, M>(&self, g: M) -> Automaton<F, R, I>
Source§impl<F: Symbol, Q: State> Automaton<F, Q, u32>
impl<F: Symbol, Q: State> Automaton<F, Q, u32>
Sourcepub fn add_transition(
&mut self,
bottom_up::Configuration: &Configuration<F, Q>,
state: &Q,
)
pub fn add_transition( &mut self, bottom_up::Configuration: &Configuration<F, Q>, state: &Q, )
Add a bottom-up transition. It is added as a clause to the corresponding (state, symbol) pair.
Trait Implementations§
Auto Trait Implementations§
impl<F, Q, I> Freeze for Automaton<F, Q, I>
impl<F, Q, I> RefUnwindSafe for Automaton<F, Q, I>
impl<F, Q, I> Send for Automaton<F, Q, I>
impl<F, Q, I> Sync for Automaton<F, Q, I>
impl<F, Q, I> Unpin for Automaton<F, Q, I>
impl<F, Q, I> UnwindSafe for Automaton<F, Q, I>
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