Official Go implementation of the Ethereum protocol
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Nick Johnson
781915f183
core/vm: Refactor tracing to make Tracer the main interface
...
This CL makes several refactors:
- Define a Tracer interface, implementing the `CaptureState` method
- Add the VM environment as the first argument of
`Tracer.CaptureState`
- Rename existing functionality `StructLogger` an make it an
implementation of `Tracer`
- Delete `StructLogCollector` and make `StructLogger` collect the logs
directly
- Change all callers to use the new `StructLogger` where necessary and
extract logs from that.
- Deletes the apparently obsolete and likely nonfunctional 'TraceCall'
from the eth API.
Callers that only wish accumulated logs can use the `StructLogger`
implementation straightforwardly. Callers that wish to efficiently
capture VM traces and operate on them without excessive copying can now
implement the `Tracer` interface to receive VM state at each step and
do with it as they wish.
This CL also removes the accumulation of logs from the vm.Environment;
this was necessary as part of the refactor, but also simplifies it by
removing a responsibility that doesn't directly belong to the
Environment.
8 years ago
..
state
Revert "test, cmd/evm, core, core/vm: illegal code hash implementation"
8 years ago
types
rpc: refactor subscriptions and filters
8 years ago
vm
core/vm: Refactor tracing to make Tracer the main interface
8 years ago
.gitignore
Renamed `chain` => `core`
10 years ago
asm.go
all: fix go vet warnings
9 years ago
bench_test.go
accounts, core, eth: pass chain config for chain maker to test DAO
8 years ago
block_validator.go
cmd, core, eth, miner, params, tests: finalize the DAO fork
8 years ago
block_validator_test.go
accounts, core, eth: pass chain config for chain maker to test DAO
8 years ago
blockchain.go
core: ensure the canonical block is written before the canonical hash is set
8 years ago
blockchain_test.go
core: ensure the canonical block is written before the canonical hash is set
8 years ago
blocks.go
remove 0x
9 years ago
chain_makers.go
accounts, core, eth: pass chain config for chain maker to test DAO
8 years ago
chain_makers_test.go
accounts, core, eth: pass chain config for chain maker to test DAO
8 years ago
chain_pow.go
core: separate and contain POW verifier, extensive tests
9 years ago
chain_pow_test.go
accounts, core, eth: pass chain config for chain maker to test DAO
8 years ago
config.go
cmd, core, miner: add extradata validation to consensus rules
8 years ago
dao.go
cmd, core, eth, miner, params, tests: finalize the DAO fork
8 years ago
dao_test.go
accounts, core, eth: pass chain config for chain maker to test DAO
8 years ago
database_util.go
core: ensure the canonical block is written before the canonical hash is set
8 years ago
database_util_test.go
accounts, core, eth: pass chain config for chain maker to test DAO
8 years ago
default_genesis.go
all: update license information
9 years ago
error.go
Merge pull request #1889 from karalabe/fast-sync-rebase
9 years ago
events.go
core, miner: add PendingStateEvent to track non-log updates
9 years ago
execution.go
Revert "test, cmd/evm, core, core/vm: illegal code hash implementation"
8 years ago
fees.go
Merge pull request #1515 from fjl/license-fixes
9 years ago
filter_test.go
all: fix license headers one more time
9 years ago
gaspool.go
all: update license information
9 years ago
genesis.go
core: improved chainDb using sequential keys
9 years ago
headerchain.go
core: ensure the canonical block is written before the canonical hash is set
8 years ago
helper_test.go
cmd/geth, cmd/utils, core, rpc: renamed to blockchain
9 years ago
state_processor.go
cmd, core, eth, miner, params, tests: finalize the DAO fork
8 years ago
state_transition.go
core: added CheckNonce() to Message interface
8 years ago
tx_pool.go
core: add missing lock in TxPool.{GetTransaction,RemoveTx}
9 years ago
tx_pool_test.go
core: added basic chain configuration
9 years ago
types.go
core, miner: move Backend to miner
8 years ago
vm_env.go
core/vm: Refactor tracing to make Tracer the main interface
8 years ago