Enum tarantool::index::IteratorType
source · #[repr(i32)]pub enum IteratorType {
Eq = 0,
Req = 1,
All = 2,
LT = 3,
LE = 4,
GE = 5,
GT = 6,
BitsAllSet = 7,
BitsAnySet = 8,
BitsAllNotSet = 9,
Overlaps = 10,
Neighbor = 11,
}Expand description
Controls how to iterate over tuples in an index.
Different index types support different iterator types.
For example, one can start iteration from a particular value
(request key) and then retrieve all tuples where keys are
greater or equal (= GE) to this key.
If iterator type is not supported by the selected index type,
iterator constructor must fail with ER_UNSUPPORTED. To be
selectable for primary key, an index must support at least
Eq and GE types.
None value of request key corresponds to the first or last
key in the index, depending on iteration direction.
(first key for GE and GT types, and last key for LE and LT).
Therefore, to iterate over all tuples in an index, one can
use GE or LE iteration types with start key equal to None.
For EQ, the key must not be None.
Variants§
Eq = 0
key == x ASC order
Req = 1
key == x DESC order
All = 2
all tuples
LT = 3
key < x
LE = 4
key <= x
GE = 5
key >= x
GT = 6
key > x
BitsAllSet = 7
all bits from x are set in key
BitsAnySet = 8
at least one x’s bit is set
BitsAllNotSet = 9
all bits are not set
Overlaps = 10
key overlaps x
Neighbor = 11
tuples in distance ascending order from specified point
Trait Implementations§
source§impl Clone for IteratorType
impl Clone for IteratorType
source§fn clone(&self) -> IteratorType
fn clone(&self) -> IteratorType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more