1 2 3 4 5 6 7 8 9 10 11 12 13 14
pub trait HKT<A, B> { type URI; type Target; } impl<A, B> HKT<A, B> for Option<A> { type URI = Self; type Target = Option<B>; } impl<A, B, E> HKT<A, B> for Result<A, E> { type URI = Self; type Target = Result<B, E>; }