Skip to content

sgns::storage::trie::SuperGeniusNode

More...

#include <supergenius_node.hpp>

Inherits from sgns::storage::trie::Node

Inherited by sgns::storage::trie::BranchNode, sgns::storage::trie::DummyNode, sgns::storage::trie::LeafNode

Public Types

Name
enum class Type

Public Functions

Name
SuperGeniusNode() =default
SuperGeniusNode(KeyNibbles key_nibbles, boost::optional< base::Buffer > value)
~SuperGeniusNode() override =default
virtual bool isDummy() const =0
Type getTrieType() const

Public Attributes

Name
KeyNibbles key_nibbles
boost::optional< base::Buffer > value

Additional inherited members

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

Name
virtual ~Node() =default
virtual int getType() const =0

Detailed Description

struct sgns::storage::trie::SuperGeniusNode;

For specification see https://github.com/w3f/supergenius-re-spec/blob/master/supergenius_re_spec.pdf 5.3 The Trie structure

Public Types Documentation

enum Type

Enumerator Value Description
Special 0b00
Leaf 0b01
BranchEmptyValue 0b10
BranchWithValue 0b11

Public Functions Documentation

function SuperGeniusNode

SuperGeniusNode() =default

function SuperGeniusNode

inline SuperGeniusNode(
    KeyNibbles key_nibbles,
    boost::optional< base::Buffer > value
)

function ~SuperGeniusNode

~SuperGeniusNode() override =default

function isDummy

virtual bool isDummy() const =0

Reimplemented by: sgns::storage::trie::BranchNode::isDummy, sgns::storage::trie::DummyNode::isDummy, sgns::storage::trie::LeafNode::isDummy

function getTrieType

inline Type getTrieType() const

Public Attributes Documentation

variable key_nibbles

KeyNibbles key_nibbles;

variable value

boost::optional< base::Buffer > value;

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