| @@ -76,6 +76,7 @@ pub trait Coroutine<R = ()> { |
|
|
| 76 |
76 |
/// values which are allowed to be returned each time a coroutine yields. |
| 77 |
77 |
/// For example an iterator-as-a-coroutine would likely have this type as |
| 78 |
78 |
/// `T`, the type being iterated over. |
|
79 |
+ #[cfg_attr(not(bootstrap), lang = "coroutine_yield")] |
| 79 |
80 |
type Yield; |
| 80 |
81 |
|
| 81 |
82 |
/// The type of value this coroutine returns. |
| @@ -84,6 +85,7 @@ pub trait Coroutine<R = ()> { |
|
|
| 84 |
85 |
/// `return` statement or implicitly as the last expression of a coroutine |
| 85 |
86 |
/// literal. For example futures would use this as `Result<T, E>` as it |
| 86 |
87 |
/// represents a completed future. |
|
88 |
+ #[cfg_attr(not(bootstrap), lang = "coroutine_return")] |
| 87 |
89 |
type Return; |
| 88 |
90 |
|
| 89 |
91 |
/// Resumes the execution of this coroutine. |