File tree 1 file changed +10
-7
lines changed
1 file changed +10
-7
lines changed Original file line number Diff line number Diff line change 1
1
package utils
2
2
3
- import "unsafe"
3
+ import (
4
+ "math"
5
+ "unsafe"
6
+ )
4
7
5
8
func StringToByteSlice (s string ) []byte {
6
- return * ( * [] byte )( unsafe .Pointer ( & s ))
9
+ return unsafe . Slice ( unsafe .StringData ( s ), len ( s ))
7
10
}
8
11
9
12
func ByteSliceToString (b []byte ) string {
10
- return * ( * string )( unsafe .Pointer ( & b ))
13
+ return unsafe . String ( unsafe .SliceData ( b ), len ( b ))
11
14
}
12
15
13
16
func Uint64ToInt64 (val uint64 ) int64 {
14
- return * ( * int64 )( unsafe . Pointer ( & val ) )
17
+ return int64 ( val )
15
18
}
16
19
17
20
func Uint64ToFloat64 (val uint64 ) float64 {
18
- return * ( * float64 )( unsafe . Pointer ( & val ) )
21
+ return math . Float64frombits ( val )
19
22
}
20
23
21
24
func Int64ToUint64 (val int64 ) uint64 {
22
- return * ( * uint64 )( unsafe . Pointer ( & val ) )
25
+ return uint64 ( val )
23
26
}
24
27
25
28
func Float64ToUint64 (val float64 ) uint64 {
26
- return * ( * uint64 )( unsafe . Pointer ( & val ) )
29
+ return math . Float64bits ( val )
27
30
}
You can’t perform that action at this time.
0 commit comments