Struct rustc_middle::ty::PredicateS
source · pub(crate) struct PredicateS<'tcx> {
kind: Binder<'tcx, PredicateKind<'tcx>>,
flags: TypeFlags,
outer_exclusive_binder: DebruijnIndex,
}
Expand description
Represents a predicate.
See comments on TyS
, which apply here too (albeit for
PredicateS
/Predicate
rather than TyS
/Ty
).
Fields
kind: Binder<'tcx, PredicateKind<'tcx>>
flags: TypeFlags
outer_exclusive_binder: DebruijnIndex
See the comment for the corresponding field of TyS.
Trait Implementations
sourceimpl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for PredicateS<'tcx>
impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for PredicateS<'tcx>
fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self
fn allocate_from_iter<'a>(
arena: &'a Arena<'tcx>,
iter: impl IntoIterator<Item = Self>
) -> &'a mut [Self]ⓘNotable traits for &[u8]impl Read for &[u8]impl Write for &mut [u8]
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for PredicateS<'tcx>
impl<'tcx> Send for PredicateS<'tcx>
impl<'tcx> Sync for PredicateS<'tcx>
impl<'tcx> Unpin for PredicateS<'tcx>
impl<'tcx> !UnwindSafe for PredicateS<'tcx>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T, R> InternIteratorElement<T, R> for T
impl<T, R> InternIteratorElement<T, R> for T
type Output = R
fn intern_with<I, F>(iter: I, f: F) -> <T as InternIteratorElement<T, R>>::Outputwhere
I: Iterator<Item = T>,
F: FnOnce(&[T]) -> R,
sourceimpl<T> MaybeResult<T> for T
impl<T> MaybeResult<T> for T
sourceimpl<CTX, T> Value<CTX> for Twhere
CTX: DepContext,
impl<CTX, T> Value<CTX> for Twhere
CTX: DepContext,
default fn from_cycle_error(tcx: CTX) -> T
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 48 bytes