1
0
mirror of https://github.com/uptrace/go-clickhouse.git synced 2025-06-08 23:26:11 +02:00
go-clickhouse/ch/bfloat16/bfloat16.go
2022-07-22 11:40:45 +03:00

26 lines
350 B
Go

package bfloat16
import (
"math"
)
type Map map[T]uint64
type T uint16
func From(f float64) T {
return FromFloat32(float32(f))
}
func FromFloat32(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())
}