[][src]Trait rustfst::fst_traits::Fst

pub trait Fst<W: Semiring>: CoreFst<W> + for<'b> StateIterator<'b> + Debug + for<'c> FstIterator<'c, W> {
    fn input_symbols(&self) -> Option<&Arc<SymbolTable>>;
fn output_symbols(&self) -> Option<&Arc<SymbolTable>>;
fn set_input_symbols(&mut self, symt: Arc<SymbolTable>);
fn set_output_symbols(&mut self, symt: Arc<SymbolTable>);
fn take_input_symbols(&mut self) -> Option<Arc<SymbolTable>>;
fn take_output_symbols(&mut self) -> Option<Arc<SymbolTable>>; fn set_symts_from_fst<W2: Semiring, OF: Fst<W2>>(&mut self, other_fst: &OF) { ... }
fn final_states_iter(&self) -> FinalStatesIterator<'_, W, Self>
    where
        Self: Sized
, { ... } }

Trait defining the minimum interface necessary for a wFST.

Required methods

fn input_symbols(&self) -> Option<&Arc<SymbolTable>>

Retrieves the input SymbolTable associated to the Fst. If no SymbolTable has been previously attached then None is returned.

fn output_symbols(&self) -> Option<&Arc<SymbolTable>>

Retrieves the output SymbolTable associated to the Fst. If no SymbolTable has been previously attached then None is returned.

fn set_input_symbols(&mut self, symt: Arc<SymbolTable>)

Attaches an output SymbolTable to the Fst. The SymbolTable is not duplicated with the use of Arc.

fn set_output_symbols(&mut self, symt: Arc<SymbolTable>)

Attaches an output SymbolTable to the Fst. The SymbolTable is not duplicated with the use of Arc.

fn take_input_symbols(&mut self) -> Option<Arc<SymbolTable>>

Removes the input symbol table from the Fst and retrieves it.

fn take_output_symbols(&mut self) -> Option<Arc<SymbolTable>>

Removes the output symbol table from the Fst and retrieves it.

Loading content...

Provided methods

fn set_symts_from_fst<W2: Semiring, OF: Fst<W2>>(&mut self, other_fst: &OF)

fn final_states_iter(&self) -> FinalStatesIterator<'_, W, Self> where
    Self: Sized

Loading content...

Implementations on Foreign Types

impl<W: Semiring, F: Fst<W>> Fst<W> for Arc<F>[src]

Loading content...

Implementors

impl<W, CFB, Cache> Fst<W> for ComposeFst<W, CFB, Cache> where
    W: Semiring,
    CFB: ComposeFilterBuilder<W> + 'static,
    Cache: FstCache<W> + 'static, 
[src]

impl<W, F> Fst<W> for ClosureFst<W, F> where
    W: Semiring,
    F: Fst<W> + 'static, 
[src]

impl<W, F> Fst<W> for ConcatFst<W, F> where
    W: Semiring,
    F: Fst<W> + 'static, 
[src]

impl<W, F> Fst<W> for UnionFst<W, F> where
    W: Semiring,
    F: Fst<W> + 'static, 
[src]

impl<W, F, B> Fst<W> for ReplaceFst<W, F, B> where
    W: Semiring,
    F: Fst<W> + 'static,
    B: Borrow<F> + 'static, 
[src]

impl<W, F, B> Fst<W> for RmEpsilonFst<W, F, B> where
    W: Semiring,
    F: MutableFst<W> + 'static,
    B: Borrow<F> + 'static, 
[src]

impl<W, F, B, FI> Fst<W> for FactorWeightFst<W, F, B, FI> where
    W: WeightQuantize,
    F: Fst<W> + 'static,
    B: Borrow<F> + 'static,
    FI: FactorIterator<W> + 'static, 
[src]

impl<W, F, M, T> Fst<W> for MatcherFst<W, F, M, T> where
    W: Semiring,
    F: Fst<W>,
    M: Debug,
    T: Debug
[src]

impl<W, F, T: Debug> Fst<W> for FstAddOn<F, T> where
    W: Semiring,
    F: Fst<W>, 
[src]

impl<W, Op, Cache> Fst<W> for LazyFst2<W, Op, Cache> where
    W: Semiring,
    Op: FstOp2<W> + 'static,
    Cache: FstCache<W> + 'static, 
[src]

impl<W, Op, Cache> Fst<W> for LazyFst<W, Op, Cache> where
    W: Semiring,
    Op: FstOp<W> + 'static,
    Cache: FstCache<W> + 'static, 
[src]

impl<W: Semiring> Fst<W> for ConstFst<W>[src]

impl<W: Semiring> Fst<W> for VectorFst<W>[src]

Loading content...