[−][src]Enum rustc_middle::ty::ExistentialPredicate
Variants
Trait(ExistentialTraitRef<'tcx>)E.g., Iterator.
Projection(ExistentialProjection<'tcx>)E.g., Iterator::Item = T.
AutoTrait(DefId)E.g., Send.
Implementations
impl<'tcx> ExistentialPredicate<'tcx>[src]
pub fn stable_cmp(&self, tcx: TyCtxt<'tcx>, other: &Self) -> Ordering[src]
Compares via an ordering that will not change if modules are reordered or other changes are made to the tree. In particular, this ordering is preserved across incremental compilations.
Trait Implementations
impl<'tcx> Clone for ExistentialPredicate<'tcx>[src]
fn clone(&self) -> ExistentialPredicate<'tcx>[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
impl<'tcx> Copy for ExistentialPredicate<'tcx>[src]
impl<'tcx> Debug for ExistentialPredicate<'tcx>[src]
impl<'tcx, __D: TyDecoder<'tcx>> Decodable<__D> for ExistentialPredicate<'tcx>[src]
impl<'tcx> Display for ExistentialPredicate<'tcx>[src]
impl<'tcx, __E: TyEncoder<'tcx>> Encodable<__E> for ExistentialPredicate<'tcx>[src]
impl<'tcx> Eq for ExistentialPredicate<'tcx>[src]
impl<'tcx> Hash for ExistentialPredicate<'tcx>[src]
fn hash<__H: Hasher>(&self, state: &mut __H)[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
impl<'tcx, '__ctx> HashStable<StableHashingContext<'__ctx>> for ExistentialPredicate<'tcx>[src]
fn hash_stable(
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)[src]
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)
impl<'a, 'tcx> Lift<'tcx> for ExistentialPredicate<'a>[src]
type Lifted = ExistentialPredicate<'tcx>
fn lift_to_tcx(self, tcx: TyCtxt<'tcx>) -> Option<Self::Lifted>[src]
impl<'tcx> Ord for ExistentialPredicate<'tcx>[src]
fn cmp(&self, other: &ExistentialPredicate<'tcx>) -> Ordering[src]
#[must_use]fn max(self, other: Self) -> Self1.21.0[src]
#[must_use]fn min(self, other: Self) -> Self1.21.0[src]
#[must_use]fn clamp(self, min: Self, max: Self) -> Self[src]
impl<'tcx> PartialEq<ExistentialPredicate<'tcx>> for ExistentialPredicate<'tcx>[src]
fn eq(&self, other: &ExistentialPredicate<'tcx>) -> bool[src]
fn ne(&self, other: &ExistentialPredicate<'tcx>) -> bool[src]
impl<'tcx> PartialOrd<ExistentialPredicate<'tcx>> for ExistentialPredicate<'tcx>[src]
fn partial_cmp(&self, other: &ExistentialPredicate<'tcx>) -> Option<Ordering>[src]
fn lt(&self, other: &ExistentialPredicate<'tcx>) -> bool[src]
fn le(&self, other: &ExistentialPredicate<'tcx>) -> bool[src]
fn gt(&self, other: &ExistentialPredicate<'tcx>) -> bool[src]
fn ge(&self, other: &ExistentialPredicate<'tcx>) -> bool[src]
impl<'tcx, P: PrettyPrinter<'tcx>> Print<'tcx, P> for ExistentialPredicate<'tcx>[src]
impl<'tcx> StructuralEq for ExistentialPredicate<'tcx>[src]
impl<'tcx> StructuralPartialEq for ExistentialPredicate<'tcx>[src]
impl<'tcx> TypeFoldable<'tcx> for ExistentialPredicate<'tcx>[src]
fn super_fold_with<__F: TypeFolder<'tcx>>(&self, __folder: &mut __F) -> Self[src]
fn super_visit_with<__F: TypeVisitor<'tcx>>(
&self,
__folder: &mut __F
) -> ControlFlow<()>[src]
&self,
__folder: &mut __F
) -> ControlFlow<()>
fn fold_with<F: TypeFolder<'tcx>>(&self, folder: &mut F) -> Self[src]
fn visit_with<V: TypeVisitor<'tcx>>(&self, visitor: &mut V) -> ControlFlow<()>[src]
fn has_vars_bound_at_or_above(&self, binder: DebruijnIndex) -> bool[src]
fn has_vars_bound_above(&self, binder: DebruijnIndex) -> bool[src]
fn has_escaping_bound_vars(&self) -> bool[src]
fn has_type_flags(&self, flags: TypeFlags) -> bool[src]
fn has_projections(&self) -> bool[src]
fn has_opaque_types(&self) -> bool[src]
fn references_error(&self) -> bool[src]
fn has_param_types_or_consts(&self) -> bool[src]
fn has_infer_regions(&self) -> bool[src]
fn has_infer_types(&self) -> bool[src]
fn has_infer_types_or_consts(&self) -> bool[src]
fn needs_infer(&self) -> bool[src]
fn has_placeholders(&self) -> bool[src]
fn needs_subst(&self) -> bool[src]
fn has_free_regions(&self) -> bool[src]
fn has_erased_regions(&self) -> bool[src]
fn has_erasable_regions(&self) -> bool[src]
fn is_global(&self) -> bool[src]
fn has_late_bound_regions(&self) -> bool[src]
fn still_further_specializable(&self) -> bool[src]
fn visit_tys_shallow(
&self,
visit: impl FnMut(Ty<'tcx>) -> ControlFlow<()>
) -> ControlFlow<()>[src]
&self,
visit: impl FnMut(Ty<'tcx>) -> ControlFlow<()>
) -> ControlFlow<()>
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for ExistentialPredicate<'tcx>
impl<'tcx> !Send for ExistentialPredicate<'tcx>
impl<'tcx> !Sync for ExistentialPredicate<'tcx>
impl<'tcx> Unpin for ExistentialPredicate<'tcx>
impl<'tcx> !UnwindSafe for ExistentialPredicate<'tcx>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<'tcx, T> ArenaAllocatable<'tcx, ()> for T where
T: Copy, [src]
T: Copy,
pub fn allocate_on(Self, &'a Arena<'tcx>) -> &'a mut T[src]
pub fn allocate_from_iter(
&'a Arena<'tcx>,
impl IntoIterator<Item = T>
) -> &'a mut [T][src]
&'a Arena<'tcx>,
impl IntoIterator<Item = T>
) -> &'a mut [T]
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<'a, T> Captures<'a> for T where
T: ?Sized, [src]
T: ?Sized,
impl<Ctxt, T> DepNodeParams<Ctxt> for T where
Ctxt: DepContext,
T: HashStable<<Ctxt as DepContext>::StableHashingContext> + Debug, [src]
Ctxt: DepContext,
T: HashStable<<Ctxt as DepContext>::StableHashingContext> + Debug,
pub default fn can_reconstruct_query_key() -> bool[src]
pub default fn to_fingerprint(&self, tcx: Ctxt) -> Fingerprint[src]
pub default fn to_debug_str(&self, Ctxt) -> String[src]
pub default fn recover(
Ctxt,
&DepNode<<Ctxt as DepContext>::DepKind>
) -> Option<T>[src]
Ctxt,
&DepNode<<Ctxt as DepContext>::DepKind>
) -> Option<T>
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> MaybeResult<T> for T[src]
type Error = !
pub fn from(Result<T, <T as MaybeResult<T>>::Error>) -> T[src]
pub fn to_result(self) -> Result<T, <T as MaybeResult<T>>::Error>[src]
impl<'tcx, T> Subst<'tcx> for T where
T: TypeFoldable<'tcx>, [src]
T: TypeFoldable<'tcx>,
pub fn subst_spanned(
&Self,
TyCtxt<'tcx>,
&[GenericArg<'tcx>],
Option<Span>
) -> T[src]
&Self,
TyCtxt<'tcx>,
&[GenericArg<'tcx>],
Option<Span>
) -> T
fn subst(&self, tcx: TyCtxt<'tcx>, substs: &[GenericArg<'tcx>]) -> Self[src]
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> ToString for T where
T: Display + ?Sized, [src]
T: Display + ?Sized,
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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.