|
rippled
|
AMMBid implements AMM bid Transactor. More...
#include <AMMBid.h>


Public Types | |
| enum | ConsequencesFactoryType { Normal , Blocker , Custom } |
Public Member Functions | |
| AMMBid (ApplyContext &ctx) | |
| TER | doApply () override |
| ApplyResult | operator() () |
| Process the transaction. More... | |
| ApplyView & | view () |
| ApplyView const & | view () const |
Static Public Member Functions | |
| static NotTEC | preflight (PreflightContext const &ctx) |
| static TER | preclaim (PreclaimContext const &ctx) |
| static NotTEC | checkSeqProxy (ReadView const &view, STTx const &tx, beast::Journal j) |
| static NotTEC | checkPriorTxAndLastLedger (PreclaimContext const &ctx) |
| static TER | checkFee (PreclaimContext const &ctx, XRPAmount baseFee) |
| static NotTEC | checkSign (PreclaimContext const &ctx) |
| static NotTEC | checkBatchSign (PreclaimContext const &ctx) |
| static XRPAmount | calculateBaseFee (ReadView const &view, STTx const &tx) |
| static TER | checkPermission (ReadView const &view, STTx const &tx) |
| static TER | ticketDelete (ApplyView &view, AccountID const &account, uint256 const &ticketIndex, beast::Journal j) |
Static Public Attributes | |
| static constexpr ConsequencesFactoryType | ConsequencesFactory {Normal} |
Protected Member Functions | |
| TER | apply () |
| virtual void | preCompute () |
Static Protected Member Functions | |
| static XRPAmount | minimumFee (Application &app, XRPAmount baseFee, Fees const &fees, ApplyFlags flags) |
| Compute the minimum fee required to process a transaction with a given baseFee based on the current server load. More... | |
Protected Attributes | |
| ApplyContext & | ctx_ |
| beast::Journal const | j_ |
| AccountID const | account_ |
| XRPAmount | mPriorBalance |
| XRPAmount | mSourceBalance |
Private Member Functions | |
| std::pair< TER, XRPAmount > | reset (XRPAmount fee) |
| Reset the context, discarding any changes made and adjust the fee. More... | |
| TER | consumeSeqProxy (SLE::pointer const &sleAccount) |
| TER | payFee () |
| void | trapTransaction (uint256) const |
Static Private Member Functions | |
| static NotTEC | checkSingleSign (AccountID const &idSigner, AccountID const &idAccount, std::shared_ptr< SLE const > sleAccount, Rules const &rules, beast::Journal j) |
| static NotTEC | checkMultiSign (ReadView const &view, AccountID const &idAccount, STArray const &txSigners, ApplyFlags const &flags, beast::Journal j) |
AMMBid implements AMM bid Transactor.
This is a mechanism for an AMM instance to auction-off the trading advantages to users (arbitrageurs) at a discounted TradingFee for a 24 hour slot. Any account that owns corresponding LPTokens can bid for the auction slot of that AMM instance. Part of the proceeds from the auction, i.e. LPTokens are refunded to the current slot-holder computed on a pro rata basis. Remaining part of the proceeds - in the units of LPTokens- is burnt, thus effectively increasing the LPs shares. Total slot time of 24 hours is divided into 20 equal intervals. The auction slot can be in any of the following states at any time:
|
inherited |
| Enumerator | |
|---|---|
| Normal | |
| Blocker | |
| Custom | |
Definition at line 153 of file Transactor.h.
|
explicit |
|
static |
Definition at line 34 of file AMMBid.cpp.
|
static |
Definition at line 87 of file AMMBid.cpp.
|
overridevirtual |
Implements ripple::Transactor.
Definition at line 358 of file AMMBid.cpp.
|
inherited |
Process the transaction.
Definition at line 1049 of file Transactor.cpp.
|
inherited |
Definition at line 159 of file Transactor.h.
|
inherited |
Definition at line 165 of file Transactor.h.
|
staticinherited |
Definition at line 352 of file Transactor.cpp.
|
staticinherited |
Definition at line 424 of file Transactor.cpp.
|
staticinherited |
Definition at line 252 of file Transactor.cpp.
|
staticinherited |
Definition at line 572 of file Transactor.cpp.
|
staticinherited |
Definition at line 624 of file Transactor.cpp.
|
staticinherited |
Definition at line 224 of file Transactor.cpp.
Definition at line 208 of file Transactor.cpp.
|
staticinherited |
Definition at line 473 of file Transactor.cpp.
|
protectedinherited |
Definition at line 535 of file Transactor.cpp.
|
protectedvirtualinherited |
Reimplemented in ripple::Change, ripple::CreateOffer, and ripple::SetSignerList.
Definition at line 527 of file Transactor.cpp.
|
staticprotectedinherited |
Compute the minimum fee required to process a transaction with a given baseFee based on the current server load.
| app | The application hosting the server |
| baseFee | The base fee of a candidate transaction |
| fees | Fee settings from the current ledger |
| flags | Transaction processing fees |
Definition at line 242 of file Transactor.cpp.
Reset the context, discarding any changes made and adjust the fee.
| fee | The transaction fee to be charged. |
Definition at line 987 of file Transactor.cpp.
|
privateinherited |
Definition at line 454 of file Transactor.cpp.
|
privateinherited |
Definition at line 317 of file Transactor.cpp.
|
staticprivateinherited |
Definition at line 671 of file Transactor.cpp.
|
staticprivateinherited |
Definition at line 732 of file Transactor.cpp.
|
privateinherited |
Definition at line 1042 of file Transactor.cpp.
|
staticconstexpr |
|
protectedinherited |
Definition at line 140 of file Transactor.h.
|
protectedinherited |
Definition at line 141 of file Transactor.h.
|
protectedinherited |
Definition at line 143 of file Transactor.h.
|
protectedinherited |
Definition at line 144 of file Transactor.h.
|
protectedinherited |
Definition at line 145 of file Transactor.h.