diff options
| author | Taras Madan <tarasmadan@google.com> | 2024-06-17 11:50:19 +0200 |
|---|---|---|
| committer | Taras Madan <tarasmadan@google.com> | 2024-06-20 09:22:00 +0000 |
| commit | c576ee0969cd731f1a1543712b62a4933480136e (patch) | |
| tree | 9a44d2537287b0519470c9fe6d242963fdedd7f7 /vendor/github.com/json-iterator/go/any_float.go | |
| parent | 41b7e219b69c98529757e036f4b8fb1e9fa77040 (diff) | |
vendor: spanner
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 000000000..35fdb0949 --- /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 +} |
