Enum rustc::ty::maps::Query
[−]
[src]
pub enum Query { ty(DefId), generics(DefId), predicates(DefId), super_predicates(DefId), type_param_predicates((DefId, DefId)), trait_def(DefId), adt_def(DefId), adt_destructor(DefId), adt_sized_constraint(DefId), variances(DefId), associated_item_def_ids(DefId), associated_item(DefId), impl_trait_ref(DefId), inherent_impls(DefId), mir(DefId), mir_const_qualif(DefId), closure_kind(DefId), closure_type(DefId), custom_coerce_unsized_kind(DefId), typeck_tables(DefId), coherent_trait((CrateNum, DefId)), coherent_inherent_impls(CrateNum), monomorphic_const_eval(DefId), }
rustc_private
)Variants
ty(DefId)
rustc_private
)Records the type of every item.
generics(DefId)
rustc_private
)Maps from the def-id of an item (trait/struct/enum/fn) to its associated generics and predicates.
predicates(DefId)
rustc_private
)super_predicates(DefId)
rustc_private
)Maps from the def-id of a trait to the list of super-predicates. This is a subset of the full list of predicates. We store these in a separate map because we must evaluate them even during type conversion, often before the full predicates are available (note that supertraits have additional acyclicity requirements).
type_param_predicates((DefId, DefId))
rustc_private
)To avoid cycles within the predicates of a single item we compute
per-type-parameter predicates for resolving T::AssocTy
.
trait_def(DefId)
rustc_private
)adt_def(DefId)
rustc_private
)adt_destructor(DefId)
rustc_private
)adt_sized_constraint(DefId)
rustc_private
)variances(DefId)
rustc_private
)Maps from def-id of a type or region parameter to its (inferred) variance.
associated_item_def_ids(DefId)
rustc_private
)Maps from an impl/trait def-id to a list of the def-ids of its items
associated_item(DefId)
rustc_private
)Maps from a trait item to the trait item "descriptor"
impl_trait_ref(DefId)
rustc_private
)inherent_impls(DefId)
rustc_private
)Maps a DefId of a type to a list of its inherent impls. Contains implementations of methods that are inherent to a type. Methods in these implementations don't need to be exported.
mir(DefId)
rustc_private
)Maps from the def-id of a function/method or const/static to its MIR. Mutation is done at an item granularity to allow MIR optimization passes to function and still access cross-crate MIR (e.g. inlining or const eval).
Note that cross-crate MIR appears to be always borrowed
(in the RefCell
sense) to prevent accidental mutation.
mir_const_qualif(DefId)
rustc_private
)Maps DefId's that have an associated Mir to the result of the MIR qualify_consts pass. The actual meaning of the value isn't known except to the pass itself.
closure_kind(DefId)
rustc_private
)Records the type of each closure. The def ID is the ID of the expression defining the closure.
closure_type(DefId)
rustc_private
)Records the type of each closure. The def ID is the ID of the expression defining the closure.
custom_coerce_unsized_kind(DefId)
rustc_private
)Caches CoerceUnsized kinds for impls on custom types.
typeck_tables(DefId)
rustc_private
)coherent_trait((CrateNum, DefId))
rustc_private
)coherent_inherent_impls(CrateNum)
rustc_private
)monomorphic_const_eval(DefId)
rustc_private
)Results of evaluating monomorphic constants embedded in other items, such as enum variant explicit discriminants.
Methods
impl Query
[src]
fn describe(&self, tcx: TyCtxt) -> String
rustc_private
)Trait Implementations
impl Copy for Query
[src]
impl Clone for Query
[src]
fn clone(&self) -> Query
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Debug for Query
[src]
impl PartialEq for Query
[src]
fn eq(&self, __arg_0: &Query) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Query) -> bool
This method tests for !=
.