20#ifndef RIPPLE_SHAMAP_SHAMAPLEAFNODE_H_INCLUDED
21#define RIPPLE_SHAMAP_SHAMAPLEAFNODE_H_INCLUDED
23#include <xrpld/shamap/SHAMapItem.h>
24#include <xrpld/shamap/SHAMapTreeNode.h>
33 boost::intrusive_ptr<SHAMapItem const>
item_;
36 boost::intrusive_ptr<SHAMapItem const> item,
40 boost::intrusive_ptr<SHAMapItem const> item,
62 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.