Crates.io | generator |
lib.rs | generator |
version | 0.8.3 |
source | src |
created_at | 2015-09-04 08:32:00.413239 |
updated_at | 2024-09-01 05:16:35.369693 |
description | Stackfull Generator Library in Rust |
homepage | https://github.com/Xudong-Huang/generator-rs.git |
repository | https://github.com/Xudong-Huang/generator-rs.git |
max_upload_size | |
id | 2986 |
size | 136,051 |
rust stackful generator library
[dependencies]
generator = "0.8"
use generator::{done, Gn};
fn main() {
let g = Gn::new_scoped(|mut s| {
let (mut a, mut b) = (0, 1);
while b < 200 {
std::mem::swap(&mut a, &mut b);
b = a + b;
s.yield_(b);
}
done!();
});
for i in g {
println!("{}", i);
}
}
1
2
3
5
8
13
21
34
55
89
144
233
basic send/yield with message support
generator cancel support
yield_from support
panic inside generator support
stack size tune support
scoped static type support
basic coroutine interface support
stable rust support
we can easily port python library based on generator into rust
coroutine framework running on multi thread
This crate supports below platforms, welcome to contribute with other arch and platforms
This project is licensed under either of the following, at your option: