eth/tracers: add GetResult to tracer interface
This commit is contained in:
parent
af67e1def6
commit
57c993b6cb
|
@ -1,8 +1,17 @@
|
||||||
package native
|
package native
|
||||||
|
|
||||||
import "github.com/ethereum/go-ethereum/core/vm"
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
|
||||||
type Constructor func() vm.Tracer
|
"github.com/ethereum/go-ethereum/core/vm"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Tracer interface {
|
||||||
|
vm.Tracer
|
||||||
|
GetResult() (json.RawMessage, error)
|
||||||
|
}
|
||||||
|
|
||||||
|
type Constructor func() Tracer
|
||||||
|
|
||||||
var tracers map[string]Constructor = make(map[string]Constructor)
|
var tracers map[string]Constructor = make(map[string]Constructor)
|
||||||
|
|
||||||
|
@ -10,7 +19,7 @@ func Register(name string, fn Constructor) {
|
||||||
tracers[name] = fn
|
tracers[name] = fn
|
||||||
}
|
}
|
||||||
|
|
||||||
func New(name string) (vm.Tracer, bool) {
|
func New(name string) (Tracer, bool) {
|
||||||
if fn, ok := tracers[name]; ok {
|
if fn, ok := tracers[name]; ok {
|
||||||
return fn(), true
|
return fn(), true
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue