a1d9ef48c5
This removes the burden on a single object to take care of all validation and state processing. Now instead the validation is done by the `core.BlockValidator` (`types.Validator`) that takes care of both header and uncle validation through the `ValidateBlock` method and state validation through the `ValidateState` method. The state processing is done by a new object `core.StateProcessor` (`types.Processor`) and accepts a new state as input and uses that to process the given block's transactions (and uncles for rewords) to calculate the state root for the next block (P_n + 1). |
||
---|---|---|
.. | ||
downloader | ||
fetcher | ||
filters | ||
backend_test.go | ||
backend.go | ||
cpu_mining.go | ||
gasprice.go | ||
gpu_mining.go | ||
handler_test.go | ||
handler.go | ||
helper_test.go | ||
metrics.go | ||
peer.go | ||
protocol_test.go | ||
protocol.go | ||
sync_test.go | ||
sync.go |