20 #ifndef RIPPLE_TX_APPLYSTEPS_H_INCLUDED
21 #define RIPPLE_TX_APPLYSTEPS_H_INCLUDED
23 #include <ripple/beast/utility/Journal.h>
24 #include <ripple/ledger/ApplyViewImpl.h>
62 template <
class Context>
103 template <
class Context>
221 PreflightResult
const& preflightResult,
223 OpenView
const& view);
279 doApply(PreclaimResult
const& preclaimResult, Application& app, OpenView& view);
ReadView const & view
From the input - the ledger view.
const beast::Journal j
From the input - the journal.
FeeUnit64 calculateBaseFee(ReadView const &view, STTx const &tx)
Compute only the expected base fee for a transaction.
PreflightResult & operator=(PreflightResult const &)=delete
Deleted copy assignment operator.
Structure describing the consequences to the account of applying a transaction if the transaction con...
TxConsequences & operator=(TxConsequences const &)=delete
Deleted copy assignment operator.
@ normal
Moves currency around, creates offers, etc.
ConsequenceCategory
Describes how the transaction affects subsequent transactions.
STTx const & tx
From the input - the transaction.
PreflightResult preflight(Application &app, Rules const &rules, STTx const &tx, ApplyFlags flags, beast::Journal j)
Gate a transaction based on static information.
const bool likelyToClaimFee
Success flag - whether the transaction is likely to claim a fee.
bool isTecClaimHardFail(TER ter, ApplyFlags flags)
Return true if the transaction can claim a fee (tec), and the ApplyFlags do not allow soft failures.
const TER ter
Intermediate transaction result.
const XRPAmount potentialSpend
Does NOT include the fee.
std::pair< TER, bool > doApply(PreclaimResult const &preclaimResult, Application &app, OpenView &view)
Apply a prechecked transaction to an OpenView.
Describes the results of the preflight check.
const Rules rules
From the input - the rules.
const NotTEC ter
Intermediate transaction result.
A generic endpoint for log messages.
TxConsequences(ConsequenceCategory const category_, XRPAmount const fee_, XRPAmount const spend_)
Constructor.
PreclaimResult preclaim(PreflightResult const &preflightResult, Application &app, OpenView const &view)
Gate a transaction based on static ledger information.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
PreflightResult(Context const &ctx_, NotTEC ter_)
Constructor.
PreclaimResult & operator=(PreclaimResult const &)=delete
Deleted copy assignment operator.
TxConsequences calculateConsequences(PreflightResult const &preflightResult)
Determine the XRP balance consequences if a transaction consumes the maximum XRP allowed.
FeeUnit< std::uint64_t > FeeUnit64
Describes the results of the preclaim check.
const XRPAmount fee
Transaction fee.
Rules controlling protocol behavior.
const ApplyFlags flags
From the input - the flags.
const ApplyFlags flags
From the input - the flags.
PreclaimResult(Context const &ctx_, TER ter_)
Constructor.
const ConsequenceCategory category
Describes how the transaction affects subsequent transactions.
@ blocker
Affects the ability of subsequent transactions to claim a fee.
STTx const & tx
From the input - the transaction.
const beast::Journal j
From the input - the journal.