neo-go/pkg/vm
Furetur f5794e91a2 vm: implement OnExecHook
Refs #3415

This commit introduces a small new change
that implements the Hooks API and more
specifically the OnExecHook. This feature
can be used to implement test coverage
collection, tracing, breakpoints, and etc.

To be more specific, this commit:

1. adds a new `hooks` field to the `VM`
   (this field contains the OnExecHook
    function)

2. sets the default value of this hook
   to be a NOP function

3. adds the `VM.SetOnExecHook` method

Signed-off-by: Furetur <furetur@gmail.com>
2024-07-03 12:49:09 +03:00
..
emit native: add test for multisignature Koblitz witness verification 2024-05-13 09:33:42 +03:00
invocations vm: move InvocationTree into a package of its own 2022-07-08 23:30:30 +03:00
opcode vm: add ABORTMSG and ASSERTMSG opcodes 2023-08-10 12:41:30 +03:00
stackitem *: replace slice.Copy with bytes.Clone 2024-03-05 13:54:10 +03:00
testdata core: fix formatted error on transaction verification 2023-07-21 13:50:20 +03:00
vmstate vm: move State type into a package of its own 2022-07-08 18:34:52 +03:00
bench_test.go vm: optimize IsSignatureContract 2022-06-07 10:29:13 +03:00
context.go interop/contract: fix state rollbacks for nested contexts 2023-06-29 11:35:10 +03:00
contract_checks.go vm: optimize IsSignatureContract 2022-06-07 10:29:13 +03:00
contract_checks_test.go vm: avoid panic in IsScriptCorrect 2022-03-17 20:12:50 +03:00
debug_test.go cli: properly handle run VM CLI command 2023-05-19 13:26:56 +03:00
exception.go *: replace interface{} with any keyword 2023-04-04 13:22:42 +03:00
fuzz_test.go *: drop go 1.18 support in doc and build targets 2023-10-12 17:59:42 +03:00
invocation_tree_test.go vm: don't use Stack for istack 2022-11-18 11:35:29 +03:00
iterator_test.go vm: Add tests for iterator unwrap scripts 2023-12-29 10:50:43 +03:00
json_test.go vm: update VM json tests path 2023-08-10 12:54:07 +03:00
opcodebench_test.go *: replace interface{} with any keyword 2023-04-04 13:22:42 +03:00
ref_counter.go vm: optimize refcounter 2022-08-23 13:18:06 +03:00
ref_counter_test.go vm/bench: extend refcounter benchmarks 2022-08-23 13:08:42 +03:00
slot.go vm: simplify (slot).Set code 2022-05-17 16:26:22 +03:00
slot_test.go vm: count initial Null slot variables as well 2022-05-16 17:42:57 +03:00
stack.go *: improve error text for System.Crypto.CheckMultisig handling 2024-03-25 19:16:21 +03:00
stack_test.go vm: rework stack as a simple slice 2021-08-24 15:28:14 +03:00
vm.go vm: implement OnExecHook 2024-07-03 12:49:09 +03:00
vm_test.go vm: implement OnExecHook 2024-07-03 12:49:09 +03:00