docs: mark account incarnation allocation evidence

This commit is contained in:
Nicholas Dudfield
2026-07-13 10:13:14 +07:00
parent 2e9a56bf27
commit c5edcdbbcd
6 changed files with 14 additions and 0 deletions

View File

@@ -274,7 +274,9 @@ LEDGER_ENTRY(ltACCOUNT_ROOT, 0x0061, AccountRoot, account, ({
{sfImportSequence, soeOPTIONAL},
{sfGovernanceFlags, soeOPTIONAL},
{sfGovernanceMarks, soeOPTIONAL},
//@@start account-index-optional-accountroot-field
{sfAccountIndex, soeOPTIONAL},
//@@end account-index-optional-accountroot-field
{sfTouchCount, soeOPTIONAL},
{sfHookStateScale, soeOPTIONAL},
{sfCron, soeOPTIONAL},
@@ -434,7 +436,9 @@ LEDGER_ENTRY(ltFEE_SETTINGS, 0x0073, FeeSettings, fee, ({
{sfReserveBaseDrops, soeOPTIONAL},
{sfReserveIncrementDrops, soeOPTIONAL},
{sfXahauActivationLgrSeq, soeOPTIONAL},
//@@start account-count-optional-fees-field
{sfAccountCount, soeOPTIONAL},
//@@end account-count-optional-fees-field
{sfNetworkID, soeOPTIONAL},
{sfPreviousTxnID, soeOPTIONAL},
{sfPreviousTxnLgrSeq, soeOPTIONAL},

View File

@@ -477,8 +477,10 @@ DeleteAccount::doApply()
if (mSourceBalance > XRPAmount(0) && dst->isFlag(lsfPasswordSpent))
dst->clearFlag(lsfPasswordSpent);
//@@start account-delete-erases-account-root
view().update(dst);
view().erase(src);
//@@end account-delete-erases-account-root
return tesSUCCESS;
}

View File

@@ -199,6 +199,7 @@ GenesisMint::doApply()
bool const created = !sle;
//@@start genesis-mint-account-without-account-index
if (created)
{
// Create the account.
@@ -357,6 +358,7 @@ GenesisMint::doApply()
sle->setFieldAmount(sfBalance, amt);
}
//@@end genesis-mint-account-without-account-index
else if (amt > beast::zero)
{
// Credit the account

View File

@@ -1513,6 +1513,7 @@ Import::doApply()
sle->setFieldU32(sfSequence, seqno);
sle->setFieldU32(sfOwnerCount, 0);
//@@start import-account-index-allocation
if (sleFees && view().rules().enabled(featureXahauGenesis))
{
uint64_t accIdx = sleFees->isFieldPresent(sfAccountCount)
@@ -1521,6 +1522,7 @@ Import::doApply()
sle->setFieldU64(sfAccountIndex, accIdx);
sleFees->setFieldU64(sfAccountCount, accIdx + 1);
}
//@@end import-account-index-allocation
if (ctx_.tx.getSigningPubKey().empty() ||
calcAccountID(PublicKey(makeSlice(ctx_.tx.getSigningPubKey()))) !=

View File

@@ -253,6 +253,7 @@ Payment::preclaim(PreclaimContext const& ctx)
auto const k = keylet::account(dstAccountID);
auto const sleDst = ctx.view.read(k);
//@@start payment-account-index-allocation
if (!sleDst)
{
// Destination account does not exist.
@@ -379,6 +380,7 @@ Payment::doApply()
view().insert(sleDst);
}
//@@end payment-account-index-allocation
else
{
// Tell the engine that we are intending to change the destination

View File

@@ -318,6 +318,7 @@ Remit::doApply()
}
// if the destination doesn't exist, create it.
//@@start remit-account-index-allocation
bool const createDst = !sleDstAcc;
if (createDst)
{
@@ -356,6 +357,7 @@ Remit::doApply()
sleDstAcc->setFieldAmount(sfBalance, STAmount{XRPAmount{0}});
sb.insert(sleDstAcc);
}
//@@end remit-account-index-allocation
// if theres a minted uritoken the sender pays for that
if (ctx_.tx.isFieldPresent(sfMintURIToken))