pub trait BroadbandExt<Item>{
// Required methods
fn broadn_all<F, Fut, N>(
self,
n: N,
f: F,
) -> impl Future<Output = bool> + Send
where N: Into<Option<usize>>,
F: Fn(Item) -> Fut + Send,
Fut: Future<Output = bool> + Send;
fn broadn_any<F, Fut, N>(
self,
n: N,
f: F,
) -> impl Future<Output = bool> + Send
where N: Into<Option<usize>>,
F: Fn(Item) -> Fut + Send,
Fut: Future<Output = bool> + Send;
fn broadn_filter_map<F, Fut, U, N>(
self,
n: N,
f: F,
) -> impl Stream<Item = U> + Send
where N: Into<Option<usize>>,
F: Fn(Item) -> Fut + Send,
Fut: Future<Output = Option<U>> + Send,
U: Send;
fn broadn_find_map<'a, F, Fut, U, N>(
self,
n: N,
f: F,
) -> impl Future<Output = Option<U>> + Send
where N: Into<Option<usize>>,
F: Fn(Item) -> Fut + Send + 'a,
Fut: Future<Output = Option<U>> + Send,
U: Send + 'a,
Self: Unpin + 'a;
fn broadn_flat_map<F, Fut, U, N>(
self,
n: N,
f: F,
) -> impl Stream<Item = U> + Send
where N: Into<Option<usize>>,
F: Fn(Item) -> Fut + Send,
Fut: Stream<Item = U> + Send + Unpin,
U: Send;
fn broadn_then<F, Fut, U, N>(
self,
n: N,
f: F,
) -> impl Stream<Item = U> + Send
where N: Into<Option<usize>>,
F: Fn(Item) -> Fut + Send,
Fut: Future<Output = U> + Send,
U: Send;
// Provided methods
fn broad_all<F, Fut>(self, f: F) -> impl Future<Output = bool> + Send
where F: Fn(Item) -> Fut + Send,
Fut: Future<Output = bool> + Send { ... }
fn broad_any<F, Fut>(self, f: F) -> impl Future<Output = bool> + Send
where F: Fn(Item) -> Fut + Send,
Fut: Future<Output = bool> + Send { ... }
fn broad_filter_map<F, Fut, U>(self, f: F) -> impl Stream<Item = U> + Send
where F: Fn(Item) -> Fut + Send,
Fut: Future<Output = Option<U>> + Send,
U: Send { ... }
fn broad_find_map<'a, F, Fut, U>(
self,
f: F,
) -> impl Future<Output = Option<U>> + Send
where F: Fn(Item) -> Fut + Send + 'a,
Fut: Future<Output = Option<U>> + Send,
U: Send + 'a,
Self: Unpin + 'a { ... }
fn broad_flat_map<F, Fut, U>(self, f: F) -> impl Stream<Item = U> + Send
where F: Fn(Item) -> Fut + Send,
Fut: Stream<Item = U> + Send + Unpin,
U: Send { ... }
fn broad_then<F, Fut, U>(self, f: F) -> impl Stream<Item = U> + Send
where F: Fn(Item) -> Fut + Send,
Fut: Future<Output = U> + Send,
U: Send { ... }
}Expand description
Concurrency extensions to augment futures::StreamExt. broad_ combinators produce out-of-order
Required Methods§
fn broadn_all<F, Fut, N>(self, n: N, f: F) -> impl Future<Output = bool> + Send
fn broadn_any<F, Fut, N>(self, n: N, f: F) -> impl Future<Output = bool> + Send
Sourcefn broadn_filter_map<F, Fut, U, N>(
self,
n: N,
f: F,
) -> impl Stream<Item = U> + Send
fn broadn_filter_map<F, Fut, U, N>( self, n: N, f: F, ) -> impl Stream<Item = U> + Send
Concurrent filter_map(); unordered results
Sourcefn broadn_find_map<'a, F, Fut, U, N>(
self,
n: N,
f: F,
) -> impl Future<Output = Option<U>> + Send
fn broadn_find_map<'a, F, Fut, U, N>( self, n: N, f: F, ) -> impl Future<Output = Option<U>> + Send
Concurrent find_map(); unordered result
fn broadn_flat_map<F, Fut, U, N>( self, n: N, f: F, ) -> impl Stream<Item = U> + Send
fn broadn_then<F, Fut, U, N>(self, n: N, f: F) -> impl Stream<Item = U> + Send
Provided Methods§
fn broad_all<F, Fut>(self, f: F) -> impl Future<Output = bool> + Send
fn broad_any<F, Fut>(self, f: F) -> impl Future<Output = bool> + Send
fn broad_filter_map<F, Fut, U>(self, f: F) -> impl Stream<Item = U> + Send
fn broad_find_map<'a, F, Fut, U>( self, f: F, ) -> impl Future<Output = Option<U>> + Send
fn broad_flat_map<F, Fut, U>(self, f: F) -> impl Stream<Item = U> + Send
fn broad_then<F, Fut, U>(self, f: F) -> impl Stream<Item = U> + Send
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.