@@ -33,7 +33,7 @@ internal struct BinaryDecoder: Decoder {
33
33
// Field number for last-parsed field tag
34
34
private var fieldNumber : Int = 0
35
35
// Collection of extension fields for this decode
36
- private var extensions : ExtensionMap ?
36
+ private var extensions : ( any ExtensionMap ) ?
37
37
// The current group number. See decodeFullGroup(group:fieldNumber:) for how
38
38
// this is used.
39
39
private var groupFieldNumber : Int ?
@@ -54,7 +54,7 @@ internal struct BinaryDecoder: Decoder {
54
54
forReadingFrom pointer: UnsafeRawPointer ,
55
55
count: Int ,
56
56
options: BinaryDecodingOptions ,
57
- extensions: ExtensionMap ? = nil
57
+ extensions: ( any ExtensionMap ) ? = nil
58
58
) {
59
59
// Assuming baseAddress is not nil.
60
60
p = pointer
@@ -1088,7 +1088,7 @@ internal struct BinaryDecoder: Decoder {
1088
1088
1089
1089
internal mutating func decodeExtensionField(
1090
1090
values: inout ExtensionFieldValueSet ,
1091
- messageType: Message . Type ,
1091
+ messageType: any Message . Type ,
1092
1092
fieldNumber: Int
1093
1093
) throws {
1094
1094
if let ext = extensions ? [ messageType, fieldNumber] {
@@ -1102,9 +1102,9 @@ internal struct BinaryDecoder: Decoder {
1102
1102
/// Helper to reuse between Extension decoding and MessageSet Extension decoding.
1103
1103
private mutating func decodeExtensionField(
1104
1104
values: inout ExtensionFieldValueSet ,
1105
- messageType: Message . Type ,
1105
+ messageType: any Message . Type ,
1106
1106
fieldNumber: Int ,
1107
- messageExtension ext: AnyMessageExtension
1107
+ messageExtension ext: any AnyMessageExtension
1108
1108
) throws {
1109
1109
assert ( !consumed)
1110
1110
assert ( fieldNumber == ext. fieldNumber)
@@ -1129,7 +1129,7 @@ internal struct BinaryDecoder: Decoder {
1129
1129
1130
1130
internal mutating func decodeExtensionFieldsAsMessageSet(
1131
1131
values: inout ExtensionFieldValueSet ,
1132
- messageType: Message . Type
1132
+ messageType: any Message . Type
1133
1133
) throws {
1134
1134
// Spin looking for the Item group, everything else will end up in unknown fields.
1135
1135
while let fieldNumber = try self . nextFieldNumber ( ) {
@@ -1173,14 +1173,14 @@ internal struct BinaryDecoder: Decoder {
1173
1173
1174
1174
private mutating func decodeMessageSetItem(
1175
1175
values: inout ExtensionFieldValueSet ,
1176
- messageType: Message . Type
1176
+ messageType: any Message . Type
1177
1177
) throws -> DecodeMessageSetItemResult {
1178
1178
// This is loosely based on the C++:
1179
1179
// ExtensionSet::ParseMessageSetItem()
1180
1180
// WireFormat::ParseAndMergeMessageSetItem()
1181
1181
// (yes, there have two versions that are almost the same)
1182
1182
1183
- var msgExtension : AnyMessageExtension ?
1183
+ var msgExtension : ( any AnyMessageExtension ) ?
1184
1184
var fieldData : Data ?
1185
1185
1186
1186
// In this loop, if wire types are wrong, things don't decode,
0 commit comments