diff options
Diffstat (limited to 'tests/gen_stlog.go')
-rw-r--r-- | tests/gen_stlog.go | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/tests/gen_stlog.go b/tests/gen_stlog.go new file mode 100644 index 000000000..4f7ebc966 --- /dev/null +++ b/tests/gen_stlog.go @@ -0,0 +1,61 @@ +// Code generated by github.com/fjl/gencodec. DO NOT EDIT. + +package tests + +import ( + "encoding/json" + + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/common/hexutil" +) + +var _ = (*stLogMarshaling)(nil) + +func (s stLog) MarshalJSON() ([]byte, error) { + type stLog struct { + Address common.UnprefixedAddress `json:"address"` + Data hexutil.Bytes `json:"data"` + Topics []common.UnprefixedHash `json:"topics"` + Bloom string `json:"bloom"` + } + var enc stLog + enc.Address = common.UnprefixedAddress(s.Address) + enc.Data = s.Data + if s.Topics != nil { + enc.Topics = make([]common.UnprefixedHash, len(s.Topics)) + for k, v := range s.Topics { + enc.Topics[k] = common.UnprefixedHash(v) + } + } + enc.Bloom = s.Bloom + return json.Marshal(&enc) +} + +func (s *stLog) UnmarshalJSON(input []byte) error { + type stLog struct { + Address *common.UnprefixedAddress `json:"address"` + Data hexutil.Bytes `json:"data"` + Topics []common.UnprefixedHash `json:"topics"` + Bloom *string `json:"bloom"` + } + var dec stLog + if err := json.Unmarshal(input, &dec); err != nil { + return err + } + if dec.Address != nil { + s.Address = common.Address(*dec.Address) + } + if dec.Data != nil { + s.Data = dec.Data + } + if dec.Topics != nil { + s.Topics = make([]common.Hash, len(dec.Topics)) + for k, v := range dec.Topics { + s.Topics[k] = common.Hash(v) + } + } + if dec.Bloom != nil { + s.Bloom = *dec.Bloom + } + return nil +} |