gtsocial-umbx

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

any_float.go (1252B)


      1 package jsoniter
      2 
      3 import (
      4 	"strconv"
      5 )
      6 
      7 type floatAny struct {
      8 	baseAny
      9 	val float64
     10 }
     11 
     12 func (any *floatAny) Parse() *Iterator {
     13 	return nil
     14 }
     15 
     16 func (any *floatAny) ValueType() ValueType {
     17 	return NumberValue
     18 }
     19 
     20 func (any *floatAny) MustBeValid() Any {
     21 	return any
     22 }
     23 
     24 func (any *floatAny) LastError() error {
     25 	return nil
     26 }
     27 
     28 func (any *floatAny) ToBool() bool {
     29 	return any.ToFloat64() != 0
     30 }
     31 
     32 func (any *floatAny) ToInt() int {
     33 	return int(any.val)
     34 }
     35 
     36 func (any *floatAny) ToInt32() int32 {
     37 	return int32(any.val)
     38 }
     39 
     40 func (any *floatAny) ToInt64() int64 {
     41 	return int64(any.val)
     42 }
     43 
     44 func (any *floatAny) ToUint() uint {
     45 	if any.val > 0 {
     46 		return uint(any.val)
     47 	}
     48 	return 0
     49 }
     50 
     51 func (any *floatAny) ToUint32() uint32 {
     52 	if any.val > 0 {
     53 		return uint32(any.val)
     54 	}
     55 	return 0
     56 }
     57 
     58 func (any *floatAny) ToUint64() uint64 {
     59 	if any.val > 0 {
     60 		return uint64(any.val)
     61 	}
     62 	return 0
     63 }
     64 
     65 func (any *floatAny) ToFloat32() float32 {
     66 	return float32(any.val)
     67 }
     68 
     69 func (any *floatAny) ToFloat64() float64 {
     70 	return any.val
     71 }
     72 
     73 func (any *floatAny) ToString() string {
     74 	return strconv.FormatFloat(any.val, 'E', -1, 64)
     75 }
     76 
     77 func (any *floatAny) WriteTo(stream *Stream) {
     78 	stream.WriteFloat64(any.val)
     79 }
     80 
     81 func (any *floatAny) GetInterface() interface{} {
     82 	return any.val
     83 }