|
rippled
|
Keylet computation funclets. More...
Classes | |
| struct | book_t |
| The beginning of an order book. More... | |
| struct | next_t |
| The directory for the next lower quality. More... | |
| struct | ticket_t |
| A ticket belonging to an account. More... | |
Functions | |
| Keylet | account (AccountID const &id) noexcept |
| AccountID root. More... | |
| Keylet | child (uint256 const &key) noexcept |
| Any item that can be in an owner dir. More... | |
| Keylet const & | skip () noexcept |
| The index of the "short" skip list. More... | |
| Keylet | skip (LedgerIndex ledger) noexcept |
| The index of the long skip for a particular ledger range. More... | |
| Keylet const & | amendments () noexcept |
| The index of the amendment table. More... | |
| Keylet const & | fees () noexcept |
| The (fixed) index of the object containing the ledger fees. More... | |
| Keylet const & | negativeUNL () noexcept |
| The (fixed) index of the object containing the ledger negativeUNL. More... | |
| Keylet | quality (Keylet const &k, std::uint64_t q) noexcept |
| The initial directory page for a specific quality. More... | |
| static Keylet | signers (AccountID const &account, std::uint32_t page) noexcept |
| Keylet | signers (AccountID const &account) noexcept |
| A SignerList. More... | |
| Keylet | unchecked (uint256 const &key) noexcept |
| Any ledger entry. More... | |
| Keylet | ownerDir (AccountID const &id) noexcept |
| The root page of an account's directory. More... | |
| Keylet | escrow (AccountID const &src, std::uint32_t seq) noexcept |
| An escrow entry. More... | |
| Keylet | payChan (AccountID const &src, AccountID const &dst, std::uint32_t seq) noexcept |
| A PaymentChannel. More... | |
| Keylet | nftoffer (AccountID const &owner, std::uint32_t seq) |
| An offer from an account to buy or sell an NFT. More... | |
| Keylet | nft_buys (uint256 const &id) noexcept |
| The directory of buy offers for the specified NFT. More... | |
| Keylet | nft_sells (uint256 const &id) noexcept |
| The directory of sell offers for the specified NFT. More... | |
| Keylet | amm (Issue const &issue1, Issue const &issue2) noexcept |
| AMM entry. More... | |
| Keylet | amm (uint256 const &id) noexcept |
| Keylet | bridge (STXChainBridge const &bridge, STXChainBridge::ChainType chainType) |
| Keylet | xChainClaimID (STXChainBridge const &bridge, std::uint64_t seq) |
| Keylet | xChainCreateAccountClaimID (STXChainBridge const &bridge, std::uint64_t seq) |
| Keylet | did (AccountID const &account) noexcept |
| Keylet | oracle (AccountID const &account, std::uint32_t const &documentID) noexcept |
| Keylet | nftoffer (uint256 const &offer) |
Variables | |
| static const book_t | book {} |
| static const next_t | next {} |
| static const ticket_t | ticket {} |
Keylet computation funclets.
Entries in the ledger are located using 256-bit locators. The locators are calculated using a wide range of parameters specific to the entry whose locator we are calculating (e.g. an account's locator is derived from the account's address, whereas the locator for an offer is derived from the account and the offer sequence.)
To enhance type safety during lookup and make the code more robust, we use keylets, which contain not only the locator of the object but also the type of the object being referenced.
These functions each return a type-specific keylet.
AccountID root.
Definition at line 143 of file Indexes.cpp.
Any item that can be in an owner dir.
Definition at line 149 of file Indexes.cpp.
|
noexcept |
The index of the "short" skip list.
The "short" skip list is a node (at a fixed index) that holds the hashes of ledgers since the last flag ledger. It will contain, at most, 256 hashes.
Definition at line 155 of file Indexes.cpp.
|
noexcept |
The index of the long skip for a particular ledger range.
The "long" skip list is a node that holds the hashes of (up to) 256 flag ledgers.
It can be used to efficiently skip back to any ledger using only two hops: the first hop gets the "long" skip list for the ledger it wants to retrieve and uses it to get the hash of the flag ledger whose short skip list will contain the hash of the requested ledger.
Definition at line 163 of file Indexes.cpp.
|
noexcept |
The index of the amendment table.
Definition at line 173 of file Indexes.cpp.
|
noexcept |
The (fixed) index of the object containing the ledger fees.
Definition at line 181 of file Indexes.cpp.
|
noexcept |
The (fixed) index of the object containing the ledger negativeUNL.
Definition at line 189 of file Indexes.cpp.
|
noexcept |
The index of a trust line for a given currency.
Note that a trustline is shared between two accounts (commonly referred to as the issuer and the holder); if Alice sets up a trust line to Bob for BTC, and Bob trusts Alice for BTC, here is only a single BTC trust line between them.
Definition at line 203 of file Indexes.cpp.
|
noexcept |
An offer from an account.
Definition at line 232 of file Indexes.cpp.
|
noexcept |
The initial directory page for a specific quality.
Definition at line 238 of file Indexes.cpp.
|
staticnoexcept |
Definition at line 278 of file Indexes.cpp.
A SignerList.
Definition at line 285 of file Indexes.cpp.
|
noexcept |
A Check.
Definition at line 291 of file Indexes.cpp.
|
noexcept |
Definition at line 297 of file Indexes.cpp.
Any ledger entry.
Definition at line 307 of file Indexes.cpp.
The root page of an account's directory.
Definition at line 313 of file Indexes.cpp.
|
noexcept |
A page in a directory.
Definition at line 319 of file Indexes.cpp.
|
noexcept |
An escrow entry.
Definition at line 328 of file Indexes.cpp.
|
noexcept |
A PaymentChannel.
Definition at line 334 of file Indexes.cpp.
NFT page keylets.
Unlike objects whose ledger identifiers are produced by hashing data, NFT page identifiers are composite identifiers, consisting of the owner's 160-bit AccountID, followed by a 96-bit value that determines which NFT tokens are candidates for that page. A keylet for the owner's first possible NFT page.
Definition at line 342 of file Indexes.cpp.
A keylet for the owner's last possible NFT page.
Definition at line 350 of file Indexes.cpp.
Definition at line 358 of file Indexes.cpp.
| Keylet ripple::keylet::nftoffer | ( | AccountID const & | owner, |
| std::uint32_t | seq | ||
| ) |
An offer from an account to buy or sell an NFT.
Definition at line 365 of file Indexes.cpp.
The directory of buy offers for the specified NFT.
Definition at line 372 of file Indexes.cpp.
The directory of sell offers for the specified NFT.
Definition at line 378 of file Indexes.cpp.
AMM entry.
Definition at line 384 of file Indexes.cpp.
Definition at line 396 of file Indexes.cpp.
| Keylet ripple::keylet::bridge | ( | STXChainBridge const & | bridge, |
| STXChainBridge::ChainType | chainType | ||
| ) |
Definition at line 402 of file Indexes.cpp.
| Keylet ripple::keylet::xChainClaimID | ( | STXChainBridge const & | bridge, |
| std::uint64_t | seq | ||
| ) |
Definition at line 415 of file Indexes.cpp.
| Keylet ripple::keylet::xChainCreateAccountClaimID | ( | STXChainBridge const & | bridge, |
| std::uint64_t | seq | ||
| ) |
Definition at line 429 of file Indexes.cpp.
Definition at line 443 of file Indexes.cpp.
|
noexcept |
Definition at line 449 of file Indexes.cpp.
|
noexcept |
1.8.17