## ProvidedValue

# Type Alias ProvidedValue

Source

    pub type ProvidedValue<'tcx> = CrateDepKind;

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§

    pub enum ProvidedValue<'tcx> {
        MacrosOnly,
        Conditional,
        Unconditional,
    }

## Variants§

§

### MacrosOnly

A dependency that is only used for its macros.

§

### Conditional

A dependency that is injected into the crate graph but which only sometimes needs to actually be linked in, e.g., the injected panic runtime.

§

### Unconditional

A dependency that is required by an rlib version of this crate. Ordinary `extern crate`s as well as most injected dependencies result in `Unconditional` dependencies.

## 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: 1 byte

Size for each variant:

- `MacrosOnly`: 0 bytes
- `Conditional`: 0 bytes
- `Unconditional`: 0 bytes