#接收器 #未来 #路由器 #路由 #有能力的 #路由 #路由器接收器

futures-router-sink

一个能够在这两个接收器之间进行路由的 futures-rs 接收器。

1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2017 年 6 月 7 日

#3#有能力的

MIT 许可证

10KB
151

futures-router-sink

这个库允许将两个接收器合并为一个。

Build Status

用法

将此添加到您的 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