Skip to content

Commit d41af61

Browse files
committed
[swiftSyntax] Store userInfo inside ByteTreeReader as an UnsafePointer
1 parent 9473182 commit d41af61

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

tools/SwiftSyntax/ByteTreeDeserialization.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -149,10 +149,10 @@ struct ByteTreeReader {
149149
/// A pointer pointing to the next byte of serialized data to be read
150150
private var pointer: UnsafeRawPointer
151151

152-
private var userInfo: [ByteTreeUserInfoKey: Any]
152+
private var userInfo: UnsafePointer<[ByteTreeUserInfoKey: Any]>
153153

154154
private init(pointer: UnsafeRawPointer,
155-
userInfo: [ByteTreeUserInfoKey: Any]) {
155+
userInfo: UnsafePointer<[ByteTreeUserInfoKey: Any]>) {
156156
self.pointer = pointer
157157
self.userInfo = userInfo
158158
}
@@ -172,7 +172,7 @@ struct ByteTreeReader {
172172
/// failed
173173
static func read<T: ByteTreeObjectDecodable>(
174174
_ rootObjectType: T.Type, from pointer: UnsafeRawPointer,
175-
userInfo: [ByteTreeUserInfoKey: Any],
175+
userInfo: UnsafePointer<[ByteTreeUserInfoKey: Any]>,
176176
protocolVersionValidation: (ProtocolVersion) -> Bool
177177
) throws -> T {
178178
var reader = ByteTreeReader(pointer: pointer, userInfo: userInfo)
@@ -192,7 +192,7 @@ struct ByteTreeReader {
192192
/// - Returns: The deserialized tree
193193
static func read<T: ByteTreeObjectDecodable>(
194194
_ rootObjectType: T.Type, from data: Data,
195-
userInfo: [ByteTreeUserInfoKey: Any],
195+
userInfo: UnsafePointer<[ByteTreeUserInfoKey: Any]>,
196196
protocolVersionValidation versionValidate: (ProtocolVersion) -> Bool
197197
) throws -> T {
198198
return try data.withUnsafeBytes { (pointer: UnsafePointer<UInt8>) in
@@ -273,7 +273,7 @@ struct ByteTreeReader {
273273
objectReader.finalize()
274274
}
275275
return T.read(from: &objectReader, numFields: numFields,
276-
userInfo: &userInfo)
276+
userInfo: userInfo)
277277
}
278278

279279
/// Read the next field in the tree as a scalar of the specified type.
@@ -287,7 +287,7 @@ struct ByteTreeReader {
287287
defer {
288288
pointer = pointer.advanced(by: fieldSize)
289289
}
290-
return T.read(from: pointer, size: fieldSize, userInfo: &userInfo)
290+
return T.read(from: pointer, size: fieldSize, userInfo: userInfo)
291291
}
292292

293293
/// Discard the next scalar field, advancing the pointer to the next field

tools/SwiftSyntax/SwiftSyntax.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ public final class SyntaxTreeDeserializer {
7979
userInfo[.rawSyntaxDecodedCallback] = self.addToLookupTable
8080
userInfo[.omittedNodeLookupFunction] = self.lookupNode
8181
return try ByteTreeReader.read(RawSyntax.self, from: data,
82-
userInfo: userInfo) {
82+
userInfo: &userInfo) {
8383
(version: ByteTreeReader.ProtocolVersion) in
8484
return version == 1
8585
}

0 commit comments

Comments
 (0)