Type Alias ProvidedValue

Source
pub type ProvidedValue<'tcx> = OpaqueTyOrigin<DefId>;
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 ArenaCached>::Provided instead.

Aliased Type§

enum ProvidedValue<'tcx> {
    FnReturn {
        parent: DefId,
        in_trait_or_impl: Option<RpitContext>,
    },
    AsyncFn {
        parent: DefId,
        in_trait_or_impl: Option<RpitContext>,
    },
    TyAlias {
        parent: DefId,
        in_assoc_ty: bool,
    },
}

Variants§

§

FnReturn

-> impl Trait

Fields

§parent: DefId

The defining function.

§in_trait_or_impl: Option<RpitContext>
§

AsyncFn

async fn

Fields

§parent: DefId

The defining function.

§in_trait_or_impl: Option<RpitContext>
§

TyAlias

type aliases: type Foo = impl Trait;

Fields

§parent: DefId

The type alias or associated type parent of the TAIT/ATPIT

§in_assoc_ty: bool

associated types in impl blocks for traits.

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

Size for each variant:

  • FnReturn: 11 bytes
  • AsyncFn: 11 bytes
  • TyAlias: 11 bytes