rippled
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Public Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
xrpl::Ledger Class Referencefinalabstract

Holds a ledger. More...

#include <Ledger.h>

Inheritance diagram for xrpl::Ledger:
Inheritance graph
[legend]
Collaboration diagram for xrpl::Ledger:
Collaboration graph
[legend]

Classes

class  sles_iter_impl
 
class  txs_iter_impl
 

Public Types

using digest_type = uint256
 
using tx_type = std::pair< std::shared_ptr< STTx const >, std::shared_ptr< STObject const > >
 
using key_type = uint256
 
using mapped_type = std::shared_ptr< SLE const >
 

Public Member Functions

 Ledger (Ledger const &)=delete
 
Ledgeroperator= (Ledger const &)=delete
 
 Ledger (Ledger &&)=delete
 
Ledgeroperator= (Ledger &&)=delete
 
 Ledger (create_genesis_t, Rules const &rules, Fees const &fees, std::vector< uint256 > const &amendments, Family &family)
 Create the Genesis ledger.
 
 Ledger (LedgerHeader const &info, Rules const &rules, Family &family)
 
 Ledger (LedgerHeader const &info, bool &loaded, bool acquire, Rules const &rules, Fees const &fees, Family &family, beast::Journal j)
 Used for ledgers loaded from JSON files.
 
 Ledger (Ledger const &previous, NetClock::time_point closeTime)
 Create a new ledger following a previous ledger.
 
 Ledger (std::uint32_t ledgerSeq, NetClock::time_point closeTime, Rules const &rules, Fees const &fees, Family &family)
 
 ~Ledger ()=default
 
bool open () const override
 Returns true if this reflects an open ledger.
 
LedgerHeader const & header () const override
 Returns information about the ledger.
 
void setLedgerInfo (LedgerHeader const &info)
 
Fees const & fees () const override
 Returns the fees for the base ledger.
 
Rules const & rules () const override
 Returns the tx processing rules.
 
bool exists (Keylet const &k) const override
 Determine if a state item exists.
 
bool exists (uint256 const &key) const
 
std::optional< uint256succ (uint256 const &key, std::optional< uint256 > const &last=std::nullopt) const override
 
std::shared_ptr< SLE const > read (Keylet const &k) const override
 Return the state item associated with a key.
 
std::unique_ptr< sles_type::iter_base > slesBegin () const override
 
std::unique_ptr< sles_type::iter_base > slesEnd () const override
 
std::unique_ptr< sles_type::iter_base > slesUpperBound (uint256 const &key) const override
 
std::unique_ptr< txs_type::iter_base > txsBegin () const override
 
std::unique_ptr< txs_type::iter_base > txsEnd () const override
 
bool txExists (uint256 const &key) const override
 
tx_type txRead (key_type const &key) const override
 Read a transaction from the tx map.
 
std::optional< digest_typedigest (key_type const &key) const override
 Return the digest associated with the key.
 
void rawErase (std::shared_ptr< SLE > const &sle) override
 Delete an existing state item.
 
void rawInsert (std::shared_ptr< SLE > const &sle) override
 Unconditionally insert a state item.
 
void rawErase (uint256 const &key)
 
void rawReplace (std::shared_ptr< SLE > const &sle) override
 Unconditionally replace a state item.
 
void rawDestroyXRP (XRPAmount const &fee) override
 Destroy XRP.
 
void rawTxInsert (uint256 const &key, std::shared_ptr< Serializer const > const &txn, std::shared_ptr< Serializer const > const &metaData) override
 
uint256 rawTxInsertWithHash (uint256 const &key, std::shared_ptr< Serializer const > const &txn, std::shared_ptr< Serializer const > const &metaData)
 
void setValidated () const
 
void setAccepted (NetClock::time_point closeTime, NetClock::duration closeResolution, bool correctCloseTime)
 
void setImmutable (bool rehash=true)
 
