package com.hedera.hapi.node.hooks

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message EvmHook

hook_types.proto:79

* Definition of a general-purpose EVM hook.

Used in: HookCreationDetails

message EvmHookMappingEntries

hook_types.proto:136

* Specifies storage slot updates via indirection into a Solidity mapping. <p> Concretely, if the Solidity mapping is itself at slot `mapping_slot`, then the * storage slot for key `key` in the mapping is defined by the relationship `key_storage_slot = keccak256(abi.encodePacked(mapping_slot, key))`. <p> This message lets a metaprotocol be specified in terms of changes to a Solidity mapping's entries. If only raw slots could be updated, then a block stream consumer following the metaprotocol would have to invert the Keccak256 hash to determine which mapping entry was being updated, which is not possible.

Used in: EvmHookStorageUpdate

message EvmHookMappingEntry

hook_types.proto:159

* An entry in a Solidity mapping. Very helpful for protocols that apply `HookStore` to manage the entries of a hook contract's mapping instead its raw storage slots. <p> This is especially attractive when the mapping value itself fits in a single word; for more complicated value storage layouts it becomes necessary to combine the mapping update with additional `EvmHookStorageSlot` updates that specify the complete storage slots of the value type.

Used in: EvmHookMappingEntries

message EvmHookSpec

hook_types.proto:94

* Shared specifications for an EVM hook. May be used for any extension point.

Used in: EvmHook

message EvmHookStorageSlot

hook_types.proto:185

* A slot in the storage of an EVM hook.

Used in: EvmHookStorageUpdate

message EvmHookStorageUpdate

hook_types.proto:111

* Specifies a key/value pair in the storage of an EVM hook, either by the explicit storage slot contents; or by a combination of a Solidity mapping's slot key and the key into that mapping.

Used in: EvmHook, HookStoreTransactionBody

message HookCreation

hook_types.proto:26

* Specifies the creation of a new hook at the given id for the given entity.

Used in: HookDispatchTransactionBody

message HookCreationDetails

hook_types.proto:47

** The details of a hook's creation.

Used in: HookCreation, proto.ContractCreateTransactionBody, proto.ContractUpdateTransactionBody, proto.CryptoCreateTransactionBody, proto.CryptoUpdateTransactionBody

message HookDispatchTransactionBody

hook_dispatch.proto:16

* Dispatches a hook action to an appropriate service.

Used in: proto.TransactionBody

message HookExecution

hook_dispatch.proto:38

* Details the execution of a hook.

Used in: HookDispatchTransactionBody

enum HookExtensionPoint

hook_types.proto:16

** The Hiero extension points that accept a hook.

Used in: HookCreationDetails, state.hooks.EvmHookState

message HookStoreTransactionBody

hook_store.proto:17

* Adds or removes key/value pairs in the storage of an EVM hook. Either the hook owner's key, or its admin key, must sign the transaction.

Used in: proto.TransactionBody