accounts/abi: removed uneccessary complications

This commit is contained in:
Marius van der Wijden 2020-05-07 19:02:35 +02:00
parent 7131ed54a9
commit 6385c47467

View file

@ -59,10 +59,6 @@ func (argument *Argument) UnmarshalJSON(data []byte) error {
return nil return nil
} }
func (argument *Argument) set(dst interface{}, src interface{}) {
}
// NonIndexed returns the arguments with indexed arguments filtered out // NonIndexed returns the arguments with indexed arguments filtered out
func (arguments Arguments) NonIndexed() Arguments { func (arguments Arguments) NonIndexed() Arguments {
var ret []Argument var ret []Argument
@ -101,7 +97,6 @@ func (arguments Arguments) Unpack(v interface{}, data []byte) error {
if arguments.isTuple() { if arguments.isTuple() {
return arguments.unpackTuple(v, marshalledValues) return arguments.unpackTuple(v, marshalledValues)
} }
return arguments.unpackAtomic(v, marshalledValues[0]) return arguments.unpackAtomic(v, marshalledValues[0])
} }
@ -129,13 +124,13 @@ func (arguments Arguments) UnpackIntoMap(v map[string]interface{}, data []byte)
// unpackAtomic unpacks ( hexdata -> go ) a single value // unpackAtomic unpacks ( hexdata -> go ) a single value
func (arguments Arguments) unpackAtomic(v interface{}, marshalledValues interface{}) error { func (arguments Arguments) unpackAtomic(v interface{}, marshalledValues interface{}) error {
elem := reflect.ValueOf(v).Elem() dst := reflect.ValueOf(v).Elem()
src := reflect.ValueOf(marshalledValues)
if elem.Kind() == reflect.Struct && reflect.ValueOf(marshalledValues).Kind() != reflect.Struct { if dst.Kind() == reflect.Struct && src.Kind() != reflect.Struct {
return set(elem.Field(0), reflect.ValueOf(marshalledValues)) return set(dst.Field(0), src)
} }
return set(dst, src)
return set(elem, reflect.ValueOf(marshalledValues))
} }
// unpackTuple unpacks ( hexdata -> go ) a batch of values. // unpackTuple unpacks ( hexdata -> go ) a batch of values.