1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
pub struct Out<A, B = ()> { a: A, b: B, } pub struct First<In = ()> { in_: In, } pub struct Second; // Out<First<Second>> pub fn alef() -> Out<First<Second>> { loop {} } pub fn bet() -> Out<First, Second> { loop {} }