bool isImmutable () const
 
void setFull () const
 
void setTotalDrops (std::uint64_t totDrops)
 
SHAMap const & stateMap () const
 
SHAMapstateMap ()
 
SHAMap const & txMap () const
 
SHAMaptxMap ()
 
bool addSLE (SLE const &sle)
 
void updateSkipList ()
 
bool walkLedger (beast::Journal j, bool parallel=false) const
 
bool isSensible () const
 
void invariants () const
 
void unshare () const
 
hash_set< PublicKeynegativeUNL () const
 get Negative UNL validators' master public keys
 
std::optional< PublicKeyvalidatorToDisable () const
 get the to be disabled validator's master public key if any
 
std::optional< PublicKeyvalidatorToReEnable () const
 get the to be re-enabled validator's master public key if any
 
void updateNegativeUNL ()
 update the Negative UNL ledger component.
 
bool isFlagLedger () const
 Returns true if the ledger is a flag ledger.
 
bool isVotingLedger () const
 Returns true if the ledger directly precedes a flag ledger.
 
std::shared_ptr< SLEpeek (Keylet const &k) const
 
shared_from_this (T... args)
 
weak_from_this (T... args)
 
NetClock::time_point parentCloseTime () const
 Returns the close time of the previous ledger.
 
LedgerIndex seq () const
 Returns the sequence number of the base ledger.
 
virtual std::optional< key_typesucc (key_type const &key, std::optional< key_type > const &last=std::nullopt) const =0
 Return the key of the next state item.
 
virtual STAmount balanceHook (AccountID const &account, AccountID const &issuer, STAmount const &amount) const
 
virtual std::uint32_t ownerCountHook (AccountID const &account, std::uint32_t count) const
 
virtual std::unique_ptr< sles_type::iter_base > slesUpperBound (key_type const &key) const =0
 
virtual bool txExists (key_type const &key) const =0
 Returns true if a tx exists in the tx map.
 
virtual void rawTxInsert (ReadView::key_type const &key, std::shared_ptr< Serializer const > const &txn, std::shared_ptr< Serializer const > const &metaData)=0
 Add a transaction to the tx map.
 

Public Attributes

sles_type sles
 Iterable range of ledger state items.
 
txs_type txs
 

Private Member Functions

bool setup ()
 

Static Private Member Functions

static std::shared_ptr< STTx const > deserializeTx (SHAMapItem const &item)
 Deserialize a SHAMapItem containing a single STTx.
 
static std::pair< std::shared_ptr< STTx const >, std::shared_ptr< STObject const > > deserializeTxPlusMeta (SHAMapItem const &item)
 Deserialize a SHAMapItem containing STTx + STObject metadata.
 
static auto & getCounter () noexcept
 

Private Attributes

bool mImmutable
 
SHAMap txMap_
 
SHAMap stateMap_
 
std::mutex mutex_
 
Fees fees_
 
Rules rules_
 
LedgerHeader header_
 
beast::Journal j_
 

Detailed Description

Holds a ledger.

The ledger is composed of two SHAMaps. The state map holds all of the ledger entries such as account roots and order books. The tx map holds all of the transactions and associated metadata that made it into that particular ledger. Most of the operations on a ledger are concerned with the state map.

This can hold just the header, a partial set of data, or the entire set of data. It all depends on what is in the corresponding SHAMap entry. Various functions are provided to populate or depopulate the caches that the object holds references to.

Ledgers are constructed as either mutable or immutable.

1) If you are the sole owner of a mutable ledger, you can do whatever you want with no need for locks.

2) If you have an immutable ledger, you cannot ever change it, so no need for locks.

3) Mutable ledgers cannot be shared.

Note
Presented to clients as ReadView
Calls virtuals in the constructor, so marked as final

Definition at line 55 of file include/xrpl/ledger/Ledger.h.

Member Typedef Documentation

◆ digest_type

