4#include <xrpl/protocol/STLedgerEntry.h>
5#include <xrpl/protocol/STParsedJSON.h>
6#include <xrpl/protocol/jss.h>
7#include <xrpl/protocol_autogen/LedgerEntryBase.h>
8#include <xrpl/protocol_autogen/LedgerEntryBuilderBase.h>
9#include <xrpl/json/json_value.h>
42 throw std::runtime_error(
"Invalid ledger entry type for LedgerHashes");
57 return this->
sle_->at(sfFirstLedgerSequence);
69 return this->
sle_->isFieldPresent(sfFirstLedgerSequence);
81 return this->
sle_->at(sfLastLedgerSequence);
93 return this->
sle_->isFieldPresent(sfLastLedgerSequence);
101 SF_VECTOR256::type::value_type
104 return this->
sle_->at(sfHashes);
135 if (sle->at(sfLedgerEntryType) != ltLEDGER_HASHES)
151 object_[sfFirstLedgerSequence] = value;
162 object_[sfLastLedgerSequence] = value;
std::shared_ptr< STLedgerEntry const > const_pointer
LedgerEntryBase(SLE::const_pointer sle)
Construct a ledger entry wrapper from an existing SLE object.
SLE::const_pointer sle_
The underlying serialized ledger entry being wrapped.
LedgerEntryBuilderBase()=default
Builder for LedgerHashes ledger entries.
LedgerHashes build(uint256 const &index)
Build and return the completed LedgerHashes wrapper.
LedgerHashesBuilder(std::decay_t< typename SF_VECTOR256::type::value_type > const &hashes)
Construct a new LedgerHashesBuilder with required fields.
LedgerHashesBuilder(SLE::const_pointer sle)
Construct a LedgerHashesBuilder from an existing SLE object.
LedgerHashesBuilder & setLastLedgerSequence(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Set sfLastLedgerSequence (SoeOptional).
LedgerHashesBuilder & setFirstLedgerSequence(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Ledger entry-specific field setters.
LedgerHashesBuilder & setHashes(std::decay_t< typename SF_VECTOR256::type::value_type > const &value)
Set sfHashes (SoeRequired).
Ledger Entry: LedgerHashes.
protocol_autogen::Optional< SF_UINT32::type::value_type > getFirstLedgerSequence() const
Get sfFirstLedgerSequence (SoeOptional).
bool hasFirstLedgerSequence() const
Check if sfFirstLedgerSequence is present.
bool hasLastLedgerSequence() const
Check if sfLastLedgerSequence is present.
SF_VECTOR256::type::value_type getHashes() const
Get sfHashes (SoeRequired).
protocol_autogen::Optional< SF_UINT32::type::value_type > getLastLedgerSequence() const
Get sfLastLedgerSequence (SoeOptional).
LedgerHashes(SLE::const_pointer sle)
Construct a LedgerHashes ledger entry wrapper from an existing SLE object.
static constexpr LedgerEntryType entryType
std::conditional_t< std::is_reference_v< ValueType >, std::optional< std::reference_wrapper< std::remove_reference_t< ValueType > > >, std::optional< ValueType > > Optional
LedgerEntryType
Identifiers for on-ledger objects.