@@ -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. |