Enum ra_ap_hir_ty::ImplTraitLoweringMode [−][src]
Variants
impl Trait
gets lowered into an opaque type that doesn’t unify with
anything except itself. This is used in places where values flow ‘out’,
i.e. for arguments of the function we’re currently checking, and return
types of functions we’re calling.
impl Trait
gets lowered into a type variable. Used for argument
position impl Trait when inside the respective function, since it allows
us to support that without Chalk.
impl Trait
gets lowered into a variable that can unify with some
type. This is used in places where values flow ‘in’, i.e. for arguments
of functions we’re calling, and the return type of the function we’re
currently checking.
impl Trait
is disallowed and will be an error.
Trait Implementations
impl Clone for ImplTraitLoweringMode
[src]
fn clone(&self) -> ImplTraitLoweringMode
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for ImplTraitLoweringMode
[src]
impl Debug for ImplTraitLoweringMode
[src]
impl Eq for ImplTraitLoweringMode
[src]
impl PartialEq<ImplTraitLoweringMode> for ImplTraitLoweringMode
[src]
fn eq(&self, other: &ImplTraitLoweringMode) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl StructuralEq for ImplTraitLoweringMode
[src]
impl StructuralPartialEq for ImplTraitLoweringMode
[src]
Auto Trait Implementations
impl RefUnwindSafe for ImplTraitLoweringMode
impl Send for ImplTraitLoweringMode
impl Sync for ImplTraitLoweringMode
impl Unpin for ImplTraitLoweringMode
impl UnwindSafe for ImplTraitLoweringMode
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Any for T where
T: Any,
T: Any,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Cast for T
[src]
pub fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
[src]
Self: CastTo<U>,
U: HasInterner,
impl<T> CloneAny for T where
T: Any + Clone,
T: Any + Clone,
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
pub fn equivalent(&self, key: &K) -> bool
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,