1#ifndef XRPL_LEDGER_RULES_H_INCLUDED 
    2#define XRPL_LEDGER_RULES_H_INCLUDED 
    4#include <xrpl/basics/base_uint.h> 
    5#include <xrpl/beast/hash/uhash.h> 
    6#include <xrpl/protocol/STVector256.h> 
   15class DigestAwareReadView;
 
RAII class to set and restore the current transaction rules.
 
std::optional< Rules > saved_
 
CurrentTransactionRulesGuard()=delete
 
~CurrentTransactionRulesGuard()
 
CurrentTransactionRulesGuard(Rules r)
 
CurrentTransactionRulesGuard(CurrentTransactionRulesGuard const &)=delete
 
CurrentTransactionRulesGuard & operator=(CurrentTransactionRulesGuard const &)=delete
 
ReadView that associates keys with digests.
 
Rules controlling protocol behavior.
 
Rules(Rules const &)=default
 
std::shared_ptr< Impl const  > impl_
 
bool enabled(uint256 const &feature) const
Returns true if a feature is enabled.
 
bool operator!=(Rules const &other) const
 
friend Rules makeRulesGivenLedger(DigestAwareReadView const &ledger, Rules const ¤t)
 
bool operator==(Rules const &) const
Returns true if two rule sets are identical.
 
Rules & operator=(Rules &&)=default
 
Rules & operator=(Rules const &)=default
 
std::unordered_set< uint256, beast::uhash<> > const & presets() const
 
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
 
bool isFeatureEnabled(uint256 const &feature)
 
void setCurrentTransactionRules(std::optional< Rules > r)
 
@ current
This was a new validation and was added.
 
static Hasher::result_type digest(void const *data, std::size_t size) noexcept
 
std::optional< Rules > const & getCurrentTransactionRules()