pass by reference

This commit is contained in:
Mayukha Vadari
2026-06-25 22:16:29 -05:00
parent 1a2a7e93d1
commit 88ae2bb91c
14 changed files with 35 additions and 28 deletions

View File

@@ -201,7 +201,7 @@ canWithdraw(ReadView const& view, STTx const& tx);
[[nodiscard]] TER
doWithdraw(
ApplyViewContext ctx,
ApplyViewContext& ctx,
AccountID const& senderAcct,
AccountID const& dstAcct,
AccountID const& sourceAcct,

View File

@@ -71,7 +71,7 @@ canAddHolding(ReadView const& view, MPTIssue const& mptIssue);
[[nodiscard]] TER
authorizeMPToken(
ApplyViewContext ctx,
ApplyViewContext& ctx,
XRPAmount const& priorBalance,
MPTID const& mptIssuanceID,
AccountID const& account,
@@ -102,7 +102,7 @@ requireAuth(
*/
[[nodiscard]] TER
enforceMPTokenAuthorization(
ApplyViewContext ctx,
ApplyViewContext& ctx,
MPTID const& mptIssuanceID,
AccountID const& account,
XRPAmount const& priorBalance,
@@ -188,7 +188,7 @@ canMPTTradeAndTransfer(
[[nodiscard]] TER
addEmptyHolding(
ApplyViewContext ctx,
ApplyViewContext& ctx,
AccountID const& accountID,
XRPAmount priorBalance,
MPTIssue const& mptIssue,
@@ -196,7 +196,7 @@ addEmptyHolding(
[[nodiscard]] TER
removeEmptyHolding(
ApplyViewContext ctx,
ApplyViewContext& ctx,
AccountID const& accountID,
MPTIssue const& mptIssue,
beast::Journal journal);

View File

@@ -229,7 +229,7 @@ canTransfer(ReadView const& view, Issue const& issue, AccountID const& from, Acc
/// canAddHolding() in preflight with the same View and Asset
[[nodiscard]] TER
addEmptyHolding(
ApplyViewContext ctx,
ApplyViewContext& ctx,
AccountID const& accountID,
XRPAmount priorBalance,
Issue const& issue,
@@ -237,7 +237,7 @@ addEmptyHolding(
[[nodiscard]] TER
removeEmptyHolding(
ApplyViewContext ctx,
ApplyViewContext& ctx,
AccountID const& accountID,
Issue const& issue,
beast::Journal journal);

View File

@@ -230,7 +230,7 @@ canAddHolding(ReadView const& view, Asset const& asset);
[[nodiscard]] TER
addEmptyHolding(
ApplyViewContext ctx,
ApplyViewContext& ctx,
AccountID const& accountID,
XRPAmount priorBalance,
Asset const& asset,
@@ -238,7 +238,7 @@ addEmptyHolding(
[[nodiscard]] TER
removeEmptyHolding(
ApplyViewContext ctx,
ApplyViewContext& ctx,
AccountID const& accountID,
Asset const& asset,
beast::Journal journal);

View File

@@ -112,10 +112,10 @@ public:
TER
checkInvariants(TER const result, XRPAmount const fee);
inline ApplyViewContext
inline ApplyViewContext&
getApplyViewContext()
{
return {view(), tx};
return viewCtx_;
}
private:
@@ -132,6 +132,11 @@ private:
// The ID of the batch transaction we are executing under, if seated.
std::optional<uint256 const> parentBatchId_;
// A temporary helper object that passes around ApplyContext info
// Only necessary (for now) because the ApplyContext can't be passed into helpers due to
// levelization
ApplyViewContext viewCtx_;
};
} // namespace xrpl