@@ -33,7 +33,7 @@ internal struct BinaryDecoder: Decoder {
3333 // Field number for last-parsed field tag
3434 private var fieldNumber : Int = 0
3535 // Collection of extension fields for this decode
36- private var extensions : ExtensionMap ?
36+ private var extensions : ( any ExtensionMap ) ?
3737 // The current group number. See decodeFullGroup(group:fieldNumber:) for how
3838 // this is used.
3939 private var groupFieldNumber : Int ?
@@ -54,7 +54,7 @@ internal struct BinaryDecoder: Decoder {
5454 forReadingFrom pointer: UnsafeRawPointer ,
5555 count: Int ,
5656 options: BinaryDecodingOptions ,
57- extensions: ExtensionMap ? = nil
57+ extensions: ( any ExtensionMap ) ? = nil
5858 ) {
5959 // Assuming baseAddress is not nil.
6060 p = pointer
@@ -1088,7 +1088,7 @@ internal struct BinaryDecoder: Decoder {
10881088
10891089 internal mutating func decodeExtensionField(
10901090 values: inout ExtensionFieldValueSet ,
1091- messageType: Message . Type ,
1091+ messageType: any Message . Type ,
10921092 fieldNumber: Int
10931093 ) throws {
10941094 if let ext = extensions ? [ messageType, fieldNumber] {
@@ -1102,9 +1102,9 @@ internal struct BinaryDecoder: Decoder {
11021102 /// Helper to reuse between Extension decoding and MessageSet Extension decoding.
11031103 private mutating func decodeExtensionField(
11041104 values: inout ExtensionFieldValueSet ,
1105- messageType: Message . Type ,
1105+ messageType: any Message . Type ,
11061106 fieldNumber: Int ,
1107- messageExtension ext: AnyMessageExtension
1107+ messageExtension ext: any AnyMessageExtension
11081108 ) throws {
11091109 assert ( !consumed)
11101110 assert ( fieldNumber == ext. fieldNumber)
@@ -1129,7 +1129,7 @@ internal struct BinaryDecoder: Decoder {
11291129
11301130 internal mutating func decodeExtensionFieldsAsMessageSet(
11311131 values: inout ExtensionFieldValueSet ,
1132- messageType: Message . Type
1132+ messageType: any Message . Type
11331133 ) throws {
11341134 // Spin looking for the Item group, everything else will end up in unknown fields.
11351135 while let fieldNumber = try self . nextFieldNumber ( ) {
@@ -1173,14 +1173,14 @@ internal struct BinaryDecoder: Decoder {
11731173
11741174 private mutating func decodeMessageSetItem(
11751175 values: inout ExtensionFieldValueSet ,
1176- messageType: Message . Type
1176+ messageType: any Message . Type
11771177 ) throws -> DecodeMessageSetItemResult {
11781178 // This is loosely based on the C++:
11791179 // ExtensionSet::ParseMessageSetItem()
11801180 // WireFormat::ParseAndMergeMessageSetItem()
11811181 // (yes, there have two versions that are almost the same)
11821182
1183- var msgExtension : AnyMessageExtension ?
1183+ var msgExtension : ( any AnyMessageExtension ) ?
11841184 var fieldData : Data ?
11851185
11861186 // In this loop, if wire types are wrong, things don't decode,
0 commit comments