LLFIO
v2.00
|
Information about an available key value store implementation. More...
#include "kvstore.hpp"
Public Types | |
enum | bitfield__features : unsigned { none = 1U << 0U , shared_memory = 1U << 1U , history = 1U << 2U , stable_values = 1U << 3U , stable_keys = 1U << 4U , update_deltas = 1U << 5U , atomic_snapshots = 1U << 6U , atomic_transactions = 1U << 7U } |
Features requested, or provided by, this store. More... | |
using | uri_type = std::basic_string< char > |
The type of the UTF-8 URI used by this store. | |
using | extent_type = llfio::file_handle::extent_type |
The value extent type used by this store. | |
using | size_type = llfio::file_handle::size_type |
The memory extent type used by this store. | |
using | handle_type = llfio::file_handle |
The handle type used by this store. | |
using | mode = handle_type::mode |
The mode used by this store. | |
using | creation = handle_type::creation |
The creation used by this store. | |
using | caching = handle_type::caching |
The kernel caching used by this store. | |
Public Attributes | |
const char * | name |
The name of this store implementation. | |
size_type | min_key_size |
The minimum key size, in bytes, supported. | |
size_type | max_key_size |
The maximum key size, in bytes, supported. | |
extent_type | min_value_size |
The minimum value size, in bytes, supported. | |
extent_type | max_value_size |
features | features |
The features this store implementation provides. | |
int(* | score )(const uri_type &uri, handle_type::mode, handle_type::creation creation) |
result< basic_key_value_store >(* | create )(const basic_key_value_store::uri_type &uri, size_type key_size, features _features, mode _mode, creation _creation, caching _caching) |
Information about an available key value store implementation.
enum kvstore_v1_xxx::basic_key_value_store_info::bitfield__features : unsigned |
Features requested, or provided by, this store.
result<basic_key_value_store>(* kvstore_v1_xxx::basic_key_value_store_info::create) (const basic_key_value_store::uri_type &uri, size_type key_size, features _features, mode _mode, creation _creation, caching _caching) |
Construct a store implementation.
extent_type kvstore_v1_xxx::basic_key_value_store_info::max_value_size |
The maximum value size, in bytes, supported.
int(* kvstore_v1_xxx::basic_key_value_store_info::score) (const uri_type &uri, handle_type::mode, handle_type::creation creation) |
Examine the specified URI for suitability for this store implementation. Zero means that the URI location is suitable, but the format at that location is not compatible. Negative means the URI location is not possible. Higher positive scores outrank other positive scores.