sgns::storage::trie::PersistentTrieBatchImpl¶
#include <persistent_trie_batch_impl.hpp>
Inherits from sgns::storage::trie::PersistentTrieBatch, sgns::storage::trie::TrieBatch, std::enable_shared_from_this< PersistentTrieBatch >, sgns::storage::face::Readable< Buffer, Buffer >, sgns::storage::face::Writeable< Buffer, Buffer >, sgns::storage::face::Iterable< Buffer, Buffer >
Public Types¶
| Name | |
|---|---|
| using std::function< void(const base::Buffer &)> | RootChangedEventHandler |
Public Functions¶
| Name | |
|---|---|
| PersistentTrieBatchImpl(std::shared_ptr< Codec > codec, std::shared_ptr< TrieSerializer > serializer, boost::optional< std::shared_ptr< changes_trie::ChangesTracker > > changes, std::unique_ptr< SuperGeniusTrie > trie, RootChangedEventHandler && handler) | |
| ~PersistentTrieBatchImpl() override =default | |
| virtual outcome::result< Buffer > | commit() override |
| virtual std::unique_ptr< TopperTrieBatch > | batchOnTop() override |
| virtual outcome::result< Buffer > | get(const Buffer & key) const override Get value by key. |
| virtual std::unique_ptr< BufferMapCursor > | cursor() override Returns new key-value iterator. |
| virtual bool | contains(const Buffer & key) const override Returns true if given key-value binding exists in the storage. |
| virtual bool | empty() const override Returns true if the storage is empty. |
| virtual outcome::result< void > | clearPrefix(const Buffer & prefix) override |
| virtual outcome::result< void > | put(const Buffer & key, const Buffer & value) override Store value by key. |
| outcome::result< void > | put(const Buffer & key, Buffer && value) override |
| virtual outcome::result< void > | remove(const Buffer & key) override Remove value by key. |
Additional inherited members¶
Public Functions inherited from sgns::storage::trie::TrieBatch
| Name | |
|---|---|
| ~TrieBatch() override =default |
Public Functions inherited from sgns::storage::face::Readable< Buffer, Buffer >
| Name | |
|---|---|
| virtual | ~Readable() =default |
Public Functions inherited from sgns::storage::face::Writeable< Buffer, Buffer >
| Name | |
|---|---|
| virtual | ~Writeable() =default |
Public Functions inherited from sgns::storage::face::Iterable< Buffer, Buffer >
| Name | |
|---|---|
| virtual | ~Iterable() =default |
Public Types Documentation¶
using RootChangedEventHandler¶
using sgns::storage::trie::PersistentTrieBatchImpl::RootChangedEventHandler = std::function<void(const base::Buffer &)>;
Public Functions Documentation¶
function PersistentTrieBatchImpl¶
PersistentTrieBatchImpl(
std::shared_ptr< Codec > codec,
std::shared_ptr< TrieSerializer > serializer,
boost::optional< std::shared_ptr< changes_trie::ChangesTracker > > changes,
std::unique_ptr< SuperGeniusTrie > trie,
RootChangedEventHandler && handler
)
function ~PersistentTrieBatchImpl¶
function commit¶
Return: the root of the committed trie
Reimplements: sgns::storage::trie::PersistentTrieBatch::commit
Commits changes to a persistent storage
function batchOnTop¶
Reimplements: sgns::storage::trie::PersistentTrieBatch::batchOnTop
Creates a batch on top of this batch
function get¶
Get value by key.
Parameters:
- key K
Return: V
Reimplements: sgns::storage::face::Readable::get
function cursor¶
Returns new key-value iterator.
Return: kv iterator
Reimplements: sgns::storage::face::Iterable::cursor
function contains¶
Returns true if given key-value binding exists in the storage.
Parameters:
- key K
Return: true if key has value, false otherwise.
Reimplements: sgns::storage::face::Readable::contains
function empty¶
Returns true if the storage is empty.
Reimplements: sgns::storage::face::Readable::empty
function clearPrefix¶
Reimplements: sgns::storage::trie::TrieBatch::clearPrefix
Remove all trie entries which key begins with the supplied prefix
function put¶
Store value by key.
Parameters:
- key key
- value value
Return: result containing void if put successful, error otherwise
Reimplements: sgns::storage::face::Writeable::put
function put¶
function remove¶
Remove value by key.
Parameters:
- key K
Return: error code if error happened
Reimplements: sgns::storage::face::Writeable::remove
Updated on 2026-04-15 at 11:00:39 -0700