1#include <xrpl/ledger/ReadView.h>
3#include <xrpl/basics/base_uint.h>
4#include <xrpl/beast/hash/uhash.h>
5#include <xrpl/ledger/detail/ReadViewFwdRange.h>
6#include <xrpl/protocol/Indexes.h>
7#include <xrpl/protocol/Keylet.h>
8#include <xrpl/protocol/Rules.h>
9#include <xrpl/protocol/SField.h>
35 return Iterator(
view_,
view_->slesUpperBound(key));
75 auto const sle = ledger.
read(k);
ReadView that associates keys with digests.
virtual std::optional< digest_type > digest(key_type const &key) const =0
Return the digest associated with the key.
virtual SLE::const_pointer read(Keylet const &k) const =0
Return the state item associated with a key.
Rules controlling protocol behavior.
std::unordered_set< uint256, beast::Uhash<> > const & presets() const
Rules(Rules const &)=default
friend Rules makeRulesGivenLedger(DigestAwareReadView const &ledger, std::unordered_set< uint256, beast::Uhash<> > const &presets)
ReadViewFwdRange()=delete
Keylet const & amendments() noexcept
The index of the amendment table.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
static Hasher::result_type digest(void const *data, std::size_t size) noexcept
Rules makeRulesGivenLedger(DigestAwareReadView const &ledger, Rules const ¤t)
A pair of SHAMap key and LedgerEntryType.
Iterator upperBound(key_type const &key) const
SlesType(ReadView const &view)
TxsType(ReadView const &view)