Struct rustfst::algorithms::compose::ComposeFstOp   
source · pub struct ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>where
    W: Semiring,
    F1: Fst<W>,
    F2: Fst<W>,
    B1: Borrow<F1> + Debug + Clone,
    B2: Borrow<F2> + Debug + Clone,
    M1: Matcher<W, F1, B1>,
    M2: Matcher<W, F2, B2>,
    CFB: ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>,{ /* private fields */ }Implementations§
source§impl<W, F1, F2, B1, B2, M1, M2, CFB> ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
 
impl<W, F1, F2, B1, B2, M1, M2, CFB> ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
pub fn new( fst1: B1, fst2: B2, opts: ComposeFstOpOptions<M1, M2, CFB, ComposeFstOpState<ComposeStateTuple<<CFB::CF as ComposeFilter<W, F1, F2, B1, B2, CFB::IM1, CFB::IM2>>::FS>>> ) -> Result<Self>
Trait Implementations§
source§impl<W, F1, F2, B1, B2, M1, M2, CFB> AccessibleOpState for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
 
impl<W, F1, F2, B1, B2, M1, M2, CFB> AccessibleOpState for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
type FstOpState = ComposeFstOpState<ComposeStateTuple<<<CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::CF as ComposeFilter<W, F1, F2, B1, B2, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM1, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM2>>::FS>>
fn get_op_state(&self) -> &Self::FstOpState
source§impl<W, F1, F2, B1, B2, M1, M2, CFB> Clone for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
 
impl<W, F1, F2, B1, B2, M1, M2, CFB> Clone for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
source§impl<W, F1, F2, B1, B2, M1, M2, CFB> Debug for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>where
    W: Semiring + Debug,
    F1: Fst<W> + Debug,
    F2: Fst<W> + Debug,
    B1: Borrow<F1> + Debug + Clone + Debug,
    B2: Borrow<F2> + Debug + Clone + Debug,
    M1: Matcher<W, F1, B1> + Debug,
    M2: Matcher<W, F2, B2> + Debug,
    CFB: ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2> + Debug,
    CFB::CF: Debug,
    CFB::IM1: Debug,
    CFB::IM2: Debug,
 
impl<W, F1, F2, B1, B2, M1, M2, CFB> Debug for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>where
    W: Semiring + Debug,
    F1: Fst<W> + Debug,
    F2: Fst<W> + Debug,
    B1: Borrow<F1> + Debug + Clone + Debug,
    B2: Borrow<F2> + Debug + Clone + Debug,
    M1: Matcher<W, F1, B1> + Debug,
    M2: Matcher<W, F2, B2> + Debug,
    CFB: ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2> + Debug,
    CFB::CF: Debug,
    CFB::IM1: Debug,
    CFB::IM2: Debug,
source§impl<W, F1, F2, B1, B2, M1, M2, CFB> FstOp<W> for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
 
impl<W, F1, F2, B1, B2, M1, M2, CFB> FstOp<W> for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
fn compute_start(&self) -> Result<Option<StateId>>
fn compute_trs(&self, state: StateId) -> Result<TrsVec<W>>
fn compute_final_weight(&self, state: StateId) -> Result<Option<W>>
fn properties(&self) -> FstProperties
Auto Trait Implementations§
impl<W, F1, F2, B1, B2, M1, M2, CFB> !Freeze for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
impl<W, F1, F2, B1, B2, M1, M2, CFB> RefUnwindSafe for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
impl<W, F1, F2, B1, B2, M1, M2, CFB> Send for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>where
    CFB: Send,
    B1: Send,
    B2: Send,
    <<CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::CF as ComposeFilter<W, F1, F2, B1, B2, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM1, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM2>>::FS: Send,
impl<W, F1, F2, B1, B2, M1, M2, CFB> Sync for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>where
    CFB: Sync,
    B1: Sync,
    B2: Sync,
    <<CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::CF as ComposeFilter<W, F1, F2, B1, B2, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM1, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM2>>::FS: Send,
impl<W, F1, F2, B1, B2, M1, M2, CFB> Unpin for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>where
    CFB: Unpin,
    B1: Unpin,
    B2: Unpin,
    <<CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::CF as ComposeFilter<W, F1, F2, B1, B2, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM1, <CFB as ComposeFilterBuilder<W, F1, F2, B1, B2, M1, M2>>::IM2>>::FS: Unpin,
impl<W, F1, F2, B1, B2, M1, M2, CFB> UnwindSafe for ComposeFstOp<W, F1, F2, B1, B2, M1, M2, CFB>
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
source§impl<T> IntoEither for T
 
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
 
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
 
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more