pub trait GeneratorExt<R>: Generator<R> {
// Provided methods
fn compose<G: Generator<Self::Yield>>(self, then: G) -> Compose<Self, G>
where Self: Sized { ... }
fn map_complete<U, F>(self, f: F) -> MapComplete<Self, F>
where Self: Sized,
F: FnOnce(Self::Return) -> U { ... }
}