Definition at line 231 of file ReadView.h.

◆ tx_type

Definition at line 33 of file ReadView.h.

◆ key_type

using xrpl::ReadView::key_type = uint256
inherited

Definition at line 35 of file ReadView.h.

◆ mapped_type

Definition at line 37 of file ReadView.h.

Constructor & Destructor Documentation

◆ Ledger() [1/7]

xrpl::Ledger::Ledger ( Ledger const &  )
delete

◆ Ledger() [2/7]

xrpl::Ledger::Ledger ( Ledger &&  )
delete

◆ Ledger() [3/7]

xrpl::Ledger::Ledger ( create_genesis_t  ,
Rules const &  rules,
Fees const &  fees,
std::vector< uint256 > const &  amendments,
Family family 
)

Create the Genesis ledger.

The Genesis ledger contains a single account whose AccountID is generated with a Generator using the seed computed from the string "masterpassphrase" and ordinal zero.

The account has an XRP balance equal to the total amount of XRP in the system. No more XRP than the amount which starts in this account can ever exist, with amounts used to pay fees being destroyed.

Amendments specified are enabled in the genesis ledger

Definition at line 119 of file libxrpl/ledger/Ledger.cpp.

◆ Ledger() [4/7]

xrpl::Ledger::Ledger ( LedgerHeader const &  info,
Rules const &  rules,
Family family 
)

Definition at line 252 of file libxrpl/ledger/Ledger.cpp.

◆ Ledger() [5/7]

xrpl::Ledger::Ledger ( LedgerHeader const &  info,
bool &  loaded,
bool  acquire,
Rules const &  rules,
Fees const &  fees,
Family family,
beast::Journal  j 
)

Used for ledgers loaded from JSON files.

Parameters
acquireIf true, acquires the ledger if not found locally
Note
The fees parameter provides default values, but setup() may override them from the ledger state if fee-related SLEs exist.

Definition at line 179 of file libxrpl/ledger/Ledger.cpp.

◆ Ledger() [6/7]

xrpl::Ledger::Ledger ( Ledger const &  previous,
NetClock::time_point  closeTime 
)

Create a new ledger following a previous ledger.

The ledger will have the sequence number that follows previous, and have parentCloseTime == previous.closeTime.

Definition at line 225 of file libxrpl/ledger/Ledger.cpp.

◆ Ledger() [7/7]

xrpl::Ledger::Ledger ( std::uint32_t  ledgerSeq,
NetClock::time_point  closeTime,
Rules const &  rules,
Fees const &  fees,
Family family 
)

Definition at line 263 of file libxrpl/ledger/Ledger.cpp.

◆ ~Ledger()

xrpl::Ledger::~Ledger ( )
default

Member Function Documentation

◆ operator=() [1/2]

Ledger & xrpl::Ledger::operator= ( Ledger const &  )
delete

◆ operator=() [2/2]

Ledger & xrpl::Ledger::operator= ( Ledger &&  )
delete

◆ open()

bool xrpl::Ledger::open ( ) const
overridevirtual

Returns true if this reflects an open ledger.

Implements xrpl::ReadView.

Definition at line 131 of file include/xrpl/ledger/Ledger.h.

◆ header()

LedgerHeader const & xrpl::Ledger::header ( ) const
overridevirtual

Returns information about the ledger.

Implements xrpl::ReadView.

Definition at line 137 of file include/xrpl/ledger/Ledger.h.

◆ setLedgerInfo()

void xrpl::Ledger::setLedgerInfo ( LedgerHeader const &  info)

Definition at line 143 of file include/xrpl/ledger/Ledger.h.

◆ fees()

Fees const & xrpl::Ledger::fees ( ) const
overridevirtual

Returns the fees for the base ledger.

Implements xrpl::ReadView.

Definition at line 149 of file include/xrpl/ledger/Ledger.h.

◆ rules()

