pub struct PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: Semiring,
F1: Fst<W>,
F2: Fst<W>,
B1: Borrow<F1> + Debug,
B2: Borrow<F2> + Debug,
M1: LookaheadMatcher<W, F1, B1>,
M2: LookaheadMatcher<W, F2, B2>,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2>,
SMT: MatchTypeTrait,{ /* private fields */ }
Trait Implementations§
source§impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Clone for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: Semiring + Clone,
F1: Fst<W> + Clone,
F2: Fst<W> + Clone,
B1: Borrow<F1> + Debug + Clone,
B2: Borrow<F2> + Debug + Clone,
M1: LookaheadMatcher<W, F1, B1> + Clone,
M2: LookaheadMatcher<W, F2, B2> + Clone,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2> + Clone,
SMT: MatchTypeTrait + Clone,
CF::FS: Clone,
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Clone for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: Semiring + Clone,
F1: Fst<W> + Clone,
F2: Fst<W> + Clone,
B1: Borrow<F1> + Debug + Clone,
B2: Borrow<F2> + Debug + Clone,
M1: LookaheadMatcher<W, F1, B1> + Clone,
M2: LookaheadMatcher<W, F2, B2> + Clone,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2> + Clone,
SMT: MatchTypeTrait + Clone,
CF::FS: Clone,
source§fn clone(&self) -> PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>
fn clone(&self) -> PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> ComposeFilter<W, F1, F2, B1, B2, M1, M2> for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: SerializableSemiring + WeaklyDivisibleSemiring + WeightQuantize,
F1: Fst<W>,
F2: Fst<W>,
B1: Borrow<F1> + Debug,
B2: Borrow<F2> + Debug,
M1: LookaheadMatcher<W, F1, B1>,
M2: LookaheadMatcher<W, F2, B2>,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2>,
SMT: MatchTypeTrait,
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> ComposeFilter<W, F1, F2, B1, B2, M1, M2> for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: SerializableSemiring + WeaklyDivisibleSemiring + WeightQuantize,
F1: Fst<W>,
F2: Fst<W>,
B1: Borrow<F1> + Debug,
B2: Borrow<F2> + Debug,
M1: LookaheadMatcher<W, F1, B1>,
M2: LookaheadMatcher<W, F2, B2>,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2>,
SMT: MatchTypeTrait,
type FS = PairFilterState<<CF as ComposeFilter<W, F1, F2, B1, B2, M1, M2>>::FS, WeightFilterState<W>>
fn start(&self) -> Self::FS
fn set_state( &mut self, s1: StateId, s2: StateId, filter_state: &Self::FS ) -> Result<()>
fn filter_tr(&mut self, arc1: &mut Tr<W>, arc2: &mut Tr<W>) -> Result<Self::FS>
fn filter_final(&self, w1: &mut W, w2: &mut W) -> Result<()>
fn matcher1(&self) -> &M1
fn matcher2(&self) -> &M2
fn properties(&self, inprops: FstProperties) -> FstProperties
source§impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Debug for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: Semiring + Debug,
F1: Fst<W> + Debug,
F2: Fst<W> + Debug,
B1: Borrow<F1> + Debug + Debug,
B2: Borrow<F2> + Debug + Debug,
M1: LookaheadMatcher<W, F1, B1> + Debug,
M2: LookaheadMatcher<W, F2, B2> + Debug,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2> + Debug,
SMT: MatchTypeTrait + Debug,
CF::FS: Debug,
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Debug for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: Semiring + Debug,
F1: Fst<W> + Debug,
F2: Fst<W> + Debug,
B1: Borrow<F1> + Debug + Debug,
B2: Borrow<F2> + Debug + Debug,
M1: LookaheadMatcher<W, F1, B1> + Debug,
M2: LookaheadMatcher<W, F2, B2> + Debug,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2> + Debug,
SMT: MatchTypeTrait + Debug,
CF::FS: Debug,
source§impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2> for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: SerializableSemiring + WeaklyDivisibleSemiring + WeightQuantize,
F1: Fst<W>,
F2: Fst<W>,
B1: Borrow<F1> + Debug,
B2: Borrow<F2> + Debug,
M1: LookaheadMatcher<W, F1, B1>,
M2: LookaheadMatcher<W, F2, B2>,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2>,
SMT: MatchTypeTrait,
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2> for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: SerializableSemiring + WeaklyDivisibleSemiring + WeightQuantize,
F1: Fst<W>,
F2: Fst<W>,
B1: Borrow<F1> + Debug,
B2: Borrow<F2> + Debug,
M1: LookaheadMatcher<W, F1, B1>,
M2: LookaheadMatcher<W, F2, B2>,
CF: LookAheadComposeFilterTrait<W, F1, F2, B1, B2, M1, M2>,
SMT: MatchTypeTrait,
fn lookahead_flags(&self) -> MatcherFlags
fn lookahead_tr(&self) -> bool
fn lookahead_type(&self) -> MatchType
fn lookahead_output(&self) -> bool
fn selector(&self) -> &Selector
fn lookahead_matcher_data(&self) -> Option<&LookAheadMatcherData<W>>
Auto Trait Implementations§
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Freeze for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> RefUnwindSafe for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
CF: RefUnwindSafe,
SMT: RefUnwindSafe,
<CF as ComposeFilter<W, F1, F2, B1, B2, M1, M2>>::FS: RefUnwindSafe,
W: RefUnwindSafe,
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Send for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Sync for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> Unpin for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>
impl<W, F1, F2, B1, B2, M1, M2, CF, SMT> UnwindSafe for PushWeightsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
CF: UnwindSafe,
SMT: UnwindSafe,
<CF as ComposeFilter<W, F1, F2, B1, B2, M1, M2>>::FS: UnwindSafe,
W: UnwindSafe,
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