associated-derive
Derive macro for Associated.
Usage
Add #[derive(Associated)] to an enum definition. This is not compatible with structs or unions.
When deriving Associated you must include a #[associate(Type = associated_type)] attribute beneath
the #[derive(Associated)] attribute, replacing associated_type with the type of the constants you
want to associate with the enum variants.
For each and every variant of the enum you must include either a #[assoc(expr)] or
#[assoc_const(const_expr)] attribute above or inline before the variant, with expr or const_expr
replaced with the expression or value you want to associate.
Example
Alpha.get_associated // returns a static lifetime reference to "Alpha"
Generated Implementation
Note
If you give a variant both an #[assoc] and an #[assoc_const] attribute, or multiple #[assoc]
or #[assoc_const] attributes, only the first will be considered. Including more than one is not
currently an error, but this will change so only use one #[assoc] or #[assoc_const]
attribute per variant.
See associated for retrieving associated constants.