Rules const & xrpl::Ledger::rules ( ) const
overridevirtual

Returns the tx processing rules.

Implements xrpl::ReadView.

Definition at line 155 of file include/xrpl/ledger/Ledger.h.

◆ exists() [1/2]

bool xrpl::Ledger::exists ( Keylet const &  k) const
overridevirtual

Determine if a state item exists.

Note
This can be more efficient than calling read.
Returns
true if a SLE is associated with the specified key.

Implements xrpl::ReadView.

Definition at line 353 of file libxrpl/ledger/Ledger.cpp.

◆ exists() [2/2]

bool xrpl::Ledger::exists ( uint256 const &  key) const

Definition at line 360 of file libxrpl/ledger/Ledger.cpp.

◆ succ() [1/2]

std::optional< uint256 > xrpl::Ledger::succ ( uint256 const &  key,
std::optional< uint256 > const &  last = std::nullopt 
) const
override

Definition at line 366 of file libxrpl/ledger/Ledger.cpp.

◆ read()

std::shared_ptr< SLE const > xrpl::Ledger::read ( Keylet const &  k) const
overridevirtual

Return the state item associated with a key.

Effects: If the key exists, gives the caller ownership of the non-modifiable corresponding SLE.

Note
While the returned SLE is const from the perspective of the caller, it can be changed by other callers through raw operations.
Returns
nullptr if the key is not present or if the type does not match.

Implements xrpl::ReadView.

Definition at line 377 of file libxrpl/ledger/Ledger.cpp.

◆ slesBegin()

auto xrpl::Ledger::slesBegin ( ) const
overridevirtual

Implements xrpl::ReadView.

Definition at line 398 of file libxrpl/ledger/Ledger.cpp.

◆ slesEnd()

auto xrpl::Ledger::slesEnd ( ) const
overridevirtual

Implements xrpl::ReadView.

Definition at line 404 of file libxrpl/ledger/Ledger.cpp.

◆ slesUpperBound() [1/2]

auto xrpl::Ledger::slesUpperBound ( uint256 const &  key) const
override

Definition at line 410 of file libxrpl/ledger/Ledger.cpp.

◆ txsBegin()

auto xrpl::Ledger::txsBegin ( ) const
overridevirtual

Implements xrpl::ReadView.

Definition at line 416 of file libxrpl/ledger/Ledger.cpp.

◆ txsEnd()

auto xrpl::Ledger::txsEnd ( ) const
overridevirtual

Implements xrpl::ReadView.

Definition at line 422 of file libxrpl/ledger/Ledger.cpp.

◆ txExists() [1/2]

bool xrpl::Ledger::txExists ( uint256 const &  key) const
override

Definition at line 428 of file libxrpl/ledger/Ledger.cpp.

◆ txRead()

auto xrpl::Ledger::txRead ( key_type const &  key) const
overridevirtual

Read a transaction from the tx map.

If the view represents an open ledger, the metadata object will be empty.

Returns
A pair of nullptr if the key is not found in the tx map.

Implements xrpl::ReadView.

Definition at line 434 of file libxrpl/ledger/Ledger.cpp.

◆ digest()

auto xrpl::Ledger::digest ( key_type const &  key) const
overridevirtual

Return the digest associated with the key.

Returns
std::nullopt if the item does not exist.

Implements xrpl::DigestAwareReadView.

Definition at line 448 of file libxrpl/ledger/Ledger.cpp.

◆ rawErase() [1/2]

void xrpl::Ledger::rawErase ( std::shared_ptr< SLE > const &  sle)
overridevirtual

Delete an existing state item.

The SLE is provided so the implementation can calculate metadata.

Implements xrpl::RawView.

Definition at line 461 of file libxrpl/ledger/Ledger.cpp.

◆ rawInsert()

void xrpl::Ledger::rawInsert ( std::shared_ptr< SLE > const &  sle)
overridevirtual

