[][src]Trait lmdb::Cursor

pub trait Cursor<'txn> {
    fn cursor(&self) -> *mut MDB_cursor;

    fn get(
        &self,
        key: Option<&[u8]>,
        data: Option<&[u8]>,
        op: c_uint
    ) -> Result<(Option<&'txn [u8]>, &'txn [u8])> { ... }
fn iter(&mut self) -> Iter<'txn> { ... }
fn iter_start(&mut self) -> Iter<'txn> { ... }
fn iter_from<K>(&mut self, key: K) -> Iter<'txn>
    where
        K: AsRef<[u8]>
, { ... }
fn iter_dup(&mut self) -> IterDup<'txn> { ... }
fn iter_dup_start(&mut self) -> IterDup<'txn> { ... }
fn iter_dup_from<K>(&mut self, key: K) -> IterDup<'txn>
    where
        K: AsRef<[u8]>
, { ... }
fn iter_dup_of<K>(&mut self, key: K) -> Iter<'txn>
    where
        K: AsRef<[u8]>
, { ... } }

An LMDB cursor.

Required methods

fn cursor(&self) -> *mut MDB_cursor

Returns a raw pointer to the underlying LMDB cursor.

The caller must ensure that the pointer is not used after the lifetime of the cursor.

Loading content...

Provided methods

fn get(
    &self,
    key: Option<&[u8]>,
    data: Option<&[u8]>,
    op: c_uint
) -> Result<(Option<&'txn [u8]>, &'txn [u8])>

Retrieves a key/data pair from the cursor. Depending on the cursor op, the current key may be returned.

Important traits for Iter<'txn>
fn iter(&mut self) -> Iter<'txn>

Iterate over database items. The iterator will begin with item next after the cursor, and continue until the end of the database. For new cursors, the iterator will begin with the first item in the database.

For databases with duplicate data items (DatabaseFlags::DUP_SORT), the duplicate data items of each key will be returned before moving on to the next key.

Important traits for Iter<'txn>
fn iter_start(&mut self) -> Iter<'txn>

Iterate over database items starting from the beginning of the database.

For databases with duplicate data items (DatabaseFlags::DUP_SORT), the duplicate data items of each key will be returned before moving on to the next key.

Important traits for Iter<'txn>
fn iter_from<K>(&mut self, key: K) -> Iter<'txn> where
    K: AsRef<[u8]>, 

Iterate over database items starting from the given key.

For databases with duplicate data items (DatabaseFlags::DUP_SORT), the duplicate data items of each key will be returned before moving on to the next key.

Important traits for IterDup<'txn>
fn iter_dup(&mut self) -> IterDup<'txn>

Iterate over duplicate database items. The iterator will begin with the item next after the cursor, and continue until the end of the database. Each item will be returned as an iterator of its duplicates.

Important traits for IterDup<'txn>
fn iter_dup_start(&mut self) -> IterDup<'txn>

Iterate over duplicate database items starting from the beginning of the database. Each item will be returned as an iterator of its duplicates.

Important traits for IterDup<'txn>
fn iter_dup_from<K>(&mut self, key: K) -> IterDup<'txn> where
    K: AsRef<[u8]>, 

Iterate over duplicate items in the database starting from the given key. Each item will be returned as an iterator of its duplicates.

Important traits for Iter<'txn>
fn iter_dup_of<K>(&mut self, key: K) -> Iter<'txn> where
    K: AsRef<[u8]>, 

Iterate over the duplicates of the item in the database with the given key.

Loading content...

Implementors

impl<'txn> Cursor<'txn> for RoCursor<'txn>[src]

fn get(
    &self,
    key: Option<&[u8]>,
    data: Option<&[u8]>,
    op: c_uint
) -> Result<(Option<&'txn [u8]>, &'txn [u8])>
[src]

Important traits for Iter<'txn>
fn iter(&mut self) -> Iter<'txn>[src]

Important traits for Iter<'txn>
fn iter_start(&mut self) -> Iter<'txn>[src]

Important traits for Iter<'txn>
fn iter_from<K>(&mut self, key: K) -> Iter<'txn> where
    K: AsRef<[u8]>, 
[src]

Important traits for IterDup<'txn>
fn iter_dup(&mut self) -> IterDup<'txn>[src]

Important traits for IterDup<'txn>
fn iter_dup_start(&mut self) -> IterDup<'txn>[src]

Important traits for IterDup<'txn>
fn iter_dup_from<K>(&mut self, key: K) -> IterDup<'txn> where
    K: AsRef<[u8]>, 
[src]

Important traits for Iter<'txn>
fn iter_dup_of<K>(&mut self, key: K) -> Iter<'txn> where
    K: AsRef<[u8]>, 
[src]

impl<'txn> Cursor<'txn> for RwCursor<'txn>[src]

fn get(
    &self,
    key: Option<&[u8]>,
    data: Option<&[u8]>,
    op: c_uint
) -> Result<(Option<&'txn [u8]>, &'txn [u8])>
[src]

Important traits for Iter<'txn>
fn iter(&mut self) -> Iter<'txn>[src]

Important traits for Iter<'txn>
fn iter_start(&mut self) -> Iter<'txn>[src]

Important traits for Iter<'txn>
fn iter_from<K>(&mut self, key: K) -> Iter<'txn> where
    K: AsRef<[u8]>, 
[src]

Important traits for IterDup<'txn>
fn iter_dup(&mut self) -> IterDup<'txn>[src]

Important traits for IterDup<'txn>
fn iter_dup_start(&mut self) -> IterDup<'txn>[src]

Important traits for IterDup<'txn>
fn iter_dup_from<K>(&mut self, key: K) -> IterDup<'txn> where
    K: AsRef<[u8]>, 
[src]

Important traits for Iter<'txn>
fn iter_dup_of<K>(&mut self, key: K) -> Iter<'txn> where
    K: AsRef<[u8]>, 
[src]

Loading content...