anchor_experiment/ops.rs
1use mem::Anchor;
2
3pub enum CoResult<Y, R> {
4 Yield(Y),
5 Return(R),
6}
7
8pub trait StaticGenerator {
9 type Yield;
10 type Return;
11
12 fn static_resume(this: Anchor<&mut Self>) -> CoResult<Self::Yield, Self::Return>;
13}
14
15pub trait Generator: StaticGenerator {
16 fn resume(&mut self) -> CoResult<Self::Yield, Self::Return>;
17}