3 个不稳定版本
0.2.0 | 2023年9月11日 |
---|---|
0.1.1 | 2023年9月9日 |
0.1.0 | 2023年9月9日 |
#5 in #streams
每月162次下载
用于 4 个crate (3 个直接使用)
19KB
262 行
Streem
创建和消费异步流的简单库
使用方法
添加到您的 Cargo.toml 中
$ cargo add streem
在您的应用程序中使用
use streem::IntoStreamer;
fn from_iter<I>(iter: impl IntoIterator<Item = I>) -> impl futures_core::Stream<Item = I>
where
I: 'static,
{
streem::from_fn(|yielder| async move {
for i in iter {
yielder.yield_(i).await;
}
})
}
fn main() {
futures_executor::block_on(async {
let stream = std::pin::pin!(from_iter(0..10));
let mut streamer = stream.into_streamer();
while let Some(item) = streamer.next().await {
println!("Yielded {item}");
}
})
}
贡献
欢迎对任何发现的问题提出问题。请注意,任何贡献的代码都将按照 GPLv3 许可。
许可证
版权所有 © 2023 asonix
Streem 是免费软件:您可以按照自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它,许可证版本为 3,或(根据您的要求)任何更高版本。
Streem 分发是为了希望它有用,但没有任何保证;甚至没有关于其商销性或适用于特定目的的隐含保证。有关详细信息,请参阅 GNU 通用公共许可证。此文件是 Streem 的一部分。
您应该已随 Streem 收到一份 GNU 通用公共许可证的副本。如果没有,请参阅 https://gnu.ac.cn/licenses/。
依赖关系
~70KB