mirror of
https://github.com/uptrace/go-clickhouse.git
synced 2025-06-06 23:16:18 +02:00
24 lines
317 B
Go
24 lines
317 B
Go
package bfloat16
|
|
|
|
import (
|
|
"math"
|
|
)
|
|
|
|
type T uint16
|
|
|
|
func From(f float64) T {
|
|
return From32(float32(f))
|
|
}
|
|
|
|
func From32(f float32) T {
|
|
return T(math.Float32bits(f) >> 16)
|
|
}
|
|
|
|
func (f T) Float32() float32 {
|
|
return math.Float32frombits(uint32(f) << 16)
|
|
}
|
|
|
|
func (f T) Float64() float64 {
|
|
return float64(f.Float32())
|
|
}
|