[][src]Struct rustc::ty::CrateVariancesMap

pub struct CrateVariancesMap<'tcx> {
    pub variances: FxHashMap<DefId, &'tcx [Variance]>,
}
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

The crate variances map is computed during typeck and contains the variance of every item in the local crate. You should not use it directly, because to do so will make your pass dependent on the HIR of every item in the local crate. Instead, use tcx.variances_of() to get the variance for a particular item.

Fields

variances: FxHashMap<DefId, &'tcx [Variance]>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

For each item with generics, maps to a vector of the variance of its generics. If an item has no generics, it will have no entry.

Trait Implementations

impl<'tcx> ArenaAllocatable for CrateVariancesMap<'tcx>[src]

impl<'tcx> ArenaField<'tcx> for CrateVariancesMap<'tcx>[src]

impl<'tcx, '__ctx> HashStable<StableHashingContext<'__ctx>> for CrateVariancesMap<'tcx>[src]

Auto Trait Implementations

impl<'tcx> RefUnwindSafe for CrateVariancesMap<'tcx>

impl<'tcx> Send for CrateVariancesMap<'tcx>

impl<'tcx> Sync for CrateVariancesMap<'tcx>

impl<'tcx> Unpin for CrateVariancesMap<'tcx>

impl<'tcx> UnwindSafe for CrateVariancesMap<'tcx>

Blanket Implementations

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

impl<T> ArenaAllocatable for T where
    T: Copy
[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> Erased for T[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 = !

⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

impl<E> SpecializationError for E[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.

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]