Unconditionally insert a state item.

Requirements: The key must not already exist.

Effects:

The key is associated with the SLE.
Note
The key is taken from the SLE

Implements xrpl::RawView.

Definition at line 475 of file libxrpl/ledger/Ledger.cpp.

◆ rawErase() [2/2]

void xrpl::Ledger::rawErase ( uint256 const &  key)

Definition at line 468 of file libxrpl/ledger/Ledger.cpp.

◆ rawReplace()

void xrpl::Ledger::rawReplace ( std::shared_ptr< SLE > const &  sle)
overridevirtual

Unconditionally replace a state item.

Requirements:

The key must exist.

Effects:

The key is associated with the SLE.
Note
The key is taken from the SLE

Implements xrpl::RawView.

Definition at line 485 of file libxrpl/ledger/Ledger.cpp.

◆ rawDestroyXRP()

void xrpl::Ledger::rawDestroyXRP ( XRPAmount const &  fee)
overridevirtual

Destroy XRP.

This is used to pay for transaction fees.

Implements xrpl::RawView.

Definition at line 217 of file include/xrpl/ledger/Ledger.h.

◆ rawTxInsert() [1/2]

void xrpl::Ledger::rawTxInsert ( uint256 const &  key,
std::shared_ptr< Serializer const > const &  txn,
std::shared_ptr< Serializer const > const &  metaData 
)
override

Definition at line 495 of file libxrpl/ledger/Ledger.cpp.

◆ rawTxInsertWithHash()

uint256 xrpl::Ledger::rawTxInsertWithHash ( uint256 const &  key,
std::shared_ptr< Serializer const > const &  txn,
std::shared_ptr< Serializer const > const &  metaData 
)

Definition at line 511 of file libxrpl/ledger/Ledger.cpp.

◆ setValidated()

void xrpl::Ledger::setValidated ( ) const

Definition at line 248 of file include/xrpl/ledger/Ledger.h.

◆ setAccepted()

void xrpl::Ledger::setAccepted ( NetClock::time_point  closeTime,
NetClock::duration  closeResolution,
bool  correctCloseTime 
)

Definition at line 303 of file libxrpl/ledger/Ledger.cpp.

◆ setImmutable()

void xrpl::Ledger::setImmutable ( bool  rehash = true)

Definition at line 283 of file libxrpl/ledger/Ledger.cpp.

◆ isImmutable()

bool xrpl::Ledger::isImmutable ( ) const

Definition at line 263 of file include/xrpl/ledger/Ledger.h.

◆ setFull()

void xrpl::Ledger::setFull ( ) const

Definition at line 279 of file include/xrpl/ledger/Ledger.h.

◆ setTotalDrops()

void xrpl::Ledger::setTotalDrops ( std::uint64_t  totDrops)

Definition at line 288 of file include/xrpl/ledger/Ledger.h.

◆ stateMap() [1/2]

SHAMap const & xrpl::Ledger::stateMap ( ) const

Definition at line 294 of file include/xrpl/ledger/Ledger.h.

◆ stateMap() [2/2]

SHAMap & xrpl::Ledger::stateMap ( )

Definition at line 300 of file include/xrpl/ledger/Ledger.h.

◆ txMap() [1/2]

SHAMap const & xrpl::Ledger::txMap ( ) const

Definition at line 306 of file include/xrpl/ledger/Ledger.h.

◆ txMap() [2/2]

SHAMap & xrpl::Ledger::txMap ( )

Definition at line 312 of file include/xrpl/ledger/Ledger.h.

◆ addSLE()

bool xrpl::Ledger::addSLE ( SLE const &  sle)

Definition at line 318 of file libxrpl/ledger/Ledger.cpp.

◆ updateSkipList()

void xrpl::Ledger::updateSkipList ( )

Definition at line 796 of file libxrpl/ledger/Ledger.cpp.

◆ walkLedger()

