Struct nebari::Tree

source · []
pub struct Tree<Root: Root, File: ManagedFile> { /* private fields */ }
Expand description

A named collection of keys and values.

Implementations

Returns the name of the tree.

Returns the path to the file for this tree.

Returns the number of keys stored in the tree. Does not include deleted keys.

Sets key to value. This is executed within its own transaction.

Retrieves the current value of key, if present. Does not reflect any changes in pending transactions.

Sets key to value. If a value already exists, it will be returned.

Executes a modification.

Removes key and returns the existing value, if present. This is executed within its own transaction.

Compares the value of key against old. If the values match, key will be set to the new value if new is Some or removed if new is None. This is executed within its own transaction.

Retrieves the values of keys. If any keys are not found, they will be omitted from the results. Keys are required to be pre-sorted.

Retrieves all of the values of keys within range.

Scans the tree. Each key that is contained range will be passed to key_evaluator, which can opt to read the data for the key, skip, or stop scanning. If KeyEvaluation::ReadData is returned, callback will be invoked with the key and stored value. The order in which callback is invoked is not necessarily the same order in which the keys are found.

Returns the last key of the tree.

Returns the last key and value of the tree.

Rewrites the database to remove data that is no longer current. Because Nebari uses an append-only format, this is helpful in reducing disk usage.

See TreeFile::compact() for more information.

Scans the tree for keys that are contained within range. If forwards is true, scanning starts at the lowest sort-order key and scans forward. Otherwise, scanning starts at the highest sort-order key and scans backwards. key_evaluator is invoked for each key as it is encountered. For all KeyEvaluation::ReadData results returned, callback will be invoked with the key and values. The callback may not be invoked in the same order as the keys are scanned.

Trait Implementations

The name of the tree.

The default state for the underlying root type.

Begins a transaction on this tree.

Returns a copy of the value. Read more

Performs copy-assignment from source. 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

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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.