[−][src]Module abi_stable::nonexhaustive_enum
Contains types and traits for nonexhaustive enums.
The most important type here is NonExhaustive,
which allows passing an enum which used the
#[derive(StableAbi)] #[sabi(kind(WithNonExhaustive(...)))]
attributes through ffi.
Structs
DiscrAndEnumInfo | A struct storing the discriminant and |
EnumInfo | Contains miscelaneous information about an enum. |
NonExhaustive | A generic type for all ffi-safe non-exhaustive enums. |
UnwrapEnumError | An error for a situation where a |
Traits
DeserializeEnum | Describes how a nonexhaustive enum is deserialized. |
GetEnumInfo | Describes the discriminant of an enum,and its valid values. |
GetNonExhaustive | Gets the type whose type layout is used to represent this enum in |
GetVTable | Gets the vtable of |
NonExhaustiveSharedOps | Used to abstract over the reference-ness of |
SerializeEnum | Describes how some enum is serialized. |
ValidDiscriminant | Marker trait for types that abi_stable supports as enum discriminants. |
Functions
assert_nonexhaustive | Asserts that the size and alignment of an enum are valid for its default storage. |
Type Definitions
NonExhaustiveFor | The type of a |
NonExhaustiveWI | The type of a |
NonExhaustiveWS | The type of a |