bool xrpl::Ledger::walkLedger ( beast::Journal  j,
bool  parallel = false 
) const

Definition at line 729 of file libxrpl/ledger/Ledger.cpp.

◆ isSensible()

bool xrpl::Ledger::isSensible ( ) const

Definition at line 780 of file libxrpl/ledger/Ledger.cpp.

◆ invariants()

void xrpl::Ledger::invariants ( ) const

Definition at line 887 of file libxrpl/ledger/Ledger.cpp.

◆ unshare()

void xrpl::Ledger::unshare ( ) const

Definition at line 880 of file libxrpl/ledger/Ledger.cpp.

◆ negativeUNL()

hash_set< PublicKey > xrpl::Ledger::negativeUNL ( ) const

get Negative UNL validators' master public keys

Returns
the public keys

Definition at line 627 of file libxrpl/ledger/Ledger.cpp.

◆ validatorToDisable()

std::optional< PublicKey > xrpl::Ledger::validatorToDisable ( ) const

get the to be disabled validator's master public key if any

Returns
the public key if any

Definition at line 652 of file libxrpl/ledger/Ledger.cpp.

◆ validatorToReEnable()

std::optional< PublicKey > xrpl::Ledger::validatorToReEnable ( ) const

get the to be re-enabled validator's master public key if any

Returns
the public key if any

Definition at line 666 of file libxrpl/ledger/Ledger.cpp.

◆ updateNegativeUNL()

void xrpl::Ledger::updateNegativeUNL ( )

update the Negative UNL ledger component.

Note
must be called at and only at flag ledgers must be called before applying UNLModify Tx

Definition at line 680 of file libxrpl/ledger/Ledger.cpp.

◆ isFlagLedger()

bool xrpl::Ledger::isFlagLedger ( ) const

Returns true if the ledger is a flag ledger.

Definition at line 869 of file libxrpl/ledger/Ledger.cpp.

◆ isVotingLedger()

bool xrpl::Ledger::isVotingLedger ( ) const

Returns true if the ledger directly precedes a flag ledger.

Definition at line 874 of file libxrpl/ledger/Ledger.cpp.

◆ peek()

std::shared_ptr< SLE > xrpl::Ledger::peek ( Keylet const &  k) const

Definition at line 615 of file libxrpl/ledger/Ledger.cpp.

◆ setup()

bool xrpl::Ledger::setup ( )
private

Definition at line 531 of file libxrpl/ledger/Ledger.cpp.

◆ deserializeTx()

std::shared_ptr< STTx const > xrpl::Ledger::deserializeTx ( SHAMapItem const &  item)
staticprivate

Deserialize a SHAMapItem containing a single STTx.

Parameters
itemThe SHAMapItem to deserialize.
Returns
A shared pointer to the deserialized transaction.
Exceptions
Maythrow on deserialization error.

Definition at line 328 of file libxrpl/ledger/Ledger.cpp.

◆ deserializeTxPlusMeta()

std::pair< std::shared_ptr< STTx const >, std::shared_ptr< STObject const > > xrpl::Ledger::deserializeTxPlusMeta ( SHAMapItem const &  item)
staticprivate

Deserialize a SHAMapItem containing STTx + STObject metadata.

The SHAMapItem must contain two variable length serialization objects.

Parameters
itemThe SHAMapItem to deserialize.
Returns
A pair containing shared pointers to the deserialized transaction and metadata.
Exceptions
Maythrow on deserialization error.

Definition at line 335 of file libxrpl/ledger/Ledger.cpp.

◆ parentCloseTime()

NetClock::time_point xrpl::ReadView::parentCloseTime ( ) const
inherited

Returns the close time of the previous ledger.

Definition at line 90 of file ReadView.h.

◆ seq()

LedgerIndex xrpl::ReadView::seq ( ) const
inherited

Returns the sequence number of the base ledger.

Definition at line 97 of file ReadView.h.

