diff options
author | Unknwon <u@gogs.io> | 2018-06-09 17:20:38 +0800 |
---|---|---|
committer | Unknwon <u@gogs.io> | 2018-06-09 17:20:38 +0800 |
commit | 694208865b103e6eb96f8e7e1b394037de9a89ba (patch) | |
tree | 737f55cc961965cba088d78559bbf5707630dce6 /vendor/github.com/json-iterator/go/any_float.go | |
parent | a75c4352453f3dfde38f2cd4930a020427951539 (diff) |
vendor: add github.com/json-iterator/go
Diffstat (limited to 'vendor/github.com/json-iterator/go/any_float.go')
-rw-r--r-- | vendor/github.com/json-iterator/go/any_float.go | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/vendor/github.com/json-iterator/go/any_float.go b/vendor/github.com/json-iterator/go/any_float.go new file mode 100644 index 00000000..35fdb094 --- /dev/null +++ b/vendor/github.com/json-iterator/go/any_float.go @@ -0,0 +1,83 @@ +package jsoniter + +import ( + "strconv" +) + +type floatAny struct { + baseAny + val float64 +} + +func (any *floatAny) Parse() *Iterator { + return nil +} + +func (any *floatAny) ValueType() ValueType { + return NumberValue +} + +func (any *floatAny) MustBeValid() Any { + return any +} + +func (any *floatAny) LastError() error { + return nil +} + +func (any *floatAny) ToBool() bool { + return any.ToFloat64() != 0 +} + +func (any *floatAny) ToInt() int { + return int(any.val) +} + +func (any *floatAny) ToInt32() int32 { + return int32(any.val) +} + +func (any *floatAny) ToInt64() int64 { + return int64(any.val) +} + +func (any *floatAny) ToUint() uint { + if any.val > 0 { + return uint(any.val) + } + return 0 +} + +func (any *floatAny) ToUint32() uint32 { + if any.val > 0 { + return uint32(any.val) + } + return 0 +} + +func (any *floatAny) ToUint64() uint64 { + if any.val > 0 { + return uint64(any.val) + } + return 0 +} + +func (any *floatAny) ToFloat32() float32 { + return float32(any.val) +} + +func (any *floatAny) ToFloat64() float64 { + return any.val +} + +func (any *floatAny) ToString() string { + return strconv.FormatFloat(any.val, 'E', -1, 64) +} + +func (any *floatAny) WriteTo(stream *Stream) { + stream.WriteFloat64(any.val) +} + +func (any *floatAny) GetInterface() interface{} { + return any.val +} |