mirror of
https://github.com/status-im/evmc.git
synced 2025-02-22 16:08:22 +00:00
EVM-C: Improve update state callback function
This commit is contained in:
parent
104a4a12c3
commit
cc35c5d169
@ -44,6 +44,7 @@ static void query(union evm_variant* result,
|
||||
|
||||
static void update(struct evm_env* env,
|
||||
enum evm_update_key key,
|
||||
const struct evm_uint160be* addr,
|
||||
const union evm_variant* arg1,
|
||||
const union evm_variant* arg2)
|
||||
{
|
||||
|
@ -7,7 +7,7 @@ struct examplevm
|
||||
{
|
||||
struct evm_instance instance;
|
||||
evm_query_state_fn query_fn;
|
||||
evm_update_fn update_fn;
|
||||
evm_update_state_fn update_fn;
|
||||
evm_call_fn call_fn;
|
||||
evm_get_tx_context_fn get_tx_context_fn;
|
||||
evm_get_block_hash_fn get_block_hash_fn;
|
||||
@ -94,7 +94,7 @@ static struct evm_result evm_execute(struct evm_instance* instance,
|
||||
}
|
||||
|
||||
static struct evm_instance* evm_create(evm_query_state_fn query_fn,
|
||||
evm_update_fn update_fn,
|
||||
evm_update_state_fn update_fn,
|
||||
evm_call_fn call_fn,
|
||||
evm_get_tx_context_fn get_tx_context_fn,
|
||||
evm_get_block_hash_fn get_block_hash_fn)
|
||||
|
@ -315,10 +315,11 @@ enum evm_update_key {
|
||||
/// - ::EVM_SELFDESTRUCT
|
||||
/// @param arg1 evm_variant::address The beneficiary address.
|
||||
/// @param arg2 n/a
|
||||
typedef void (*evm_update_fn)(struct evm_env* env,
|
||||
enum evm_update_key key,
|
||||
const union evm_variant* arg1,
|
||||
const union evm_variant* arg2);
|
||||
typedef void (*evm_update_state_fn)(struct evm_env* env,
|
||||
enum evm_update_key key,
|
||||
const struct evm_uint160be* address,
|
||||
const union evm_variant* arg1,
|
||||
const union evm_variant* arg2);
|
||||
|
||||
/// The kind of call-like instruction.
|
||||
enum evm_call_kind {
|
||||
@ -376,7 +377,7 @@ struct evm_instance; ///< Forward declaration.
|
||||
/// @param call_fn Pointer to call callback function. Nonnull.
|
||||
/// @return Pointer to the created EVM instance.
|
||||
typedef struct evm_instance* (*evm_create_fn)(evm_query_state_fn query_fn,
|
||||
evm_update_fn update_fn,
|
||||
evm_update_state_fn update_fn,
|
||||
evm_call_fn call_fn,
|
||||
evm_get_tx_context_fn,
|
||||
evm_get_block_hash_fn);
|
||||
|
Loading…
x
Reference in New Issue
Block a user