github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/evm/txs/tracetxlog/tracetxlog.go (about) 1 package tracetxlog 2 3 import ( 4 "fmt" 5 sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types" 6 "github.com/fibonacci-chain/fbc/x/evm/txs/base" 7 "github.com/fibonacci-chain/fbc/x/evm/txs/check" 8 ) 9 10 // tx trace tx log depends on check tx 11 type tx struct { 12 *check.Tx 13 } 14 15 func NewTx(config base.Config) *tx { 16 return &tx{ 17 Tx: check.NewTx(config), 18 } 19 } 20 21 // DecorateResult trace log tx need modify the result to log, and swallow error 22 func (t *tx) DecorateResult(inResult *base.Result, inErr error) (result *sdk.Result, err error) { 23 if inResult == nil || inResult.ExecResult == nil || inResult.ExecResult.Result == nil { 24 return nil, fmt.Errorf("result is nil") 25 } 26 inResult.ExecResult.Result.Data = inResult.ExecResult.TraceLogs 27 28 return inResult.ExecResult.Result, nil 29 }