[−][src]Trait rustfst::fst_traits::StateIterator
Trait to iterate over the states of a wFST.
Associated Types
type Iter: Iterator<Item = StateId>
Iterator used to iterate over the state_id
of the states of an FST.
Required methods
fn states_iter(&'a self) -> Self::Iter
Creates an iterator over the state_id
of the states of an FST.
Example
let mut fst = VectorFst::<BooleanWeight>::new(); let s1 = fst.add_state(); let s2 = fst.add_state(); for state_id in fst.states_iter() { println!("State ID : {:?}", state_id); } let states : Vec<_> = fst.states_iter().collect(); assert_eq!(states, vec![s1, s2]);
Implementations on Foreign Types
impl<'a, F: StateIterator<'a>> StateIterator<'a> for Arc<F>
[src]
type Iter = F::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
Implementors
impl<'a, F: StateIterator<'a>, T> StateIterator<'a> for FstAddOn<F, T>
[src]
type Iter = <F as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W> StateIterator<'a> for ConstFst<W>
[src]
impl<'a, W, CFB, Cache> StateIterator<'a> for ComposeFst<W, CFB, Cache> where
W: Semiring,
CFB: ComposeFilterBuilder<W> + 'a,
Cache: FstCache<W> + 'a,
[src]
W: Semiring,
CFB: ComposeFilterBuilder<W> + 'a,
Cache: FstCache<W> + 'a,
type Iter = <LazyFst<W, ComposeFstOp<W, CFB>, Cache> as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, F> StateIterator<'a> for ClosureFst<W, F> where
W: Semiring,
F: Fst<W> + 'a,
[src]
W: Semiring,
F: Fst<W> + 'a,
type Iter = <ReplaceFst<W, F, F> as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, F> StateIterator<'a> for ConcatFst<W, F> where
W: Semiring,
F: Fst<W> + 'a,
[src]
W: Semiring,
F: Fst<W> + 'a,
type Iter = <ReplaceFst<W, F, F> as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, F> StateIterator<'a> for UnionFst<W, F> where
W: Semiring,
F: Fst<W> + 'a,
[src]
W: Semiring,
F: Fst<W> + 'a,
type Iter = <ReplaceFst<W, F, F> as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, F, B> StateIterator<'a> for ReplaceFst<W, F, B> where
W: Semiring,
F: Fst<W> + 'a,
B: Borrow<F> + 'a,
[src]
W: Semiring,
F: Fst<W> + 'a,
B: Borrow<F> + 'a,
type Iter = <LazyFst<W, ReplaceFstOp<W, F, B>, SimpleHashMapCache<W>> as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, F, B> StateIterator<'a> for RmEpsilonFst<W, F, B> where
W: Semiring,
F: MutableFst<W> + 'a,
B: Borrow<F> + 'a,
[src]
W: Semiring,
F: MutableFst<W> + 'a,
B: Borrow<F> + 'a,
type Iter = <LazyFst2<W, RmEpsilonOp<W, F, B>, SimpleHashMapCache<W>> as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, F, B, FI> StateIterator<'a> for FactorWeightFst<W, F, B, FI> where
W: WeightQuantize,
F: Fst<W> + 'a,
B: Borrow<F> + 'a,
FI: FactorIterator<W> + 'a,
[src]
W: WeightQuantize,
F: Fst<W> + 'a,
B: Borrow<F> + 'a,
FI: FactorIterator<W> + 'a,
type Iter = <LazyFst<W, FactorWeightOp<W, F, B, FI>, SimpleHashMapCache<W>> as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, F: StateIterator<'a>, M, T> StateIterator<'a> for MatcherFst<W, F, M, T>
[src]
type Iter = <F as StateIterator<'a>>::Iter
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, Op, Cache> StateIterator<'a> for LazyFst2<W, Op, Cache> where
W: Semiring,
Op: FstOp2<W> + 'a,
Cache: FstCache<W> + 'a,
[src]
W: Semiring,
Op: FstOp2<W> + 'a,
Cache: FstCache<W> + 'a,
type Iter = StatesIteratorLazyFst<'a, Self>
fn states_iter(&'a self) -> Self::Iter
[src]
impl<'a, W, Op, Cache> StateIterator<'a> for LazyFst<W, Op, Cache> where
W: Semiring,
Op: FstOp<W> + 'a,
Cache: FstCache<W> + 'a,
[src]
W: Semiring,
Op: FstOp<W> + 'a,
Cache: FstCache<W> + 'a,