Struct differential_dataflow::trace::cursor::cursor_pair::CursorPair
source · pub struct CursorPair<C1, C2> { /* private fields */ }Expand description
A cursor over the combined updates of two different cursors.
A CursorPair wraps two cursors over the same types of updates, and provides navigation
through their merged updates.
Trait Implementations
sourceimpl<K, V, T, R, C1, C2> Cursor<K, V, T, R> for CursorPair<C1, C2>where
K: Ord,
V: Ord,
C1: Cursor<K, V, T, R>,
C2: Cursor<K, V, T, R>,
impl<K, V, T, R, C1, C2> Cursor<K, V, T, R> for CursorPair<C1, C2>where
K: Ord,
V: Ord,
C1: Cursor<K, V, T, R>,
C2: Cursor<K, V, T, R>,
type Storage = (<C1 as Cursor<K, V, T, R>>::Storage, <C2 as Cursor<K, V, T, R>>::Storage)
type Storage = (<C1 as Cursor<K, V, T, R>>::Storage, <C2 as Cursor<K, V, T, R>>::Storage)
Type the cursor addresses data in.
sourcefn key_valid(&self, storage: &Self::Storage) -> bool
fn key_valid(&self, storage: &Self::Storage) -> bool
Indicates if the current key is valid. Read more
sourcefn val_valid(&self, storage: &Self::Storage) -> bool
fn val_valid(&self, storage: &Self::Storage) -> bool
Indicates if the current value is valid. Read more
sourcefn key<'a>(&self, storage: &'a Self::Storage) -> &'a K
fn key<'a>(&self, storage: &'a Self::Storage) -> &'a K
A reference to the current key. Asserts if invalid.
sourcefn val<'a>(&self, storage: &'a Self::Storage) -> &'a V
fn val<'a>(&self, storage: &'a Self::Storage) -> &'a V
A reference to the current value. Asserts if invalid.
sourcefn map_times<L: FnMut(&T, R)>(&mut self, storage: &Self::Storage, logic: L)
fn map_times<L: FnMut(&T, R)>(&mut self, storage: &Self::Storage, logic: L)
Applies
logic to each pair of time and difference. Intended for mutation of the
closure’s scope. Read moresourcefn step_key(&mut self, storage: &Self::Storage)
fn step_key(&mut self, storage: &Self::Storage)
Advances the cursor to the next key. Indicates if the key is valid.
sourcefn seek_key(&mut self, storage: &Self::Storage, key: &K)
fn seek_key(&mut self, storage: &Self::Storage, key: &K)
Advances the cursor to the specified key. Indicates if the key is valid.
sourcefn step_val(&mut self, storage: &Self::Storage)
fn step_val(&mut self, storage: &Self::Storage)
Advances the cursor to the next value. Indicates if the value is valid.
sourcefn seek_val(&mut self, storage: &Self::Storage, val: &V)
fn seek_val(&mut self, storage: &Self::Storage, val: &V)
Advances the cursor to the specified value. Indicates if the value is valid.
sourcefn rewind_keys(&mut self, storage: &Self::Storage)
fn rewind_keys(&mut self, storage: &Self::Storage)
Rewinds the cursor to the first key.
sourcefn rewind_vals(&mut self, storage: &Self::Storage)
fn rewind_vals(&mut self, storage: &Self::Storage)
Rewinds the cursor to the first value for current key.
Auto Trait Implementations
impl<C1, C2> RefUnwindSafe for CursorPair<C1, C2>where
C1: RefUnwindSafe,
C2: RefUnwindSafe,
impl<C1, C2> Send for CursorPair<C1, C2>where
C1: Send,
C2: Send,
impl<C1, C2> Sync for CursorPair<C1, C2>where
C1: Sync,
C2: Sync,
impl<C1, C2> Unpin for CursorPair<C1, C2>where
C1: Unpin,
C2: Unpin,
impl<C1, C2> UnwindSafe for CursorPair<C1, C2>where
C1: UnwindSafe,
C2: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more