Module efficient_enum::tag [] [src]

Structs

TagMSB

A struct represnting the method of tagging using only the MSB of a number

TagWrapper

A struct for wrapping tagged values to prevent accidentally calling

Enums

One

An enum for representing 1 option

Two

An enum for representing 2 options

Traits

TagOptions

A trait for getting the number of options associated with a TaggableValue of a specific size

TaggableValue

A trait representing a value which can have some space dedicated to use for tagging a union If you implement this trait incorrectly, you will break memory safety.

UntaggedZero

A marker trait guarantees that untag_in_place is a no-op for items tagged with Option0 Items tagged with Option0 should be able to be directly accessed as if they were not tagged in any way.