gh-ost/vendor/github.com/go-mysql-org/go-mysql/utils/zeroalloc.go
2021-07-15 21:49:50 +02:00

28 lines
539 B
Go

package utils
import "unsafe"
func StringToByteSlice(s string) []byte {
return *(*[]byte)(unsafe.Pointer(&s))
}
func ByteSliceToString(b []byte) string {
return *(*string)(unsafe.Pointer(&b))
}
func Uint64ToInt64(val uint64) int64 {
return *(*int64)(unsafe.Pointer(&val))
}
func Uint64ToFloat64(val uint64) float64 {
return *(*float64)(unsafe.Pointer(&val))
}
func Int64ToUint64(val int64) uint64 {
return *(*uint64)(unsafe.Pointer(&val))
}
func Float64ToUint64(val float64) uint64 {
return *(*uint64)(unsafe.Pointer(&val))
}