Skip to main content

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}