chore: Set ColumnLimit to 120 in clang-format (#6288)

This change updates the ColumnLimit from 80 to 120, and applies clang-format to reformat the code.
This commit is contained in:
Ayaz Salikhov
2026-01-28 18:09:50 +00:00
committed by GitHub
parent 92046785d1
commit 5f638f5553
1016 changed files with 26918 additions and 66660 deletions

View File

@@ -27,8 +27,7 @@ AMM::initialTokens()
if (!env_.enabled(fixAMMv1_3))
{
auto const product = number(asset1_) * number(asset2_);
return (IOUAmount)(product.mantissa() >= 0 ? root2(product)
: root2(-product));
return (IOUAmount)(product.mantissa() >= 0 ? root2(product) : root2(-product));
}
return getLPTokensBalance();
}
@@ -59,10 +58,7 @@ AMM::AMM(
, msig_(ms)
, fee_(fee)
, ammAccount_(create(tfee, flags, seq, ter))
, lptIssue_(xrpl::ammLPTIssue(
asset1_.issue().currency,
asset2_.issue().currency,
ammAccount_))
, lptIssue_(xrpl::ammLPTIssue(asset1_.issue().currency, asset2_.issue().currency, ammAccount_))
, initialLPTokens_(initialTokens())
{
}
@@ -75,39 +71,12 @@ AMM::AMM(
ter const& ter,
bool log,
bool close)
: AMM(env,
account,
asset1,
asset2,
log,
0,
0,
std::nullopt,
std::nullopt,
std::nullopt,
ter,
close)
: AMM(env, account, asset1, asset2, log, 0, 0, std::nullopt, std::nullopt, std::nullopt, ter, close)
{
}
AMM::AMM(
Env& env,
Account const& account,
STAmount const& asset1,
STAmount const& asset2,
CreateArg const& arg)
: AMM(env,
account,
asset1,
asset2,
arg.log,
arg.tfee,
arg.fee,
arg.flags,
arg.seq,
arg.ms,
arg.err,
arg.close)
AMM::AMM(Env& env, Account const& account, STAmount const& asset1, STAmount const& asset2, CreateArg const& arg)
: AMM(env, account, asset1, asset2, arg.log, arg.tfee, arg.fee, arg.flags, arg.seq, arg.ms, arg.err, arg.close)
{
}
@@ -134,8 +103,7 @@ AMM::create(
if (!ter || env_.ter() == tesSUCCESS)
{
if (auto const amm = env_.current()->read(
keylet::amm(asset1_.issue(), asset2_.issue())))
if (auto const amm = env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
{
return amm->getAccountID(sfAccount);
}
@@ -163,52 +131,36 @@ AMM::ammRpcInfo(
if (issue1 || issue2)
{
if (issue1)
jv[jss::asset] =
STIssue(sfAsset, *issue1).getJson(JsonOptions::none);
jv[jss::asset] = STIssue(sfAsset, *issue1).getJson(JsonOptions::none);
if (issue2)
jv[jss::asset2] =
STIssue(sfAsset2, *issue2).getJson(JsonOptions::none);
jv[jss::asset2] = STIssue(sfAsset2, *issue2).getJson(JsonOptions::none);
}
else if (!ammAccount)
{
jv[jss::asset] =
STIssue(sfAsset, asset1_.issue()).getJson(JsonOptions::none);
jv[jss::asset2] =
STIssue(sfAsset2, asset2_.issue()).getJson(JsonOptions::none);
jv[jss::asset] = STIssue(sfAsset, asset1_.issue()).getJson(JsonOptions::none);
jv[jss::asset2] = STIssue(sfAsset2, asset2_.issue()).getJson(JsonOptions::none);
}
if (ammAccount)
jv[jss::amm_account] = to_string(*ammAccount);
}
auto jr =
(apiVersion == RPC::apiInvalidVersion
? env_.rpc("json", "amm_info", to_string(jv))
: env_.rpc(apiVersion, "json", "amm_info", to_string(jv)));
if (jr.isObject() && jr.isMember(jss::result) &&
jr[jss::result].isMember(jss::status))
(apiVersion == RPC::apiInvalidVersion ? env_.rpc("json", "amm_info", to_string(jv))
: env_.rpc(apiVersion, "json", "amm_info", to_string(jv)));
if (jr.isObject() && jr.isMember(jss::result) && jr[jss::result].isMember(jss::status))
return jr[jss::result];
return Json::nullValue;
}
std::tuple<STAmount, STAmount, STAmount>
AMM::balances(
Issue const& issue1,
Issue const& issue2,
std::optional<AccountID> const& account) const
AMM::balances(Issue const& issue1, Issue const& issue2, std::optional<AccountID> const& account) const
{
if (auto const amm =
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
if (auto const amm = env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
{
auto const ammAccountID = amm->getAccountID(sfAccount);
auto const [asset1Balance, asset2Balance] = ammPoolHolds(
*env_.current(),
ammAccountID,
issue1,
issue2,
FreezeHandling::fhIGNORE_FREEZE,
env_.journal);
auto const lptAMMBalance = account
? ammLPHolds(*env_.current(), *amm, *account, env_.journal)
: amm->getFieldAmount(sfLPTokenBalance);
auto const [asset1Balance, asset2Balance] =
ammPoolHolds(*env_.current(), ammAccountID, issue1, issue2, FreezeHandling::fhIGNORE_FREEZE, env_.journal);
auto const lptAMMBalance =
account ? ammLPHolds(*env_.current(), *amm, *account, env_.journal) : amm->getFieldAmount(sfLPTokenBalance);
return {asset1Balance, asset2Balance, lptAMMBalance};
}
return {STAmount{}, STAmount{}, STAmount{}};
@@ -221,25 +173,16 @@ AMM::expectBalances(
IOUAmount const& lpt,
std::optional<AccountID> const& account) const
{
auto const [asset1Balance, asset2Balance, lptAMMBalance] =
balances(asset1.issue(), asset2.issue(), account);
return asset1 == asset1Balance && asset2 == asset2Balance &&
lptAMMBalance == STAmount{lpt, lptIssue_};
auto const [asset1Balance, asset2Balance, lptAMMBalance] = balances(asset1.issue(), asset2.issue(), account);
return asset1 == asset1Balance && asset2 == asset2Balance && lptAMMBalance == STAmount{lpt, lptIssue_};
}
IOUAmount
AMM::getLPTokensBalance(std::optional<AccountID> const& account) const
{
if (account)
return accountHolds(
*env_.current(),
*account,
lptIssue_,
FreezeHandling::fhZERO_IF_FROZEN,
env_.journal)
.iou();
if (auto const amm =
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
return accountHolds(*env_.current(), *account, lptIssue_, FreezeHandling::fhZERO_IF_FROZEN, env_.journal).iou();
if (auto const amm = env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
return amm->getFieldAmount(sfLPTokenBalance).iou();
return IOUAmount{0};
}
@@ -247,58 +190,45 @@ AMM::getLPTokensBalance(std::optional<AccountID> const& account) const
bool
AMM::expectLPTokens(AccountID const& account, IOUAmount const& expTokens) const
{
if (auto const amm =
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
if (auto const amm = env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
{
auto const lptAMMBalance =
ammLPHolds(*env_.current(), *amm, account, env_.journal);
auto const lptAMMBalance = ammLPHolds(*env_.current(), *amm, account, env_.journal);
return lptAMMBalance == STAmount{expTokens, lptIssue_};
}
return false;
}
bool
AMM::expectAuctionSlot(
std::uint32_t fee,
std::optional<std::uint8_t> timeSlot,
IOUAmount expectedPrice) const
AMM::expectAuctionSlot(std::uint32_t fee, std::optional<std::uint8_t> timeSlot, IOUAmount expectedPrice) const
{
return expectAuctionSlot([&](std::uint32_t slotFee,
std::optional<std::uint8_t> slotInterval,
IOUAmount const& slotPrice,
auto const&) {
return slotFee == fee &&
// Auction slot might be expired, in which case slotInterval is
// 0
((!timeSlot && slotInterval == 0) || slotInterval == timeSlot) &&
slotPrice == expectedPrice;
});
return expectAuctionSlot(
[&](std::uint32_t slotFee, std::optional<std::uint8_t> slotInterval, IOUAmount const& slotPrice, auto const&) {
return slotFee == fee &&
// Auction slot might be expired, in which case slotInterval is
// 0
((!timeSlot && slotInterval == 0) || slotInterval == timeSlot) && slotPrice == expectedPrice;
});
}
bool
AMM::expectAuctionSlot(std::vector<AccountID> const& authAccounts) const
{
return expectAuctionSlot([&](std::uint32_t,
std::optional<std::uint8_t>,
IOUAmount const&,
STArray const& accounts) {
for (auto const& account : accounts)
{
if (std::find(
authAccounts.cbegin(),
authAccounts.cend(),
account.getAccountID(sfAccount)) == authAccounts.end())
return false;
}
return true;
});
return expectAuctionSlot(
[&](std::uint32_t, std::optional<std::uint8_t>, IOUAmount const&, STArray const& accounts) {
for (auto const& account : accounts)
{
if (std::find(authAccounts.cbegin(), authAccounts.cend(), account.getAccountID(sfAccount)) ==
authAccounts.end())
return false;
}
return true;
});
}
bool
AMM::expectTradingFee(std::uint16_t fee) const
{
auto const amm =
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue()));
auto const amm = env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue()));
return amm && (*amm)[sfTradingFee] == fee;
}
@@ -306,8 +236,7 @@ bool
AMM::ammExists() const
{
return env_.current()->read(keylet::account(ammAccount_)) != nullptr &&
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())) !=
nullptr;
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())) != nullptr;
}
bool
@@ -319,23 +248,18 @@ AMM::expectAmmRpcInfo(
std::optional<std::string> const& ledger_index,
std::optional<AccountID> const& ammAccount) const
{
auto const jv = ammRpcInfo(
account, ledger_index, std::nullopt, std::nullopt, ammAccount);
auto const jv = ammRpcInfo(account, ledger_index, std::nullopt, std::nullopt, ammAccount);
return expectAmmInfo(asset1, asset2, balance, jv);
}
bool
AMM::expectAmmInfo(
STAmount const& asset1,
STAmount const& asset2,
IOUAmount const& balance,
Json::Value const& jvres) const
AMM::expectAmmInfo(STAmount const& asset1, STAmount const& asset2, IOUAmount const& balance, Json::Value const& jvres)
const
{
if (!jvres.isMember(jss::amm))
return false;
auto const& jv = jvres[jss::amm];
if (!jv.isMember(jss::amount) || !jv.isMember(jss::amount2) ||
!jv.isMember(jss::lp_token))
if (!jv.isMember(jss::amount) || !jv.isMember(jss::amount2) || !jv.isMember(jss::lp_token))
return false;
STAmount asset1Info;
if (!amountFromJsonNoThrow(asset1Info, jv[jss::amount]))
@@ -349,28 +273,21 @@ AMM::expectAmmInfo(
// ammRpcInfo returns unordered assets
if (asset1Info.issue() != asset1.issue())
std::swap(asset1Info, asset2Info);
return asset1 == asset1Info && asset2 == asset2Info &&
lptBalance == STAmount{balance, lptIssue_};
return asset1 == asset1Info && asset2 == asset2Info && lptBalance == STAmount{balance, lptIssue_};
}
void
AMM::setTokens(
Json::Value& jv,
std::optional<std::pair<Issue, Issue>> const& assets)
AMM::setTokens(Json::Value& jv, std::optional<std::pair<Issue, Issue>> const& assets)
{
if (assets)
{
jv[jss::Asset] =
STIssue(sfAsset, assets->first).getJson(JsonOptions::none);
jv[jss::Asset2] =
STIssue(sfAsset, assets->second).getJson(JsonOptions::none);
jv[jss::Asset] = STIssue(sfAsset, assets->first).getJson(JsonOptions::none);
jv[jss::Asset2] = STIssue(sfAsset, assets->second).getJson(JsonOptions::none);
}
else
{
jv[jss::Asset] =
STIssue(sfAsset, asset1_.issue()).getJson(JsonOptions::none);
jv[jss::Asset2] =
STIssue(sfAsset, asset2_.issue()).getJson(JsonOptions::none);
jv[jss::Asset] = STIssue(sfAsset, asset1_.issue()).getJson(JsonOptions::none);
jv[jss::Asset2] = STIssue(sfAsset, asset2_.issue()).getJson(JsonOptions::none);
}
}
@@ -402,16 +319,7 @@ AMM::deposit(
std::optional<ter> const& ter)
{
return deposit(
account,
tokens,
asset1In,
std::nullopt,
std::nullopt,
flags,
std::nullopt,
std::nullopt,
std::nullopt,
ter);
account, tokens, asset1In, std::nullopt, std::nullopt, flags, std::nullopt, std::nullopt, std::nullopt, ter);
}
IOUAmount
@@ -425,16 +333,7 @@ AMM::deposit(
{
assert(!(asset2In && maxEP));
return deposit(
account,
std::nullopt,
asset1In,
asset2In,
maxEP,
flags,
std::nullopt,
std::nullopt,
std::nullopt,
ter);
account, std::nullopt, asset1In, asset2In, maxEP, flags, std::nullopt, std::nullopt, std::nullopt, ter);
}
IOUAmount
@@ -527,16 +426,7 @@ AMM::withdraw(
std::optional<std::uint32_t> const& flags,
std::optional<ter> const& ter)
{
return withdraw(
account,
tokens,
asset1Out,
std::nullopt,
std::nullopt,
flags,
std::nullopt,
std::nullopt,
ter);
return withdraw(account, tokens, asset1Out, std::nullopt, std::nullopt, flags, std::nullopt, std::nullopt, ter);
}
IOUAmount
@@ -548,16 +438,7 @@ AMM::withdraw(
std::optional<ter> const& ter)
{
assert(!(asset2Out && maxEP));
return withdraw(
account,
std::nullopt,
asset1Out,
asset2Out,
maxEP,
std::nullopt,
std::nullopt,
std::nullopt,
ter);
return withdraw(account, std::nullopt, asset1Out, asset2Out, maxEP, std::nullopt, std::nullopt, std::nullopt, ter);
}
IOUAmount
@@ -608,15 +489,7 @@ IOUAmount
AMM::withdraw(WithdrawArg const& arg)
{
return withdraw(
arg.account,
arg.tokens,
arg.asset1Out,
arg.asset2Out,
arg.maxEP,
arg.flags,
arg.assets,
arg.seq,
arg.err);
arg.account, arg.tokens, arg.asset1Out, arg.asset2Out, arg.maxEP, arg.flags, arg.assets, arg.seq, arg.err);
}
void
@@ -649,16 +522,12 @@ AMM::vote(VoteArg const& arg)
Json::Value
AMM::bid(BidArg const& arg)
{
if (auto const amm =
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
if (auto const amm = env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
{
assert(
!env_.current()->rules().enabled(fixInnerObjTemplate) ||
amm->isFieldPresent(sfAuctionSlot));
assert(!env_.current()->rules().enabled(fixInnerObjTemplate) || amm->isFieldPresent(sfAuctionSlot));
if (amm->isFieldPresent(sfAuctionSlot))
{
auto const& auctionSlot =
static_cast<STObject const&>(amm->peekAtField(sfAuctionSlot));
auto const& auctionSlot = static_cast<STObject const&>(amm->peekAtField(sfAuctionSlot));
lastPurchasePrice_ = auctionSlot[sfPrice].iou();
}
}
@@ -666,8 +535,7 @@ AMM::bid(BidArg const& arg)
bidMax_ = std::nullopt;
Json::Value jv;
jv[jss::Account] =
arg.account ? arg.account->human() : creatorAccount_.human();
jv[jss::Account] = arg.account ? arg.account->human() : creatorAccount_.human();
setTokens(jv, arg.assets);
auto getBid = [&](auto const& bid) {
if (std::holds_alternative<int>(bid))
@@ -711,10 +579,7 @@ AMM::bid(BidArg const& arg)
}
void
AMM::submit(
Json::Value const& jv,
std::optional<jtx::seq> const& seq,
std::optional<ter> const& ter)
AMM::submit(Json::Value const& jv, std::optional<jtx::seq> const& seq, std::optional<ter> const& ter)
{
if (log_)
std::cout << jv.toStyledString();
@@ -744,16 +609,12 @@ AMM::submit(
bool
AMM::expectAuctionSlot(auto&& cb) const
{
if (auto const amm =
env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
if (auto const amm = env_.current()->read(keylet::amm(asset1_.issue(), asset2_.issue())))
{
assert(
!env_.current()->rules().enabled(fixInnerObjTemplate) ||
amm->isFieldPresent(sfAuctionSlot));
assert(!env_.current()->rules().enabled(fixInnerObjTemplate) || amm->isFieldPresent(sfAuctionSlot));
if (amm->isFieldPresent(sfAuctionSlot))
{
auto const& auctionSlot =
static_cast<STObject const&>(amm->peekAtField(sfAuctionSlot));
auto const& auctionSlot = static_cast<STObject const&>(amm->peekAtField(sfAuctionSlot));
if (auctionSlot.isFieldPresent(sfAccount))
{
// This could fail in pre-fixInnerObjTemplate tests
@@ -761,12 +622,10 @@ AMM::expectAuctionSlot(auto&& cb) const
// the failure scenarios. Access as optional
// to avoid the failure.
auto const slotFee = auctionSlot[~sfDiscountedFee].value_or(0);
auto const slotInterval = ammAuctionTimeSlot(
env_.app().timeKeeper().now().time_since_epoch().count(),
auctionSlot);
auto const slotInterval =
ammAuctionTimeSlot(env_.app().timeKeeper().now().time_since_epoch().count(), auctionSlot);
auto const slotPrice = auctionSlot[sfPrice].iou();
auto const authAccounts =
auctionSlot.getFieldArray(sfAuthAccounts);
auto const authAccounts = auctionSlot.getFieldArray(sfAuthAccounts);
return cb(slotFee, slotInterval, slotPrice, authAccounts);
}
}