20#include <xrpl/ledger/Dir.h>
27 : view_(&view), root_(key), sle_(view_->read(root_))
60 if (
view_ ==
nullptr || other.
view_ ==
nullptr)
65 "ripple::const_iterator::operator== : views and roots are matching");
74 "ripple::const_iterator::operator* : nonzero index");
85 "ripple::const_iterator::operator++ : nonzero index");
101 "ripple::const_iterator::operator++(int) : nonzero index");
110 auto const next =
sle_->getFieldU64(sfIndexNext);
120 XRPL_ASSERT(
sle_,
"ripple::const_iterator::next_page : non-null SLE");
bool operator==(const_iterator const &other) const
const_iterator & next_page()
std::vector< uint256 >::const_iterator it_
reference operator*() const
value_type const & reference
std::optional< value_type > cache_
STVector256 const * indexes_
const_iterator & operator++()
std::shared_ptr< SLE const > sle_
std::shared_ptr< SLE const > sle_
const_iterator end() const
STVector256 const * indexes_
Dir(ReadView const &, Keylet const &)
const_iterator begin() const
virtual std::shared_ptr< SLE const > read(Keylet const &k) const =0
Return the state item associated with a key.
Keylet child(uint256 const &key) noexcept
Any item that can be in an owner dir.
Keylet page(uint256 const &root, std::uint64_t index=0) noexcept
A page in a directory.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
A pair of SHAMap key and LedgerEntryType.