[−][src]Enum ra_ap_hir_ty::ImplTraitLoweringMode
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]
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]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,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Cast for T
[src]
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: Clone + Any,
T: Clone + Any,
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
fn equivalent(&self, key: &K) -> bool
[src]
impl<T> From<T> for T
[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.
fn to_owned(&self) -> T
[src]
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.
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>,