Trait druid::widget::ListIter

source ·
pub trait ListIter<T>: Data {
    // Required methods
    fn for_each(&self, cb: impl FnMut(&T, usize));
    fn for_each_mut(&mut self, cb: impl FnMut(&mut T, usize));
    fn data_len(&self) -> usize;
}
Expand description

This iterator enables writing List widget for any Data.

Required Methods§

source

fn for_each(&self, cb: impl FnMut(&T, usize))

Iterate over each data child.

source

fn for_each_mut(&mut self, cb: impl FnMut(&mut T, usize))

Iterate over each data child. Keep track of changed data and update self.

source

fn data_len(&self) -> usize

Return data length.

Implementations on Foreign Types§

source§

impl<S: Data, T: Data> ListIter<(S, T)> for (S, Arc<VecDeque<T>>)

source§

fn for_each(&self, cb: impl FnMut(&(S, T), usize))

source§

fn for_each_mut(&mut self, cb: impl FnMut(&mut (S, T), usize))

source§

fn data_len(&self) -> usize

source§

impl<S: Data, T: Data> ListIter<(S, T)> for (S, Arc<Vec<T>>)

source§

fn for_each(&self, cb: impl FnMut(&(S, T), usize))

source§

fn for_each_mut(&mut self, cb: impl FnMut(&mut (S, T), usize))

source§

fn data_len(&self) -> usize

source§

impl<T: Data> ListIter<T> for Arc<Vec<T>>

source§

fn for_each(&self, cb: impl FnMut(&T, usize))

source§

fn for_each_mut(&mut self, cb: impl FnMut(&mut T, usize))

source§

fn data_len(&self) -> usize

source§

impl<T: Data> ListIter<T> for Arc<VecDeque<T>>

source§

fn for_each(&self, cb: impl FnMut(&T, usize))

source§

fn for_each_mut(&mut self, cb: impl FnMut(&mut T, usize))

source§

fn data_len(&self) -> usize

source§

impl<S: Data, T: Data> ListIter<(S, T)> for (S, Vector<T>)

source§

fn for_each(&self, cb: impl FnMut(&(S, T), usize))

source§

fn for_each_mut(&mut self, cb: impl FnMut(&mut (S, T), usize))

source§

fn data_len(&self) -> usize

Implementors§

source§

impl<K, V> ListIter<V> for OrdMap<K, V>where K: Data + Ord, V: Data,

source§

impl<T: Data> ListIter<T> for Vector<T>