Struct transformable_channels::mpsc::FilterMappedSender [] [src]

pub struct FilterMappedSender<F, T, V, W> where W: ExtSender<V> + TransformableSender<V> + Sized, F: Fn(T) -> Option<V> + Sync + Send + 'static, T: Send + 'static, V: Send + 'static {
    // some fields omitted
}

An ExtSender obtained from a call to method filter_map.

Trait Implementations

impl<F, T, V, W> ExtSender<T> for FilterMappedSender<F, T, V, W> where W: ExtSender<V> + TransformableSender<V> + Sized, F: Fn(T) -> Option<V> + Sync + Send + 'static, T: Send + 'static, V: Send + 'static

fn send(&self, t: T) -> Result<(), ()>

fn internal_clone(&self) -> Box<ExtSender<T>>

impl<F, T, V, W> Clone for FilterMappedSender<F, T, V, W> where W: ExtSender<V> + TransformableSender<V> + Sized, F: Fn(T) -> Option<V> + Sync + Send + 'static, T: Send + 'static, V: Send + 'static

fn clone(&self) -> Self

fn clone_from(&mut self, source: &Self)

impl<F, T, V, W> TransformableSender<T> for FilterMappedSender<F, T, V, W> where W: ExtSender<V> + TransformableSender<V> + Sized, F: Fn(T) -> Option<V> + Sync + Send + 'static, T: Send + 'static, V: Send + 'static

fn map<F, T>(&self, f: F) -> MappedSender<F, T, V, Self> where Self: Sized, F: Fn(T) -> V + Sync + Send + 'static, T: Send + 'static, V: Send + 'static

fn filter<F>(&self, f: F) -> FilteredSender<F, V, Self> where Self: Sized, F: Fn(&V) -> bool + Sync + Send + 'static

fn filter_map<F, T>(&self, f: F) -> FilterMappedSender<F, T, V, Self> where Self: Sized, F: Fn(T) -> Option<V> + Sync + Send + 'static, T: Send + 'static

fn tie<S, W>(&self, other: &S) -> TiedSender<Self, S, V, W> where Self: Sized, S: ExtSender<W> + TransformableSender<W>, W: Send + 'static