Struct rustc_middle::ty::flags::FlagComputation[−][src]

pub struct FlagComputation {
    pub flags: TypeFlags,
    pub outer_exclusive_binder: DebruijnIndex,
}

Fields

flags: TypeFlagsouter_exclusive_binder: DebruijnIndex

Implementations

impl FlagComputation[src]

fn new() -> FlagComputation[src]

pub fn for_kind(kind: &TyKind<'_>) -> FlagComputation[src]

pub fn for_predicate<'tcx>(
    binder: Binder<'tcx, PredicateKind<'_>>
) -> FlagComputation
[src]

pub fn for_const(c: &Const<'_>) -> TypeFlags[src]

fn add_flags(&mut self, flags: TypeFlags)[src]

fn add_bound_var(&mut self, binder: DebruijnIndex)[src]

indicates that self refers to something at binding level binder

fn add_exclusive_binder(&mut self, exclusive_binder: DebruijnIndex)[src]

indicates that self refers to something inside binding level binder – not bound by binder, but bound by the next binder internal to it

fn bound_computation<T, F>(&mut self, value: Binder<'_, T>, f: F) where
    F: FnOnce(&mut Self, T), 
[src]

Adds the flags/depth from a set of types that appear within the current type, but within a region binder.

fn add_kind(&mut self, kind: &TyKind<'_>)[src]

fn add_predicate<'tcx>(&mut self, binder: Binder<'tcx, PredicateKind<'_>>)[src]

fn add_predicate_atom(&mut self, atom: PredicateKind<'_>)[src]

fn add_ty(&mut self, ty: Ty<'_>)[src]

fn add_tys(&mut self, tys: &[Ty<'_>])[src]

fn add_region(&mut self, r: Region<'_>)[src]

fn add_const(&mut self, c: &Const<'_>)[src]

fn add_unevaluated_const<'tcx>(&mut self, ct: Unevaluated<'tcx>)[src]

fn add_existential_projection(&mut self, projection: &ExistentialProjection<'_>)[src]

fn add_projection_ty(&mut self, projection_ty: ProjectionTy<'_>)[src]

fn add_substs(&mut self, substs: &[GenericArg<'_>])[src]

Trait Implementations

impl Debug for FlagComputation[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl RefUnwindSafe for FlagComputation

impl Send for FlagComputation

impl Sync for FlagComputation

impl Unpin for FlagComputation

impl UnwindSafe for FlagComputation

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

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<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

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]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<T> WithConstness for T[src]

fn with_constness(self, constness: Constness) -> ConstnessAnd<Self>[src]

fn with_const(self) -> ConstnessAnd<Self>[src]

fn without_const(self) -> ConstnessAnd<Self>[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized, 
[src]