# Trait std::marker::DiscriminantKind

source ·

    pub trait DiscriminantKind {
        type Discriminant: Clone + Copy + Debug + Eq + PartialEq + Hash + Send + Sync + Unpin;
    }

🔬This is a nightly-only experimental API. (`discriminant_kind`)
Expand description

Compiler-internal trait used to indicate the type of enum discriminants.

This trait is automatically implemented for every type and does not add any guarantees to `mem::Discriminant`. It is undefined behavior to transmute between `DiscriminantKind::Discriminant` and `mem::Discriminant`.

## Required Associated Types§

source

#### type Discriminant: Clone + Copy + Debug + Eq + PartialEq + Hash + Send + Sync + Unpin

🔬This is a nightly-only experimental API. (`discriminant_kind`)

The type of the discriminant, which must satisfy the trait bounds required by `mem::Discriminant`.

## Object Safety§

This trait is not object safe.

## Implementors§