github.com/andeya/ameda@v1.5.3/float32.go (about) 1 package ameda 2 3 import ( 4 "fmt" 5 "math" 6 ) 7 8 // Float32ToInterface converts float32 to interface. 9 func Float32ToInterface(v float32) interface{} { 10 return v 11 } 12 13 // Float32ToInterfacePtr converts float32 to *interface. 14 func Float32ToInterfacePtr(v float32) *interface{} { 15 r := Float32ToInterface(v) 16 return &r 17 } 18 19 // Float32ToString converts float32 to string. 20 func Float32ToString(v float32) string { 21 return fmt.Sprintf("%f", v) 22 } 23 24 // Float32ToStringPtr converts float32 to *string. 25 func Float32ToStringPtr(v float32) *string { 26 r := Float32ToString(v) 27 return &r 28 } 29 30 // Float32ToBool converts float32 to bool. 31 func Float32ToBool(v float32) bool { 32 return v != 0 33 } 34 35 // Float32ToBoolPtr converts float32 to *bool. 36 func Float32ToBoolPtr(v float32) *bool { 37 r := Float32ToBool(v) 38 return &r 39 } 40 41 // Float32ToFloat32Ptr converts float32 to *float32. 42 func Float32ToFloat32Ptr(v float32) *float32 { 43 return &v 44 } 45 46 // Float32ToFloat64 converts float32 to float64. 47 func Float32ToFloat64(v float32) float64 { 48 return float64(v) 49 } 50 51 // Float32ToFloat64Ptr converts float32 to *float64. 52 func Float32ToFloat64Ptr(v float32) *float64 { 53 r := Float32ToFloat64(v) 54 return &r 55 } 56 57 // Float32ToInt converts float32 to int. 58 func Float32ToInt(v float32) (int, error) { 59 if Host64bit { 60 if v > math.MaxInt64 || v < math.MinInt64 { 61 return 0, errOverflowValue 62 } 63 } else { 64 if v > math.MaxInt32 || v < math.MinInt32 { 65 return 0, errOverflowValue 66 } 67 } 68 return int(v), nil 69 70 } 71 72 // Float32ToInt8 converts float32 to int8. 73 func Float32ToInt8(v float32) (int8, error) { 74 if v > math.MaxInt8 || v < math.MinInt8 { 75 return 0, errOverflowValue 76 } 77 return int8(v), nil 78 } 79 80 // Float32ToInt8Ptr converts float32 to *int8. 81 func Float32ToInt8Ptr(v float32) (*int8, error) { 82 r, err := Float32ToInt8(v) 83 return &r, err 84 } 85 86 // Float32ToInt16 converts float32 to int16. 87 func Float32ToInt16(v float32) (int16, error) { 88 if v > math.MaxInt16 || v < math.MinInt16 { 89 return 0, errOverflowValue 90 } 91 return int16(v), nil 92 } 93 94 // Float32ToInt16Ptr converts float32 to *int16. 95 func Float32ToInt16Ptr(v float32) (*int16, error) { 96 r, err := Float32ToInt16(v) 97 return &r, err 98 } 99 100 // Float32ToInt32 converts float32 to int32. 101 func Float32ToInt32(v float32) (int32, error) { 102 if v > math.MaxInt32 || v < math.MinInt32 { 103 return 0, errOverflowValue 104 } 105 return int32(v), nil 106 } 107 108 // Float32ToInt32Ptr converts float32 to *int32. 109 func Float32ToInt32Ptr(v float32) (*int32, error) { 110 r, err := Float32ToInt32(v) 111 return &r, err 112 } 113 114 // Float32ToInt64 converts float32 to int64. 115 func Float32ToInt64(v float32) (int64, error) { 116 if v > math.MaxInt64 || v < math.MinInt64 { 117 return 0, errOverflowValue 118 } 119 return int64(v), nil 120 } 121 122 // Float32ToInt64Ptr converts float32 to *int64. 123 func Float32ToInt64Ptr(v float32) (*int64, error) { 124 r, err := Float32ToInt64(v) 125 return &r, err 126 } 127 128 // Float32ToUint converts float32 to uint. 129 func Float32ToUint(v float32) (uint, error) { 130 if v < 0 { 131 return 0, errNegativeValue 132 } 133 if Host64bit { 134 if v > math.MaxUint64 { 135 return 0, errOverflowValue 136 } 137 } else { 138 if v > math.MaxUint32 { 139 return 0, errOverflowValue 140 } 141 } 142 return uint(v), nil 143 } 144 145 // Float32ToUintPtr converts float32 to *uint. 146 func Float32ToUintPtr(v float32) (*uint, error) { 147 r, err := Float32ToUint(v) 148 return &r, err 149 } 150 151 // Float32ToUint8 converts float32 to uint8. 152 func Float32ToUint8(v float32) (uint8, error) { 153 if v < 0 { 154 return 0, errNegativeValue 155 } 156 if v > math.MaxUint8 { 157 return 0, errOverflowValue 158 } 159 return uint8(v), nil 160 } 161 162 // Float32ToUint8Ptr converts float32 to *uint8. 163 func Float32ToUint8Ptr(v float32) (*uint8, error) { 164 r, err := Float32ToUint8(v) 165 return &r, err 166 } 167 168 // Float32ToUint16 converts float32 to uint16. 169 func Float32ToUint16(v float32) (uint16, error) { 170 if v < 0 { 171 return 0, errNegativeValue 172 } 173 if v > math.MaxUint16 { 174 return 0, errOverflowValue 175 } 176 return uint16(v), nil 177 } 178 179 // Float32ToUint16Ptr converts float32 to *uint16. 180 func Float32ToUint16Ptr(v float32) (*uint16, error) { 181 r, err := Float32ToUint16(v) 182 return &r, err 183 } 184 185 // Float32ToUint32 converts float32 to uint32. 186 func Float32ToUint32(v float32) (uint32, error) { 187 if v < 0 { 188 return 0, errNegativeValue 189 } 190 if v > math.MaxUint32 { 191 return 0, errOverflowValue 192 } 193 return uint32(v), nil 194 } 195 196 // Float32ToUint32Ptr converts float32 to *uint32. 197 func Float32ToUint32Ptr(v float32) (*uint32, error) { 198 r, err := Float32ToUint32(v) 199 return &r, err 200 } 201 202 // Float32ToUint64 converts float32 to uint64. 203 func Float32ToUint64(v float32) (uint64, error) { 204 if v < 0 { 205 return 0, errNegativeValue 206 } 207 if v > math.MaxUint64 { 208 return 0, errOverflowValue 209 } 210 return uint64(v), nil 211 } 212 213 // Float32ToUint64Ptr converts float32 to *uint64. 214 func Float32ToUint64Ptr(v float32) (*uint64, error) { 215 r, err := Float32ToUint64(v) 216 return &r, err 217 }