pub struct MultiEpsMatcher<W, F, B, M>{ /* private fields */ }Implementations§
Source§impl<W, F, B, M> MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> MultiEpsMatcher<W, F, B, M>
pub fn new_with_opts<IM: Into<Option<Arc<M>>>>( fst: B, match_type: MatchType, flags: MultiEpsMatcherFlags, matcher: IM, ) -> Result<Self>
pub fn matcher(&self) -> &Arc<M>
pub fn clear_multi_eps_labels(&mut self)
pub fn add_multi_eps_label(&mut self, label: Label) -> Result<()>
pub fn remove_multi_eps_label(&mut self, label: Label) -> Result<()>
Trait Implementations§
Source§impl<W, F, B, M> Clone for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> Clone for MultiEpsMatcher<W, F, B, M>
Source§fn clone(&self) -> MultiEpsMatcher<W, F, B, M>
fn clone(&self) -> MultiEpsMatcher<W, F, B, M>
Returns a duplicate 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, MultiEpsMatcher<W, F1, B1, M1>, MultiEpsMatcher<W, F2, B2, M2>> for PushLabelsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: Semiring,
F1: Fst<W>,
F2: Fst<W>,
B1: Borrow<F1> + Debug + Clone,
B2: Borrow<F2> + Debug + Clone,
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, MultiEpsMatcher<W, F1, B1, M1>, MultiEpsMatcher<W, F2, B2, M2>> for PushLabelsComposeFilter<W, F1, F2, B1, B2, M1, M2, CF, SMT>where
W: Semiring,
F1: Fst<W>,
F2: Fst<W>,
B1: Borrow<F1> + Debug + Clone,
B2: Borrow<F2> + Debug + Clone,
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, IntegerFilterState>
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) -> &MultiEpsMatcher<W, F1, B1, M1>
fn matcher2(&self) -> &MultiEpsMatcher<W, F2, B2, M2>
fn properties(&self, inprops: FstProperties) -> FstProperties
Source§impl<W, F, B, M> Debug for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> Debug for MultiEpsMatcher<W, F, B, M>
Source§impl<W, F, B, M> Matcher<W, F, B> for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> Matcher<W, F, B> for MultiEpsMatcher<W, F, B, M>
type Iter = IteratorMultiEpsMatcher<W, F, B, M>
fn new(fst: B, match_type: MatchType) -> Result<Self>
fn iter(&self, state: StateId, label: Label) -> Result<Self::Iter>
fn final_weight(&self, state: StateId) -> Result<Option<W>>
fn match_type(&self, test: bool) -> Result<MatchType>
fn flags(&self) -> MatcherFlags
Source§fn priority(&self, state: StateId) -> Result<usize>
fn priority(&self, state: StateId) -> Result<usize>
Indicates preference for being the side used for matching in
composition. If the value is kRequirePriority, then it is
mandatory that it be used. Calling this method without passing the
current state of the matcher invalidates the state of the matcher.
fn fst(&self) -> &B
Auto Trait Implementations§
impl<W, F, B, M> Freeze for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> RefUnwindSafe for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> Send for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> Sync for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> Unpin for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> UnsafeUnpin for MultiEpsMatcher<W, F, B, M>
impl<W, F, B, M> UnwindSafe for MultiEpsMatcher<W, F, B, M>
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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