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(binder: Binder<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(&mut self, binder: Binder<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_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]

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]

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

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

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

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

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

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

type Error = !

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.

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.

impl<T> WithConstness for T[src]