◆ succ() [2/2]

virtual std::optional< key_type > xrpl::ReadView::succ ( key_type const &  key,
std::optional< key_type > const &  last = std::nullopt 
) const
pure virtualinherited

Return the key of the next state item.

This returns the key of the first state item whose key is greater than the specified key. If no such key is present, std::nullopt is returned.

If last is engaged, returns std::nullopt when the key returned would be outside the open interval (key, last).

Implemented in xrpl::detail::CachedViewImpl, xrpl::detail::ApplyViewBase, and xrpl::OpenView.

◆ balanceHook()

virtual STAmount xrpl::ReadView::balanceHook ( AccountID const &  account,
AccountID const &  issuer,
STAmount const &  amount 
) const
virtualinherited

Reimplemented in xrpl::PaymentSandbox.

Definition at line 155 of file ReadView.h.

◆ ownerCountHook()

virtual std::uint32_t xrpl::ReadView::ownerCountHook ( AccountID const &  account,
std::uint32_t  count 
) const
virtualinherited

Reimplemented in xrpl::PaymentSandbox.

Definition at line 166 of file ReadView.h.

◆ slesUpperBound() [2/2]

virtual std::unique_ptr< sles_type::iter_base > xrpl::ReadView::slesUpperBound ( key_type const &  key) const
pure virtualinherited

◆ txExists() [2/2]

virtual bool xrpl::ReadView::txExists ( key_type const &  key) const
pure virtualinherited

Returns true if a tx exists in the tx map.

A tx exists in the map if it is part of the base ledger, or if it is a newly inserted tx.

Implemented in xrpl::detail::CachedViewImpl, xrpl::detail::ApplyViewBase, and xrpl::OpenView.

◆ rawTxInsert() [2/2]

virtual void xrpl::TxsRawView::rawTxInsert ( ReadView::key_type const &  key,
std::shared_ptr< Serializer const > const &  txn,
std::shared_ptr< Serializer const > const &  metaData 
)
pure virtualinherited

Add a transaction to the tx map.

Closed ledgers must have metadata, while open ledgers omit metadata.

Implemented in xrpl::OpenView.

◆ getCounter()

static auto & xrpl::CountedObject< Ledger >::getCounter ( )
staticprivatenoexceptinherited

Definition at line 109 of file CountedObject.h.

Member Data Documentation

◆ mImmutable

bool xrpl::Ledger::mImmutable
private

Definition at line 408 of file include/xrpl/ledger/Ledger.h.

◆ txMap_

SHAMap xrpl::Ledger::txMap_
mutableprivate

Definition at line 411 of file include/xrpl/ledger/Ledger.h.

◆ stateMap_

SHAMap xrpl::Ledger::stateMap_
mutableprivate

Definition at line 414 of file include/xrpl/ledger/Ledger.h.

◆ mutex_

std::mutex xrpl::Ledger::mutex_
mutableprivate

Definition at line 417 of file include/xrpl/ledger/Ledger.h.

◆ fees_

Fees xrpl::Ledger::fees_
private

Definition at line 419 of file include/xrpl/ledger/Ledger.h.

◆ rules_

Rules xrpl::Ledger::rules_
private

Definition at line 420 of file include/xrpl/ledger/Ledger.h.

◆ header_

LedgerHeader xrpl::Ledger::header_
private

Definition at line 421 of file include/xrpl/ledger/Ledger.h.

◆ j_

beast::Journal xrpl::Ledger::j_
private

Definition at line 422 of file include/xrpl/ledger/Ledger.h.

◆ sles

sles_type xrpl::ReadView::sles
inherited

Iterable range of ledger state items.

Note
Visiting each state entry in the ledger can become quite expensive as the ledger grows.

Definition at line 219 of file ReadView.h.

◆ txs

txs_type xrpl::ReadView::txs
inherited

Definition at line 222 of file ReadView.h.