pub trait OperatorExt<I>: Operator<I> {
    // Provided methods
    fn then<P2>(self, other: P2) -> Then<I, Self, P2>
       where Self: Sized,
             P2: Operator<Self::Output> { ... }
    fn facet<P2>(self, other: P2) -> Facet<I, Self, P2>
       where Self: Sized,
             P2: Operator<I> { ... }
    fn map<O, F>(self, f: F) -> Then<I, Self, Map<F>>
       where Self: Sized,
             F: FnMut(Self::Output) -> O { ... }
    fn boxed<'a>(self) -> BoxOperator<'a, I, Self::Output>
       where Self: Sized + Send + 'a { ... }
    fn boxed_local<'a>(self) -> LocalBoxOperator<'a, I, Self::Output>
       where Self: Sized + 'a { ... }
    fn into_async_operator(self) -> Next<Self>
       where Self: Sized { ... }
}
Expand description

Operator extension trait.

Provided Methods§

source

fn then<P2>(self, other: P2) -> Then<I, Self, P2>where Self: Sized, P2: Operator<Self::Output>,

Combine with another operator that uses Self::Output as input type.

The result operator will perform the other operator after performing the self.

source

fn facet<P2>(self, other: P2) -> Facet<I, Self, P2>where Self: Sized, P2: Operator<I>,

Combine with another operator with the same input type.

The result operator will perform two operators simultaneously.

source

fn map<O, F>(self, f: F) -> Then<I, Self, Map<F>>where Self: Sized, F: FnMut(Self::Output) -> O,

Map the output after performing the operator.

source

fn boxed<'a>(self) -> BoxOperator<'a, I, Self::Output>where Self: Sized + Send + 'a,

Convert into a BoxOperator.

source

fn boxed_local<'a>(self) -> LocalBoxOperator<'a, I, Self::Output>where Self: Sized + 'a,

Convert into a LocalBoxOperator.

source

fn into_async_operator(self) -> Next<Self>where Self: Sized,

Convert into a [AsyncOperator].

Implementors§

source§

impl<I, T: Operator<I>> OperatorExt<I> for T