1#ifndef XRPL_SHAMAP_SHAMAPLEAFNODE_H_INCLUDED
2#define XRPL_SHAMAP_SHAMAPLEAFNODE_H_INCLUDED
4#include <xrpl/shamap/SHAMapItem.h>
5#include <xrpl/shamap/SHAMapTreeNode.h>
14 boost::intrusive_ptr<SHAMapItem const>
item_;
17 boost::intrusive_ptr<SHAMapItem const> item,
21 boost::intrusive_ptr<SHAMapItem const> item,
43 invariants(
bool is_root =
false) const final override;
SHAMapLeafNode & operator=(SHAMapLeafNode const &)=delete
std::string getString(SHAMapNodeID const &) const final override
bool isInner() const final override
Determines if this is an inner node.
boost::intrusive_ptr< SHAMapItem const > item_
bool isLeaf() const final override
Determines if this is a leaf node.
bool setItem(boost::intrusive_ptr< SHAMapItem const > i)
Set the item that this node points to and update the node's hash.
SHAMapLeafNode(SHAMapLeafNode const &)=delete
void invariants(bool is_root=false) const final override
boost::intrusive_ptr< SHAMapItem const > const & peekItem() const
Identifies a node inside a SHAMap.
std::uint32_t cowid() const
Returns the SHAMap that owns this node.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.