zeroalloc.go 539 B

123456789101112131415161718192021222324252627
  1. package utils
  2. import "unsafe"
  3. func StringToByteSlice(s string) []byte {
  4. return *(*[]byte)(unsafe.Pointer(&s))
  5. }
  6. func ByteSliceToString(b []byte) string {
  7. return *(*string)(unsafe.Pointer(&b))
  8. }
  9. func Uint64ToInt64(val uint64) int64 {
  10. return *(*int64)(unsafe.Pointer(&val))
  11. }
  12. func Uint64ToFloat64(val uint64) float64 {
  13. return *(*float64)(unsafe.Pointer(&val))
  14. }
  15. func Int64ToUint64(val int64) uint64 {
  16. return *(*uint64)(unsafe.Pointer(&val))
  17. }
  18. func Float64ToUint64(val float64) uint64 {
  19. return *(*uint64)(unsafe.Pointer(&val))
  20. }