futures_signals::signal_vec

Trait SignalVec

Source
pub trait SignalVec {
    type Item;

    // Required method
    fn poll_vec_change(
        self: Pin<&mut Self>,
        cx: &mut Context<'_>,
    ) -> Poll<Option<VecDiff<Self::Item>>>;
}

Required Associated Types§

Required Methods§

Source

fn poll_vec_change( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Option<VecDiff<Self::Item>>>

Implementations on Foreign Types§

Source§

impl<'a, A> SignalVec for &'a mut A
where A: ?Sized + SignalVec + Unpin,

Source§

type Item = <A as SignalVec>::Item

Source§

fn poll_vec_change( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Option<VecDiff<Self::Item>>>

Source§

impl<A> SignalVec for Box<A>
where A: ?Sized + SignalVec + Unpin,

Source§

type Item = <A as SignalVec>::Item

Source§

fn poll_vec_change( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Option<VecDiff<Self::Item>>>

Source§

impl<A> SignalVec for Pin<A>
where A: Unpin + DerefMut, A::Target: SignalVec,

Source§

type Item = <<A as Deref>::Target as SignalVec>::Item

Source§

fn poll_vec_change( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Option<VecDiff<Self::Item>>>

Implementors§

Source§

impl<A> SignalVec for Always<A>

Source§

type Item = A

Source§

impl<A> SignalVec for Enumerate<A>
where A: SignalVec,

Source§

impl<A> SignalVec for Flatten<A>
where A: SignalVec, A::Item: SignalVec,

Source§

impl<A> SignalVec for MutableSignalVec<A>

Source§

type Item = A

Source§

impl<A> SignalVec for SignalVecDebug<A>
where A: SignalVec, A::Item: Debug,

Source§

type Item = <A as SignalVec>::Item

Source§

impl<A, B> SignalVec for SignalSignalVec<A>
where A: Signal<Item = Vec<B>>,

Source§

type Item = B

Source§

impl<A, B> SignalVec for Chain<A, B>
where A: SignalVec, B: SignalVec<Item = A::Item>,

Source§

type Item = <A as SignalVec>::Item

Source§

impl<A, B, C> SignalVec for SwitchSignalVec<A, B, C>
where A: Signal, B: SignalVec, C: FnMut(A::Item) -> B,

Source§

type Item = <B as SignalVec>::Item

Source§

impl<A, B, F> SignalVec for FilterSignalCloned<A, B, F>
where A: SignalVec, A::Item: Clone, B: Signal<Item = bool>, F: FnMut(&A::Item) -> B,

Source§

type Item = <A as SignalVec>::Item

Source§

impl<A, B, F> SignalVec for Map<A, F>
where A: SignalVec, F: FnMut(A::Item) -> B,

Source§

type Item = B

Source§

impl<A, B, F> SignalVec for MapSignal<A, B, F>
where A: SignalVec, B: Signal, F: FnMut(A::Item) -> B,

Source§

type Item = <B as Signal>::Item

Source§

impl<A, F> SignalVec for Filter<A, F>
where A: SignalVec, F: FnMut(&A::Item) -> bool,

Source§

type Item = <A as SignalVec>::Item

Source§

impl<A, F> SignalVec for SortByCloned<A, F>
where A: SignalVec, F: FnMut(&A::Item, &A::Item) -> Ordering, A::Item: Clone,

Source§

type Item = <A as SignalVec>::Item

Source§

impl<K, V> SignalVec for MutableBTreeMapEntries<K, V>
where K: Ord + Clone,

Source§

impl<K, V> SignalVec for MutableBTreeMapKeys<K, V>
where K: Ord + Clone,

Source§

type Item = K

Source§

impl<S> SignalVec for StreamSignalVec<S>
where S: Stream,

Source§

type Item = <S as Stream>::Item

Source§

impl<S, A, F> SignalVec for DelayRemove<S, A, F>
where S: SignalVec, A: Future<Output = ()>, F: FnMut(&S::Item) -> A,

Source§

type Item = <S as SignalVec>::Item

Source§

impl<S, A, F> SignalVec for FilterMap<S, F>
where S: SignalVec, F: FnMut(S::Item) -> Option<A>,

Source§

type Item = A