Skip to content

sgns::storage::trie::TrieSerializerImpl

#include <trie_serializer_impl.hpp>

Inherits from sgns::storage::trie::TrieSerializer, IComponent

Public Functions

Name
TrieSerializerImpl(std::shared_ptr< SuperGeniusTrieFactory > factory, std::shared_ptr< Codec > codec, std::shared_ptr< TrieStorageBackend > backend)
~TrieSerializerImpl() override =default
virtual base::Buffer getEmptyRootHash() const override
virtual outcome::result< base::Buffer > storeTrie(SuperGeniusTrie & trie) override
virtual outcome::result< std::unique_ptr< SuperGeniusTrie > > retrieveTrie(const base::Buffer & db_key) const override
virtual std::string GetName() override

Additional inherited members

Public Functions inherited from sgns::storage::trie::TrieSerializer

Name
~TrieSerializer() override =default

Public Functions inherited from IComponent

Name
virtual ~IComponent() =default

Public Functions Documentation

function TrieSerializerImpl

TrieSerializerImpl(
    std::shared_ptr< SuperGeniusTrieFactory > factory,
    std::shared_ptr< Codec > codec,
    std::shared_ptr< TrieStorageBackend > backend
)

function ~TrieSerializerImpl

~TrieSerializerImpl() override =default

function getEmptyRootHash

virtual base::Buffer getEmptyRootHash() const override

Return: root hash of an empty trie

Reimplements: sgns::storage::trie::TrieSerializer::getEmptyRootHash

function storeTrie

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

Reimplements: sgns::storage::trie::TrieSerializer::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 override

Reimplements: sgns::storage::trie::TrieSerializer::retrieveTrie

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

function GetName

inline virtual std::string GetName() override

Reimplements: IComponent::GetName


Updated on 2026-04-15 at 11:00:39 -0700