rustc_middle::query::queries::associated_item

Type Alias ProvidedValue

source
pub type ProvidedValue<'tcx> = AssocItem;
Expand description

This type alias specifies the type returned from query providers and the type used for decoding. For regular queries this is the declared returned type V, but arena_cache will use <V as Deref>::Target instead.

Aliased Type§

struct ProvidedValue<'tcx> {
    pub def_id: DefId,
    pub name: Symbol,
    pub kind: AssocKind,
    pub container: AssocItemContainer,
    pub trait_item_def_id: Option<DefId>,
    pub fn_has_self_parameter: bool,
    pub opt_rpitit_info: Option<ImplTraitInTraitData>,
    pub is_effects_desugaring: bool,
}

Fields§

§def_id: DefId§name: Symbol§kind: AssocKind§container: AssocItemContainer§trait_item_def_id: Option<DefId>

If this is an item in an impl of a trait then this is the DefId of the associated item on the trait that this implements.

§fn_has_self_parameter: bool

Whether this is a method with an explicit self as its first parameter, allowing method calls.

§opt_rpitit_info: Option<ImplTraitInTraitData>

Some if the associated item (an associated type) comes from the return-position impl Trait in trait desugaring. The ImplTraitInTraitData provides additional information about its source.

§is_effects_desugaring: bool

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: 40 bytes