[−][src]Crate context_coroutine
#context-coroutine
Provides coroutines using the trait Coroutine.
Coroutines use a separate, special stack.
Implement this trait and then call Coroutine::start_coroutine(), passing in start arguments and a stack.
For a simple coroutine, use the stack stacks::ProtectedStack.
The module context provides lower-level logic to use as a building block for things other than coroutines, for example, fibres.
This crate was originally a simple set of extensions to the context crate to provide stackful coroutines. The developers are not associated with the authors of context but are extremely grateful for the work they've put into to a superb piece of code.
Modules
| context | Context; derived from |
| stacks | Stack implementations. |
Structs
| StartedCoroutineInstance | Holds a stack and a type-safe transfer of a started coroutine; suitable for the ultimate owner of a coroutine. |
| Yielder | A simple structure to make it easy to 'yield' from a coroutine. |
Enums
| ResumeOutcome | Outcome of a coroutine's resumption. |
| StartOutcome | Outcome of a coroutine's start. |
Traits
| Coroutine | A trait that stackful coroutines should implement. |