File tree Expand file tree Collapse file tree 4 files changed +17
-14
lines changed
PlaygroundLogger/PlaygroundLogger Expand file tree Collapse file tree 4 files changed +17
-14
lines changed Original file line number Diff line number Diff line change @@ -18,9 +18,9 @@ final class BytesStorage {
18
18
var index : Int
19
19
20
20
init ( _ _bytes: NSData ) {
21
- data = _bytes
22
- bytes = UnsafeMutablePointer ( data. bytes. bindMemory ( to: UInt8 . self, capacity: data. length) )
23
- index = 0
21
+ data = _bytes
22
+ bytes = UnsafeMutablePointer ( mutating : data. bytes. bindMemory ( to: UInt8 . self, capacity: data. length) )
23
+ index = 0
24
24
}
25
25
26
26
func get( ) -> UInt8 {
Original file line number Diff line number Diff line change @@ -16,10 +16,10 @@ extension Double : Serializable {
16
16
var udPtr = UnsafeMutablePointer< Double> . allocate( capacity: 1 )
17
17
defer { udPtr. deallocate ( capacity: 1 ) }
18
18
udPtr. pointee = self
19
- let ubPtr = UnsafeMutablePointer < UInt8 > ( udPtr)
19
+ let ubPtr = UnsafeMutableRawPointer ( udPtr)
20
20
var arr = Array < UInt8 > ( repeating: 0 , count: 8 )
21
21
8 . doFor {
22
- arr [ $0] = ubPtr [ $0 ]
22
+ arr [ $0] = ubPtr. load ( fromByteOffset : $0 , as : UInt8 . self )
23
23
}
24
24
return arr
25
25
}
@@ -31,7 +31,8 @@ extension Double : Serializable {
31
31
8 . doFor {
32
32
ubPtr [ $0] = storage. get ( )
33
33
}
34
- let udPtr = UnsafeMutablePointer < Double > ( ubPtr)
34
+ let udPtr = UnsafeMutableRawPointer ( ubPtr) . bindMemory (
35
+ to: Double . self, capacity: 1 )
35
36
self = udPtr. pointee
36
37
}
37
38
Original file line number Diff line number Diff line change @@ -16,10 +16,10 @@ extension Float : Serializable {
16
16
var udPtr = UnsafeMutablePointer< Float> . allocate( capacity: 1 )
17
17
defer { udPtr. deallocate ( capacity: 1 ) }
18
18
udPtr. pointee = self
19
- let ubPtr = UnsafeMutablePointer < UInt8 > ( udPtr)
19
+ let ubPtr = UnsafeMutableRawPointer ( udPtr)
20
20
var arr = Array < UInt8 > ( repeating: 0 , count: 4 )
21
21
4 . doFor {
22
- arr [ $0] = ubPtr [ $0 ]
22
+ arr [ $0] = ubPtr. load ( fromByteOffset : $0 , as : UInt8 . self )
23
23
}
24
24
return arr
25
25
}
@@ -31,7 +31,8 @@ extension Float : Serializable {
31
31
4 . doFor {
32
32
ubPtr [ $0] = storage. get ( )
33
33
}
34
- let udPtr = UnsafeMutablePointer < Float > ( ubPtr)
34
+ let udPtr = UnsafeMutableRawPointer ( ubPtr) . bindMemory (
35
+ to: Float . self, capacity: 1 )
35
36
self = udPtr. pointee
36
37
}
37
38
Original file line number Diff line number Diff line change @@ -23,9 +23,9 @@ extension UInt64 : Serializable {
23
23
var up_int = UnsafeMutablePointer< UInt64> . allocate( capacity: 1 )
24
24
defer { up_int. deallocate ( capacity: 1 ) }
25
25
up_int. pointee = self
26
- var up_byte : UnsafePointer < UInt8 > = UnsafePointer ( up_int)
26
+ var up_byte = UnsafeRawPointer ( up_int)
27
27
8 . doFor {
28
- ret. append ( up_byte. pointee )
28
+ ret. append ( up_byte. load ( as : UInt8 . self ) )
29
29
up_byte = up_byte. successor ( )
30
30
}
31
31
return ret
@@ -36,9 +36,9 @@ extension UInt64 : Serializable {
36
36
var up_int = UnsafeMutablePointer< UInt64> . allocate( capacity: 1 )
37
37
defer { up_int. deallocate ( capacity: 1 ) }
38
38
up_int. pointee = self
39
- var up_byte : UnsafePointer < UInt8 > = UnsafePointer ( up_int)
39
+ var up_byte = UnsafeRawPointer ( up_int)
40
40
8 . doFor {
41
- ret. append ( up_byte. pointee )
41
+ ret. append ( up_byte. load ( as : UInt8 . self ) )
42
42
up_byte = up_byte. successor ( )
43
43
}
44
44
return ret
@@ -64,7 +64,8 @@ extension UInt64 : Serializable {
64
64
8 . doFor {
65
65
up_byte [ $0] = eightBytesStorage. get ( )
66
66
}
67
- let up_int : UnsafePointer < UInt64 > = UnsafePointer ( up_byte)
67
+ let up_int : UnsafePointer < UInt64 > = UnsafeRawPointer ( up_byte) . bindMemory (
68
+ to: UInt64 . self, capacity: 1 )
68
69
self = up_int. pointee
69
70
}
70
71
}
You can’t perform that action at this time.
0 commit comments