pub enum Get {
Show 17 variants
Search,
SearchBoth,
SearchBothRange,
First,
Last,
Next,
Prev,
NextNoDup,
PrevNoDup,
Current,
SearchGte,
SearchRange,
SearchLte,
FirstDup,
LastDup,
NextDup,
PrevDup,
}Expand description
Type of get operation for cursors and databases.
Specifies how to position the cursor or which record to retrieve.
Get operation types from the database engine.
Variants§
Search
Get the record matching the key.
Searches for a record with the specified key. For duplicate databases, returns the first duplicate.
SearchBoth
Get the record matching both key and data.
For duplicate databases, searches for a record matching both the key and the data. Returns an error if not found.
SearchBothRange
Get the record matching the key with data >= the specified data.
For duplicate databases, positions the cursor at the first duplicate
of the specified key whose data is >= the supplied data slice.
Equivalent to BDB-JE’s Cursor.getSearchBothRange.
First
Get the record with the smallest key.
Positions the cursor at the first record in the database.
Last
Get the record with the largest key.
Positions the cursor at the last record in the database.
Next
Get the next record.
Moves the cursor to the next record in key order. For duplicate databases, moves to the next duplicate of the current key, or the first duplicate of the next key if at the last duplicate.
Prev
Get the previous record.
Moves the cursor to the previous record in key order. For duplicate databases, moves to the previous duplicate of the current key, or the last duplicate of the previous key if at the first duplicate.
NextNoDup
Get the next record with a different key.
Skips all duplicates of the current key and moves to the first duplicate of the next key.
PrevNoDup
Get the previous record with a different key.
Skips all duplicates of the current key and moves to the last duplicate of the previous key.
Current
Get the current record.
Returns the record at the current cursor position. Useful after positioning the cursor to re-read the record.
SearchGte
Get the record with the smallest key greater than or equal to the specified key.
Positions the cursor at the first record with a key greater than or equal to the search key.
Also known as SearchRange (the: Cursor.getSearchKeyRange).
SearchRange
Alias for SearchGte. Matches the SEARCH_RANGE/getSearchKeyRange name.
SearchLte
Get the record with the largest key less than or equal to the specified key.
Positions the cursor at the last record with a key less than or equal to the search key.
Not yet implemented. Cursor::get returns
crate::error::NoxuError::Unsupported for this variant. Tracked
for a future sprint; see
docs/src/internal/api-audit-2026-05-cursor.md Finding 3.
FirstDup
Get the first duplicate of the current key.
For duplicate databases, positions at the first duplicate of the current key. Has no effect if not positioned on a key.
Not yet implemented. Cursor::get returns
crate::error::NoxuError::Unsupported for this variant. Tracked
for a future sprint; see
docs/src/internal/api-audit-2026-05-cursor.md Finding 3.
LastDup
Get the last duplicate of the current key.
For duplicate databases, positions at the last duplicate of the current key. Has no effect if not positioned on a key.
Not yet implemented. Cursor::get returns
crate::error::NoxuError::Unsupported for this variant. Tracked
for a future sprint; see
docs/src/internal/api-audit-2026-05-cursor.md Finding 3.
NextDup
Get the next duplicate of the current key.
For duplicate databases, moves to the next duplicate of the current key. Returns an error if at the last duplicate.
PrevDup
Get the previous duplicate of the current key.
For duplicate databases, moves to the previous duplicate of the current key. Returns an error if at the first duplicate.
Implementations§
Source§impl Get
impl Get
Sourcepub fn requires_key(&self) -> bool
pub fn requires_key(&self) -> bool
Returns whether this operation requires a key parameter.
Sourcepub fn requires_data(&self) -> bool
pub fn requires_data(&self) -> bool
Returns whether this operation requires a data parameter.
Sourcepub fn requires_duplicates(&self) -> bool
pub fn requires_duplicates(&self) -> bool
Returns whether this operation is valid only for duplicate databases.
Sourcepub fn moves_cursor(&self) -> bool
pub fn moves_cursor(&self) -> bool
Returns whether this operation moves the cursor position.
Sourcepub fn moves_forward(&self) -> bool
pub fn moves_forward(&self) -> bool
Returns whether this operation moves forward in key order.
Sourcepub fn moves_backward(&self) -> bool
pub fn moves_backward(&self) -> bool
Returns whether this operation moves backward in key order.
Trait Implementations§
impl Copy for Get
impl Eq for Get
impl StructuralPartialEq for Get
Auto Trait Implementations§
impl Freeze for Get
impl RefUnwindSafe for Get
impl Send for Get
impl Sync for Get
impl Unpin for Get
impl UnsafeUnpin for Get
impl UnwindSafe for Get
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.