20 #include <ripple/protocol/Indexes.h>
21 #include <ripple/protocol/SeqProxy.h>
22 #include <ripple/protocol/digest.h>
23 #include <boost/endian/conversion.hpp>
71 template <
class... Args>
75 return sha512Half(safe_cast<std::uint16_t>(space), args...);
100 "0000000000000000000000000000000000000000000000010000000000000000");
101 return uBase + nextq;
Keylet ownerDir(AccountID const &id) noexcept
The root page of an account's directory.
@ ltTICKET
A ledger object which describes a ticket.
A pair of SHAMap key and LedgerEntryType.
Keylet const & amendments() noexcept
The index of the amendment table.
@ ltANY
A special type, matching any ledger entry type.
bool isConsistent(Book const &book)
@ ltLEDGER_HASHES
A ledger object that contains a list of ledger hashes.
uint256 getBookBase(Book const &book)
@ ltSIGNER_LIST
A ledger object which contains a signer list for an account.
Keylet offer(AccountID const &id, std::uint32_t seq) noexcept
An offer from an account.
Keylet const & skip() noexcept
The index of the "short" skip list.
Keylet child(uint256 const &key) noexcept
Any item that can be in an owner dir.
@ ltCHECK
A ledger object which describes a check.
uint256 getQualityNext(uint256 const &uBase)
@ ltFEE_SETTINGS
The ledger object which lists the network's fee settings.
LedgerNameSpace
Type-specific prefix for calculating ledger indices.
@ ltCHILD
A special type, matching any ledger type except directory nodes.
uint256 getTicketIndex(AccountID const &account, std::uint32_t ticketSeq)
Keylet operator()(Keylet const &k) const
@ ltDIR_NODE
A ledger object which contains a list of object identifiers.
constexpr bool isTicket() const
Integers of any length that is a multiple of 32-bits.
@ ltAMENDMENTS
The ledger object which lists details about amendments on the network.
static uint256 indexHash(LedgerNameSpace space, Args const &... args)
Keylet escrow(AccountID const &src, std::uint32_t seq) noexcept
An escrow entry.
@ ltOFFER
A ledger object which describes an offer on the DEX.
Keylet account(AccountID const &id) noexcept
AccountID root.
@ ltESCROW
A ledger object describing a single escrow.
Keylet page(uint256 const &key, std::uint64_t index) noexcept
A page in a directory.
@ ltDEPOSIT_PREAUTH
A ledger object which describes a deposit preauthorization.
Keylet operator()(AccountID const &id, std::uint32_t ticketSeq) const
Keylet line(AccountID const &id0, AccountID const &id1, Currency const ¤cy) noexcept
The index of a trust line for a given currency.
Keylet unchecked(uint256 const &key) noexcept
Any ledger entry.
constexpr std::uint32_t value() const
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Keylet operator()(Book const &b) const
@ ltNEGATIVE_UNL
The ledger object which tracks the current negative UNL state.
Keylet payChan(AccountID const &src, AccountID const &dst, std::uint32_t seq) noexcept
A PaymentChannel.
@ ltACCOUNT_ROOT
A ledger object which describes an account.
sha512_half_hasher::result_type sha512Half(Args const &... args)
Returns the SHA512-Half of a series of objects.
A type that represents either a sequence value or a ticket value.
Keylet const & fees() noexcept
The (fixed) index of the object containing the ledger fees.
@ ltRIPPLE_STATE
A ledger object which describes a bidirectional trust line.
Keylet quality(Keylet const &k, std::uint64_t q) noexcept
The initial directory page for a specific quality.
static Keylet signers(AccountID const &account, std::uint32_t page) noexcept
Keylet const & negativeUNL() noexcept
The (fixed) index of the object containing the ledger negativeUNL.
Keylet check(AccountID const &id, std::uint32_t seq) noexcept
A Check.
Keylet depositPreauth(AccountID const &owner, AccountID const &preauthorized) noexcept
A DepositPreauth.
std::uint64_t getQuality(uint256 const &uBase)
@ ltPAYCHAN
A ledger object describing a single unidirectional XRP payment channel.