20 #include <ripple/protocol/Indexes.h>
21 #include <ripple/protocol/SeqProxy.h>
22 #include <ripple/protocol/digest.h>
23 #include <ripple/protocol/nftPageMask.h>
74 template <
class... Args>
78 return sha512Half(safe_cast<std::uint16_t>(space), args...);
102 static constexpr
uint256 nextq(
103 "0000000000000000000000000000000000000000000000010000000000000000");
104 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 nftoffer(AccountID const &owner, std::uint32_t seq)
An offer from an account to buy or sell an NFT.
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
constexpr static std::size_t size()
@ ltDIR_NODE
A ledger object which contains a list of object identifiers.
constexpr uint256 pageMask(std::string_view("0000000000000000000000000000000000000000ffffffffffffffffffffffff"))
constexpr bool isTicket() const
@ 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.
Keylet nftpage_min(AccountID const &owner)
NFT page keylets.
@ ltOFFER
A ledger object which describes an offer on the DEX.
Keylet nftpage(Keylet const &k, uint256 const &token)
Keylet account(AccountID const &id) noexcept
AccountID root.
@ ltESCROW
A ledger object describing a single escrow.
@ ltNFTOKEN_OFFER
A ledger object which identifies an offer to buy or sell an NFT.
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 nft_sells(uint256 const &id) noexcept
The directory of sell offers for the specified NFT.
Keylet nftpage_max(AccountID const &owner)
A keylet for the owner's last possible NFT page.
Keylet operator()(AccountID const &id, std::uint32_t ticketSeq) const
Keylet nft_buys(uint256 const &id) noexcept
The directory of buy offers for the specified NFT.
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
@ ltNFTOKEN_PAGE
A ledger object which contains a list of NFTs.
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.