rippled
Loading...
Searching...
No Matches
VaultClawback.h
1#pragma once
2
3#include <xrpld/app/tx/detail/Transactor.h>
4
5namespace xrpl {
6
8{
9public:
11
13 {
14 }
15
16 static NotTEC
17 preflight(PreflightContext const& ctx);
18
19 static TER
20 preclaim(PreclaimContext const& ctx);
21
22 TER
23 doApply() override;
24
25private:
28 std::shared_ptr<SLE> const& vault,
29 std::shared_ptr<SLE const> const& sleShareIssuance,
30 AccountID const& holder,
32};
33
34} // namespace xrpl
State information when applying a tx.
VaultClawback(ApplyContext &ctx)
static NotTEC preflight(PreflightContext const &ctx)
static constexpr ConsequencesFactoryType ConsequencesFactory
static TER preclaim(PreclaimContext const &ctx)
Expected< std::pair< STAmount, STAmount >, TER > assetsToClawback(std::shared_ptr< SLE > const &vault, std::shared_ptr< SLE const > const &sleShareIssuance, AccountID const &holder, STAmount const &clawbackAmount)
TER doApply() override
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:5
STAmount clawbackAmount(std::shared_ptr< SLE const > const &vault, std::optional< STAmount > const &maybeAmount, AccountID const &account)
State information when determining if a tx is likely to claim a fee.
Definition Transactor.h:53
State information when preflighting a tx.
Definition Transactor.h:15