General-purpose sum types.
Crates.io │ Repo
Arbitrarily-sized product types exist in Rust in the form of tuples. This is a generalisation of bluss’s Either type to provide arbitrarily-sized sum types*.
* Over up to 32 types.