#root::derive
Enum root/derive.vi:86
trait Enum[Enum, Variants];
name root/derive.vi:87
const Enum::name[Enum, Variants; Enum[Enum, Variants]]: String;
variant_names root/derive.vi:88
const Enum::variant_names[Enum, Variants; Enum[Enum, Variants]]: List[String];
match_ root/derive.vi:89
fn Enum::match_[Enum, Variants, F, T; Enum[Enum, Variants], Fn[F, (Variants,), T]](enum_: Enum, f: F) -> T;
reconstruct root/derive.vi:90
fn Enum::reconstruct[Enum, Variants; Enum[Enum, Variants]](variant: Variants) -> Enum;
match_ref root/derive.vi:94
fn match_ref[E, V, F, T; Enum[E, V], Fn[F, (&V,), T]](enum_: &E, f: F) -> T;