pub fn observe<'a, I, O, R>( co: Coroutine<'a, I, O, R>) -> Coroutine<'a, I, O, ObserveResult<'a, I, O, R>>