Expand description

Type-level enum

Until const_generics can handle custom enums, this pattern must be implemented at the type level.

We thus end up with:

#[type_level_enum]
 enum OpaqueKind {
         Concrete,
         Opaque,
 }

With OpaqueKind::T being the type-level “enum type”:

<Param : OpaqueKind::T>

Re-exports

pub use OpaqueKind as T;

Enums

Traits