# Type Alias rustc_middle::ty::generic_args::GenericArgKind

source ·

    pub type GenericArgKind<'tcx> = GenericArgKind<TyCtxt<'tcx>>;

## Aliased Type§

    enum GenericArgKind<'tcx> {
        Lifetime(Region<'tcx>),
        Type(Ty<'tcx>),
        Const(Const<'tcx>),
    }

## Variants§

§

### Lifetime(Region<'tcx>)

§

### Type(Ty<'tcx>)

§

### Const(Const<'tcx>)

## Trait Implementations§

source§

### impl<'tcx> GenericArgPackExt<'tcx> for GenericArgKind<'tcx>

source§

#### fn pack(self) -> GenericArg<'tcx>

## 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: 16 bytes

Size for each variant:

- `Lifetime`: 8 bytes
- `Type`: 8 bytes
- `Const`: 8 bytes