#coroutine #stackful-coroutine

no-std minicoroutine

mini coroutine library in rust

1 unstable release

0.1.3 Aug 10, 2023
0.1.2 Aug 10, 2023
0.1.0 Aug 10, 2023

#1104 in Concurrency

Apache-2.0

33KB
399 lines

minicoroutine

a mini coroutine library, a wrapper on minicoro

Features

  • Stackful asymmetric coroutines.
  • Supports nesting coroutines (resuming a coroutine from another coroutine).
  • Supports no_std and no_alloc.
  • Supports custom allocators.

Supported targets

This crate currently supports the following targets:

Linux Windows Mac IOS Android Emscripten
x86_64
i686
AArch64
ARM
RISC-V
Wasm

Panic

Panics are not supported by this crate, catch unwind will not be able to catch panics invoked inside the coroutine. use the yield api to pass on any errors instead.

Yield from anywhere

You can yield the current running coroutine from anywhere without having to pass pointers around, to do this just use Coroutine::running().unwrap().yield_(value).

Dependencies

~0–280KB