pub struct MatchCompileContext<'a, P>where
P: PatternProvider + 'a,{ /* private fields */ }Implementations§
Source§impl<'a, P> MatchCompileContext<'a, P>where
P: PatternProvider,
impl<'a, P> MatchCompileContext<'a, P>where
P: PatternProvider,
pub fn new(pattern: &'a mut P) -> Self
pub fn root_matrix(&self) -> &MatchMatrix<P>
Trait Implementations§
Source§impl<'a, P> Debug for MatchCompileContext<'a, P>
impl<'a, P> Debug for MatchCompileContext<'a, P>
Auto Trait Implementations§
impl<'a, P> !UnwindSafe for MatchCompileContext<'a, P>
impl<'a, P> Freeze for MatchCompileContext<'a, P>where
&'a mut P: Freeze,
PatternCfg<P>: Freeze,
HashMap<NodeIndex, HashMap<<P as PatternProvider>::CfgVariable, <P as PatternProvider>::PatternNodeKey>>: Freeze,
MatchMatrix<P>: Freeze,
impl<'a, P> RefUnwindSafe for MatchCompileContext<'a, P>where
&'a mut P: RefUnwindSafe,
PatternCfg<P>: RefUnwindSafe,
HashMap<NodeIndex, HashMap<<P as PatternProvider>::CfgVariable, <P as PatternProvider>::PatternNodeKey>>: RefUnwindSafe,
MatchMatrix<P>: RefUnwindSafe,
impl<'a, P> Send for MatchCompileContext<'a, P>where
&'a mut P: Send,
PatternCfg<P>: Send,
HashMap<NodeIndex, HashMap<<P as PatternProvider>::CfgVariable, <P as PatternProvider>::PatternNodeKey>>: Send,
MatchMatrix<P>: Send,
impl<'a, P> Sync for MatchCompileContext<'a, P>where
&'a mut P: Sync,
PatternCfg<P>: Sync,
HashMap<NodeIndex, HashMap<<P as PatternProvider>::CfgVariable, <P as PatternProvider>::PatternNodeKey>>: Sync,
MatchMatrix<P>: Sync,
impl<'a, P> Unpin for MatchCompileContext<'a, P>where
&'a mut P: Unpin,
PatternCfg<P>: Unpin,
HashMap<NodeIndex, HashMap<<P as PatternProvider>::CfgVariable, <P as PatternProvider>::PatternNodeKey>>: Unpin,
MatchMatrix<P>: Unpin,
impl<'a, P> UnsafeUnpin for MatchCompileContext<'a, P>where
&'a mut P: UnsafeUnpin,
PatternCfg<P>: UnsafeUnpin,
HashMap<NodeIndex, HashMap<<P as PatternProvider>::CfgVariable, <P as PatternProvider>::PatternNodeKey>>: UnsafeUnpin,
MatchMatrix<P>: UnsafeUnpin,
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