@ethereumjs/statemanager / StatefulBinaryTreeStateManager
Defined in: statefulBinaryTreeStateManager.ts:72
@ethereumjs/common!StateManagerInterface backed by an EIP-7864 @ethereumjs/binarytree!BinaryTree.
Supports execution witnesses, binary-tree access lists, and checkpointing for VM use.
new StatefulBinaryTreeStateManager(
opts):StatefulBinaryTreeStateManager
Defined in: statefulBinaryTreeStateManager.ts:102
StatefulBinaryTreeStateManagerOpts
StatefulBinaryTreeStateManager
hashFunction: (
input) =>Uint8Array
Defined in: statefulBinaryTreeStateManager.ts:80
Uint8Array
Uint8Array
originalStorageCache:
OriginalStorageCache
Defined in: statefulBinaryTreeStateManager.ts:79
StateManagerInterface.originalStorageCache
preStateRoot:
Uint8Array
Defined in: statefulBinaryTreeStateManager.ts:78
get tree():
BinaryTree
Defined in: statefulBinaryTreeStateManager.ts:733
The underlying binary tree holding the state, as exposed through
BinaryTreeStateManagerInterface for interface-based consumers
(e.g. execution witness generation in @ethereumjs/evm).
BinaryTreeStateManagerInterface.tree
checkChunkWitnessPresent(
_address,_codeOffset):Promise<boolean>
Defined in: statefulBinaryTreeStateManager.ts:770
number
Promise<boolean>
StateManagerInterface.checkChunkWitnessPresent
checkpoint():
Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:464
Promise<void>
StateManagerInterface.checkpoint
clearCaches():
void
Defined in: statefulBinaryTreeStateManager.ts:764
void
StateManagerInterface.clearCaches
clearStorage(
address):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:460
Promise<void>
StateManagerInterface.clearStorage
commit():
Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:469
Promise<void>
StateManagerInterface.commit
consumeBAL(
bal,expectedStateRoot?):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:746
Apply an EIP-7928 BAL onto this state. See consumeBAL.
BALJSONBlockAccessList
Uint8Array<ArrayBufferLike>
Promise<void>
Experimental (Amsterdam): may change on patch releases.
StateManagerInterface.consumeBAL
deleteAccount(
address):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:259
Deletes an account from state under the provided address.
Address of the account which should be deleted
Promise<void>
StateManagerInterface.deleteAccount
optionaldumpStorage(_address):Promise<StorageDump>
Defined in: statefulBinaryTreeStateManager.ts:758
Promise<StorageDump>
StateManagerInterface.dumpStorage
optionaldumpStorageRange(_address,_startKey,_limit):Promise<StorageRange>
Defined in: statefulBinaryTreeStateManager.ts:761
bigint
number
Promise<StorageRange>
StateManagerInterface.dumpStorageRange
flush():
Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:495
Promise<void>
generateCanonicalGenesis(
genesisState):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:773
Promise<void>
StateManagerInterface.generateCanonicalGenesis
getAccount(
address):Promise<Account|undefined>
Defined in: statefulBinaryTreeStateManager.ts:132
Gets the account associated with address or undefined if account does not exist
Address of the account to get
Promise<Account | undefined>
StateManagerInterface.getAccount
getCode(
address):Promise<Uint8Array<ArrayBufferLike>>
Defined in: statefulBinaryTreeStateManager.ts:338
Promise<Uint8Array<ArrayBufferLike>>
StateManagerInterface.getCode
getCodeSize(
address):Promise<number>
Defined in: statefulBinaryTreeStateManager.ts:413
Promise<number>
StateManagerInterface.getCodeSize
getComputedValue(
accessedState):Promise<`0x${string}`|null>
Defined in: statefulBinaryTreeStateManager.ts:535
BinaryTreeAccessedStateWithAddress
Promise<`0x${string}` | null>
getStateRoot():
Promise<Uint8Array<ArrayBufferLike>>
Defined in: statefulBinaryTreeStateManager.ts:737
Promise<Uint8Array<ArrayBufferLike>>
StateManagerInterface.getStateRoot
getStorage(
address,key):Promise<Uint8Array<ArrayBufferLike>>
Defined in: statefulBinaryTreeStateManager.ts:422
Uint8Array
Promise<Uint8Array<ArrayBufferLike>>
StateManagerInterface.getStorage
hasStateRoot(
root):Promise<boolean>
Defined in: statefulBinaryTreeStateManager.ts:755
Uint8Array
Promise<boolean>
StateManagerInterface.hasStateRoot
initBinaryTreeExecutionWitness(
_blockNum,executionWitness?):void
Defined in: statefulBinaryTreeStateManager.ts:179
bigint
BinaryTreeExecutionWitness | null
void
StateManagerInterface.initBinaryTreeExecutionWitness
modifyAccountFields(
address,accountFields):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:277
AccountFields
Promise<void>
StateManagerInterface.modifyAccountFields
putAccount(
address,account?):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:223
Saves an account into state under the provided address.
Address under which to store account
Account
The account to store or undefined if to be deleted
Promise<void>
StateManagerInterface.putAccount
putCode(
address,value):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:280
Uint8Array
Promise<void>
StateManagerInterface.putCode
putStorage(
address,key,value):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:448
Uint8Array
Uint8Array
Promise<void>
StateManagerInterface.putStorage
revert():
Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:483
Promise<void>
StateManagerInterface.revert
setStateRoot(
stateRoot,clearCache?):Promise<void>
Defined in: statefulBinaryTreeStateManager.ts:750
Uint8Array
boolean
Promise<void>
StateManagerInterface.setStateRoot
shallowCopy(
_downlevelCaches?):StateManagerInterface
Defined in: statefulBinaryTreeStateManager.ts:767
boolean
StateManagerInterface.shallowCopy
verifyBinaryTreePostState(
accessWitness):Promise<boolean>
Defined in: statefulBinaryTreeStateManager.ts:629
BinaryTreeAccessWitnessInterface
Promise<boolean>
StateManagerInterface.verifyBinaryTreePostState