|
|
|
@ -1,9 +1,11 @@ |
|
|
|
|
package ethutil |
|
|
|
|
|
|
|
|
|
import ( |
|
|
|
|
"bytes" |
|
|
|
|
"fmt" |
|
|
|
|
"math/big" |
|
|
|
|
"reflect" |
|
|
|
|
"strconv" |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
// Data values are returned by the rlp decoder. The data values represents
|
|
|
|
@ -93,6 +95,9 @@ func (val *Value) Int() int64 { |
|
|
|
|
return new(big.Int).SetBytes(Val).Int64() |
|
|
|
|
} else if Val, ok := val.Val.(*big.Int); ok { |
|
|
|
|
return Val.Int64() |
|
|
|
|
} else if Val, ok := val.Val.(string); ok { |
|
|
|
|
n, _ := strconv.Atoi(Val) |
|
|
|
|
return int64(n) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return 0 |
|
|
|
@ -246,10 +251,7 @@ func (val *Value) Cmp(o *Value) bool { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (self *Value) DeepCmp(o *Value) bool { |
|
|
|
|
a := NewValue(self.BigInt()) |
|
|
|
|
b := NewValue(o.BigInt()) |
|
|
|
|
|
|
|
|
|
return a.Cmp(b) |
|
|
|
|
return bytes.Compare(self.Bytes(), o.Bytes()) == 0 |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (val *Value) Encode() []byte { |
|
|
|
|