[−][src]Trait differential_dataflow::trace::layers::Cursor
A type supporting navigation.
The precise meaning of this navigation is not defined by the trait. It is likely that having
navigated around, the cursor will be different in some other way, but the Cursor
trait does
not explain how this is so.
Associated Types
type Key
The type revealed by the cursor.
Required methods
fn key<'a>(&self, storage: &'a Storage) -> &'a Self::Key
Reveals the current key.
fn step(&mut self, storage: &Storage)
Advances the cursor by one element.
fn seek(&mut self, storage: &Storage, key: &Self::Key)
Advances the cursor until the location where key
would be expected.
fn valid(&self, storage: &Storage) -> bool
Returns true
if the cursor points at valid data. Returns false
if the cursor is exhausted.
fn rewind(&mut self, storage: &Storage)
Rewinds the cursor to its initial state.
fn reposition(&mut self, storage: &Storage, lower: usize, upper: usize)
Repositions the cursor to a different range of values.
Implementors
impl<K, L, O> Cursor<OrderedLayer<K, L, O>> for OrderedCursor<L> where
K: Ord,
L: Trie,
O: OrdOffset,
<O as TryFrom<usize>>::Error: Debug,
<O as TryInto<usize>>::Error: Debug,
[src]
K: Ord,
L: Trie,
O: OrdOffset,
<O as TryFrom<usize>>::Error: Debug,
<O as TryInto<usize>>::Error: Debug,
type Key = K
fn key<'a>(&self, storage: &'a OrderedLayer<K, L, O>) -> &'a Self::Key
[src]
fn step(&mut self, storage: &OrderedLayer<K, L, O>)
[src]
fn seek(&mut self, storage: &OrderedLayer<K, L, O>, key: &Self::Key)
[src]
fn valid(&self, _storage: &OrderedLayer<K, L, O>) -> bool
[src]
fn rewind(&mut self, storage: &OrderedLayer<K, L, O>)
[src]
fn reposition(
&mut self,
storage: &OrderedLayer<K, L, O>,
lower: usize,
upper: usize
)
[src]
&mut self,
storage: &OrderedLayer<K, L, O>,
lower: usize,
upper: usize
)
impl<K: Clone, R: Clone> Cursor<OrderedLeaf<K, R>> for OrderedLeafCursor
[src]
type Key = (K, R)
fn key<'a>(&self, storage: &'a OrderedLeaf<K, R>) -> &'a Self::Key
[src]
fn step(&mut self, storage: &OrderedLeaf<K, R>)
[src]
fn seek(&mut self, _storage: &OrderedLeaf<K, R>, _key: &Self::Key)
[src]
fn valid(&self, _storage: &OrderedLeaf<K, R>) -> bool
[src]
fn rewind(&mut self, _storage: &OrderedLeaf<K, R>)
[src]
fn reposition(
&mut self,
_storage: &OrderedLeaf<K, R>,
lower: usize,
upper: usize
)
[src]
&mut self,
_storage: &OrderedLeaf<K, R>,
lower: usize,
upper: usize
)