xrpld
Loading...
Searching...
No Matches
PathfinderUtils.h
1#pragma once
2
3#include <xrpl/protocol/STAmount.h>
4
5namespace xrpl {
6
7inline STAmount
9{
10 return amt.asset().visit(
11 [&](Issue const& issue) -> STAmount {
12 if (issue.native())
13 return kInitialXrp;
15 },
16 [&](MPTIssue const&) { return STAmount(amt.asset(), kMaxMpTokenAmount, 0); });
17}
18
19inline STAmount
20convertAmount(STAmount const& amt, bool all)
21{
22 if (!all)
23 return amt;
24
25 return largestAmount(amt);
26};
27
28inline bool
30{
31 return a == largestAmount(a);
32}
33
34} // namespace xrpl
constexpr auto visit(Visitors &&... visitors) const -> decltype(auto)
Definition Asset.h:107
A currency issued by an account.
Definition Issue.h:13
bool native() const
Definition Issue.cpp:54
Asset const & asset() const
Definition STAmount.h:478
static constexpr std::uint64_t kMaxValue
Definition STAmount.h:53
static constexpr int kMaxOffset
Definition STAmount.h:48
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:5
STAmount convertAmount(STAmount const &amt, bool all)
STAmount largestAmount(STAmount const &amt)
bool convertAllCheck(STAmount const &a)
constexpr std::uint64_t kMaxMpTokenAmount
The maximum amount of MPTokenIssuance.
Definition Protocol.h:238
constexpr XRPAmount kInitialXrp
Configure the native currency.