Skip to content

sgns::storage::trie::TrieSerializer

More...

#include <trie_serializer.hpp>

Inherits from IComponent

Inherited by sgns::storage::trie::TrieSerializerImpl

Public Functions

Name
~TrieSerializer() override =default
virtual base::Buffer getEmptyRootHash() const =0
virtual outcome::result< base::Buffer > storeTrie(SuperGeniusTrie & trie) =0
virtual outcome::result< std::unique_ptr< SuperGeniusTrie > > retrieveTrie(const base::Buffer & db_key) const =0

Additional inherited members

Public Functions inherited from IComponent

Name
virtual ~IComponent() =default
virtual std::string GetName() =0

Detailed Description

class sgns::storage::trie::TrieSerializer;

Serializes SuperGeniusTrie and stores it in an external storage

Public Functions Documentation

function ~TrieSerializer

~TrieSerializer() override =default

function getEmptyRootHash

virtual base::Buffer getEmptyRootHash() const =0

Return: root hash of an empty trie

Reimplemented by: sgns::storage::trie::TrieSerializerImpl::getEmptyRootHash

function storeTrie

virtual outcome::result< base::Buffer > storeTrie(
    SuperGeniusTrie & trie
) =0

Reimplemented by: sgns::storage::trie::TrieSerializerImpl::storeTrie

Writes a trie to a storage, recursively storing its nodes.

function retrieveTrie

virtual outcome::result< std::unique_ptr< SuperGeniusTrie > > retrieveTrie(
    const base::Buffer & db_key
) const =0

Reimplemented by: sgns::storage::trie::TrieSerializerImpl::retrieveTrie

Fetches a trie from the storage. A nullptr is returned in case that there is no entry for provided key.


Updated on 2026-03-04 at 13:10:44 -0800