Trait moniker::BoundPattern [−][src]
pub trait BoundPattern<N> { fn pattern_eq(&self, other: &Self) -> bool; fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>]); fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>]); fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
); fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
); fn binders(&self) -> Vec<Binder<N>>
where
N: Clone, { ... } }
Patterns that bind variables in terms
Required Methods
fn pattern_eq(&self, other: &Self) -> bool
Alpha equivalence in a pattern context
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
Provided Methods
Implementations on Foreign Types
impl<N> BoundPattern<N> for ByteIndex
[src]
impl<N> BoundPattern<N> for ByteIndex
fn pattern_eq(&self, _: &ByteIndex) -> bool
[src]
fn pattern_eq(&self, _: &ByteIndex) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for ByteOffset
[src]
impl<N> BoundPattern<N> for ByteOffset
fn pattern_eq(&self, _: &ByteOffset) -> bool
[src]
fn pattern_eq(&self, _: &ByteOffset) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for ColumnIndex
[src]
impl<N> BoundPattern<N> for ColumnIndex
fn pattern_eq(&self, _: &ColumnIndex) -> bool
[src]
fn pattern_eq(&self, _: &ColumnIndex) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for ColumnNumber
[src]
impl<N> BoundPattern<N> for ColumnNumber
fn pattern_eq(&self, _: &ColumnNumber) -> bool
[src]
fn pattern_eq(&self, _: &ColumnNumber) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for ColumnOffset
[src]
impl<N> BoundPattern<N> for ColumnOffset
fn pattern_eq(&self, _: &ColumnOffset) -> bool
[src]
fn pattern_eq(&self, _: &ColumnOffset) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for LineIndex
[src]
impl<N> BoundPattern<N> for LineIndex
fn pattern_eq(&self, _: &LineIndex) -> bool
[src]
fn pattern_eq(&self, _: &LineIndex) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for LineNumber
[src]
impl<N> BoundPattern<N> for LineNumber
fn pattern_eq(&self, _: &LineNumber) -> bool
[src]
fn pattern_eq(&self, _: &LineNumber) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for LineOffset
[src]
impl<N> BoundPattern<N> for LineOffset
fn pattern_eq(&self, _: &LineOffset) -> bool
[src]
fn pattern_eq(&self, _: &LineOffset) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, T> BoundPattern<N> for Span<T>
[src]
impl<N, T> BoundPattern<N> for Span<T>
fn pattern_eq(&self, _: &Span<T>) -> bool
[src]
fn pattern_eq(&self, _: &Span<T>) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P> BoundPattern<N> for Vector<P> where
N: Clone,
P: Clone + BoundPattern<N>,
[src]
impl<N, P> BoundPattern<N> for Vector<P> where
N: Clone,
P: Clone + BoundPattern<N>,
fn pattern_eq(&self, other: &Vector<P>) -> bool
[src]
fn pattern_eq(&self, other: &Vector<P>) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for ()
[src]
impl<N> BoundPattern<N> for ()
fn pattern_eq(&self, other: &()) -> bool
[src]
fn pattern_eq(&self, other: &()) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for String
[src]
impl<N> BoundPattern<N> for String
fn pattern_eq(&self, other: &String) -> bool
[src]
fn pattern_eq(&self, other: &String) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for str
[src]
impl<N> BoundPattern<N> for str
fn pattern_eq(&self, other: &str) -> bool
[src]
fn pattern_eq(&self, other: &str) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for char
[src]
impl<N> BoundPattern<N> for char
fn pattern_eq(&self, other: &char) -> bool
[src]
fn pattern_eq(&self, other: &char) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for bool
[src]
impl<N> BoundPattern<N> for bool
fn pattern_eq(&self, other: &bool) -> bool
[src]
fn pattern_eq(&self, other: &bool) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for u8
[src]
impl<N> BoundPattern<N> for u8
fn pattern_eq(&self, other: &u8) -> bool
[src]
fn pattern_eq(&self, other: &u8) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for u16
[src]
impl<N> BoundPattern<N> for u16
fn pattern_eq(&self, other: &u16) -> bool
[src]
fn pattern_eq(&self, other: &u16) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for u32
[src]
impl<N> BoundPattern<N> for u32
fn pattern_eq(&self, other: &u32) -> bool
[src]
fn pattern_eq(&self, other: &u32) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for u64
[src]
impl<N> BoundPattern<N> for u64
fn pattern_eq(&self, other: &u64) -> bool
[src]
fn pattern_eq(&self, other: &u64) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for usize
[src]
impl<N> BoundPattern<N> for usize
fn pattern_eq(&self, other: &usize) -> bool
[src]
fn pattern_eq(&self, other: &usize) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for i8
[src]
impl<N> BoundPattern<N> for i8
fn pattern_eq(&self, other: &i8) -> bool
[src]
fn pattern_eq(&self, other: &i8) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for i16
[src]
impl<N> BoundPattern<N> for i16
fn pattern_eq(&self, other: &i16) -> bool
[src]
fn pattern_eq(&self, other: &i16) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for i32
[src]
impl<N> BoundPattern<N> for i32
fn pattern_eq(&self, other: &i32) -> bool
[src]
fn pattern_eq(&self, other: &i32) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for i64
[src]
impl<N> BoundPattern<N> for i64
fn pattern_eq(&self, other: &i64) -> bool
[src]
fn pattern_eq(&self, other: &i64) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for isize
[src]
impl<N> BoundPattern<N> for isize
fn pattern_eq(&self, other: &isize) -> bool
[src]
fn pattern_eq(&self, other: &isize) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for f32
[src]
impl<N> BoundPattern<N> for f32
fn pattern_eq(&self, other: &f32) -> bool
[src]
fn pattern_eq(&self, other: &f32) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N> BoundPattern<N> for f64
[src]
impl<N> BoundPattern<N> for f64
fn pattern_eq(&self, other: &f64) -> bool
[src]
fn pattern_eq(&self, other: &f64) -> bool
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn close_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
[src]
fn open_pattern(&mut self, _: ScopeState, _: &[Binder<N>])
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
_: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
_: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P> BoundPattern<N> for Option<P> where
P: BoundPattern<N>,
[src]
impl<N, P> BoundPattern<N> for Option<P> where
P: BoundPattern<N>,
fn pattern_eq(&self, other: &Option<P>) -> bool
[src]
fn pattern_eq(&self, other: &Option<P>) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P1, P2> BoundPattern<N> for (P1, P2) where
P1: BoundPattern<N>,
P2: BoundPattern<N>,
[src]
impl<N, P1, P2> BoundPattern<N> for (P1, P2) where
P1: BoundPattern<N>,
P2: BoundPattern<N>,
fn pattern_eq(&self, other: &(P1, P2)) -> bool
[src]
fn pattern_eq(&self, other: &(P1, P2)) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P> BoundPattern<N> for Box<P> where
P: BoundPattern<N>,
[src]
impl<N, P> BoundPattern<N> for Box<P> where
P: BoundPattern<N>,
fn pattern_eq(&self, other: &Box<P>) -> bool
[src]
fn pattern_eq(&self, other: &Box<P>) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P> BoundPattern<N> for Rc<P> where
P: BoundPattern<N> + Clone,
[src]
impl<N, P> BoundPattern<N> for Rc<P> where
P: BoundPattern<N> + Clone,
fn pattern_eq(&self, other: &Rc<P>) -> bool
[src]
fn pattern_eq(&self, other: &Rc<P>) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P> BoundPattern<N> for Arc<P> where
P: BoundPattern<N> + Clone,
[src]
impl<N, P> BoundPattern<N> for Arc<P> where
P: BoundPattern<N> + Clone,
fn pattern_eq(&self, other: &Arc<P>) -> bool
[src]
fn pattern_eq(&self, other: &Arc<P>) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P> BoundPattern<N> for [P] where
N: Clone,
P: BoundPattern<N>,
[src]
impl<N, P> BoundPattern<N> for [P] where
N: Clone,
P: BoundPattern<N>,
fn pattern_eq(&self, other: &[P]) -> bool
[src]
fn pattern_eq(&self, other: &[P]) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
impl<N, P> BoundPattern<N> for Vec<P> where
N: Clone,
P: BoundPattern<N>,
[src]
impl<N, P> BoundPattern<N> for Vec<P> where
N: Clone,
P: BoundPattern<N>,
fn pattern_eq(&self, other: &Vec<P>) -> bool
[src]
fn pattern_eq(&self, other: &Vec<P>) -> bool
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn close_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
[src]
fn open_pattern(&mut self, state: ScopeState, binders: &[Binder<N>])
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
[src]
fn visit_binders(
&self,
on_binder: &mut impl FnMut(&Binder<N>)
)
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
[src]
fn visit_mut_binders(
&mut self,
on_binder: &mut impl FnMut(&mut Binder<N>)
)
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
[src]
fn binders(&self) -> Vec<Binder<N>> where
N: Clone,
Implementors
impl<N> BoundPattern<N> for Binder<N> where
N: Clone + Eq + Hash,impl<N, T> BoundPattern<N> for Embed<T> where
T: BoundTerm<N>,impl<N, T> BoundPattern<N> for Ignore<T>
impl<N, P> BoundPattern<N> for Nest<P> where
N: Clone,
P: BoundPattern<N>,impl<N, P> BoundPattern<N> for Rec<P> where
P: BoundPattern<N>,