A type class for data structures that can be compacted (filtering out None values) and separated (splitting Result values).
None
Result
use fp_library::{brands::*, functions::*}; let x = Some(Some(5)); let y = compact::<OptionBrand, _>(x); assert_eq!(y, Some(5));
Option
Some
Ok
Err