1 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2017 年 6 月 7 日 |
---|
#3 在 #有能力的
10KB
151 行
futures-router-sink
这个库允许将两个接收器合并为一个。
用法
将此添加到您的 Cargo.toml
[dependencies]
futures-router-sink = { git = "https://github.com/Kintaro/futures-router-sink.git" }
extern crate futures_router_sink;
use futures_router_sink::{Route, RouterSink};
许可证
futures-router-sink
根据 MIT 许可证分发。
有关详细信息,请参阅 LICENSE。
lib.rs
:
路由器接收器
示例
use futures::{stream, Stream};
use futures_router_sink::{Route, RouterSink, RouterSinkError};
// Create the two sinks that we are going to route into
let even = Vec::<usize>::new();
let odd = Vec::<usize>::new();
// Create the router sink
let router = RouterSink::new(even, odd);
// Some made up data where we route even numbers
// to the left and odd numbers to the right sink
let input = (0..10)
.map(|x| {
if x % 2 == 0 {
Route::Left(x)
} else {
Route::Right(x)
}
})
.map(Ok::<_, ()>)
.collect::<Vec<_>>();
stream::iter(input)
.map_err(|_| RouterSinkError::Left(()))
.forward(router);
依赖关系
~53KB