Support for defining tagged unions and classical enums through the enum sugar.
enum
Enum
An opaque type.
__dispatch
__unsafe-dispatch2
apply
literal
unsafe-extract-payload