#[repr(i32)]
pub enum IteratorType {
    Eq,
    Req,
    All,
    LT,
    LE,
    GE,
    GT,
    BitsAllSet,
    BitsAnySet,
    BitsAllNotSet,
    Overlaps,
    Neighbor,
}
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

key == x ASC order

§

Req

key == x DESC order

§

All

all tuples

§

LT

key < x

§

LE

key <= x

§

GE

key >= x

§

GT

key > x

§

BitsAllSet

all bits from x are set in key

§

BitsAnySet

at least one x’s bit is set

§

BitsAllNotSet

all bits are not set

§

Overlaps

key overlaps x

§

Neighbor

tuples in distance ascending order from specified point

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts the value of self to an i64. If the value cannot be represented by an i64, then None is returned. Read more
Converts the value of self to a u64. If the value cannot be represented by a u64, then None is returned. Read more
Converts the value of self to an isize. If the value cannot be represented by an isize, then None is returned. Read more
Converts the value of self to an i8. If the value cannot be represented by an i8, then None is returned. Read more
Converts the value of self to an i16. If the value cannot be represented by an i16, then None is returned. Read more
Converts the value of self to an i32. If the value cannot be represented by an i32, then None is returned. Read more
Converts the value of self to an i128. If the value cannot be represented by an i128 (i64 under the default implementation), then None is returned. Read more
Converts the value of self to a usize. If the value cannot be represented by a usize, then None is returned. Read more
Converts the value of self to a u8. If the value cannot be represented by a u8, then None is returned. Read more
Converts the value of self to a u16. If the value cannot be represented by a u16, then None is returned. Read more
Converts the value of self to a u32. If the value cannot be represented by a u32, then None is returned. Read more
Converts the value of self to a u128. If the value cannot be represented by a u128 (u64 under the default implementation), then None is returned. Read more
Converts the value of self to an f32. Overflows may map to positive or negative inifinity, otherwise None is returned if the value cannot be represented by an f32. Read more
Converts the value of self to an f64. Overflows may map to positive or negative inifinity, otherwise None is returned if the value cannot be represented by an f64. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.