Enum chalk_solve::rust_ir::WellKnownTrait [−][src]
pub enum WellKnownTrait {
Sized,
Copy,
Clone,
Drop,
FnOnce,
FnMut,
Fn,
Unsize,
Unpin,
CoerceUnsized,
DiscriminantKind,
Generator,
}
Expand description
A list of the traits that are “well known” to chalk, which means that the chalk-solve crate has special, hard-coded impls for them.
Variants
The trait FnOnce<Args>
- the generic argument Args
is always a tuple
corresponding to the arguments of a function implementing this trait.
E.g. fn(u8, bool): FnOnce<(u8, bool)>
Trait Implementations
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn visit_with<'i, B>(
&self,
_visitor: &mut dyn Visitor<'i, I, BreakTy = B>,
_outer_binder: DebruijnIndex
) -> ControlFlow<B> where
I: 'i,
fn visit_with<'i, B>(
&self,
_visitor: &mut dyn Visitor<'i, I, BreakTy = B>,
_outer_binder: DebruijnIndex
) -> ControlFlow<B> where
I: 'i,
Apply the given visitor visitor
to self
; binders
is the
number of binders that are in scope when beginning the
visitor. Typically binders
starts as 0, but is adjusted when
we encounter Binders<T>
in the IR or other similar
constructs. Read more
Auto Trait Implementations
impl RefUnwindSafe for WellKnownTrait
impl Send for WellKnownTrait
impl Sync for WellKnownTrait
impl Unpin for WellKnownTrait
impl UnwindSafe for WellKnownTrait
Blanket Implementations
Mutably borrows from an owned value. Read more
fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
Cast a value to type U
using CastTo
.
Compare self to key
and return true
if they are equal.
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
Check whether there are free (non-bound) variables.