blob: abad9121c1635fd77567e456375b8b38a12d6561 [file] [log] [blame]
import SwiftOnoneSupport
struct A<T> {
func fromA(takesT takesT: T)
func fromAExtension(takesT takesT: T)
func fromProtoExtension()
}
extension A {
func fromDeprecatedProtoExtension()
}
extension A where T == String {
typealias Elem = Int
func fromAConditionalExtension(takesTIfString takesTIfString: T)
func fromProto2Extension(takesElem takesElem: Int)
}
extension A {
func fromDeprecatedConditionalProto2Extension(takesElemInt takesElemInt: Int)
}
class B<T> {
func fromB(takesT takesT: T)
typealias Elem = String
func fromProtoExtension()
func fromProto2Extension(takesElem takesElem: String)
func fromConditionalProto2Extension(takesElemIfString takesElemIfString: String)
}
extension B {
func fromDeprecatedProtoExtension()
}
class C<U, V> : B<String> where U : Equatable {
func fromC(takesUIfEquatable takesUIfEquatable: U)
typealias Elem1 = V
typealias Elem2 = U
func fromCConditionlExtension(takesU takesU: U)
func fromProto4Extension(takesElem2IfEquatable takesElem2IfEquatable: U)
func fromProto3Extension(takesElem1 takesElem1: V)
func fromProto3Extension(takesElem2 takesElem2: U)
}
extension C where U : Hashable {
func fromProto4Extension(takesElem2IfHashable takesElem2IfHashable: U)
}
struct D<T, U> {
func fromD(takesT takesT: T, takesU takesU: U)
}
extension D where T : Equatable {
typealias Item = T
}
extension D where T : Other1, T : Equatable {
func fromSomeProtoExtensionSplitConditions(takesItemIfOther1 takesItemIfOther1: T)
}
protocol Other1 {
}
[
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 0,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 7,
key.length: 17
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 26,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 33,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 35,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 45,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 50,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 56,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 63,
key.length: 6
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1AV1Txmfp",
key.offset: 71,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 79,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 84,
key.length: 14
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 99,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 106,
key.length: 6
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1AV1Txmfp",
key.offset: 114,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 122,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 127,
key.length: 18
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 151,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "A",
key.usr: "s:16UnderscoredProto1AV",
key.offset: 161,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 170,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 175,
key.length: 28
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 209,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "A",
key.usr: "s:16UnderscoredProto1AV",
key.offset: 219,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 221,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1AVAASSRszlE1Txmfp",
key.offset: 227,
key.length: 1
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "String",
key.usr: "s:SS",
key.offset: 232,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 246,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 256,
key.length: 4
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 263,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 272,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 277,
key.length: 25
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 303,
key.length: 14
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 318,
key.length: 14
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1AVAASSRszlE1Txmfp",
key.offset: 334,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 342,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 347,
key.length: 19
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 367,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 377,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 388,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 396,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "A",
key.usr: "s:16UnderscoredProto1AV",
key.offset: 406,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 415,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 420,
key.length: 40
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 461,
key.length: 12
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 474,
key.length: 12
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 488,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 496,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 502,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 504,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 514,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 519,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 525,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 532,
key.length: 6
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1BC1Txmfp",
key.offset: 540,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 548,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 558,
key.length: 4
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "String",
key.usr: "s:SS",
key.offset: 565,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 577,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 582,
key.length: 18
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 608,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 613,
key.length: 19
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 633,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 643,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "String",
key.usr: "s:SS",
key.offset: 654,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 667,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 672,
key.length: 30
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 703,
key.length: 17
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 721,
key.length: 17
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "String",
key.usr: "s:SS",
key.offset: 740,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 751,
key.length: 9
},
{
key.kind: source.lang.swift.ref.class,
key.name: "B",
key.usr: "s:16UnderscoredProto1BC",
key.offset: 761,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 770,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 775,
key.length: 28
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 809,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 815,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 817,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 820,
key.length: 1
},
{
key.kind: source.lang.swift.ref.class,
key.name: "B",
key.usr: "s:16UnderscoredProto1BC",
key.offset: 825,
key.length: 1
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "String",
key.usr: "s:SS",
key.offset: 827,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 835,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 841,
key.length: 1
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Equatable",
key.usr: "s:SQ",
key.offset: 845,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 862,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 867,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 873,
key.length: 17
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 891,
key.length: 17
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 910,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 918,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 928,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "V",
key.usr: "s:16UnderscoredProto1CC1Vq_mfp",
key.offset: 936,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 943,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 953,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 961,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 968,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 973,
key.length: 24
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 998,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1005,
key.length: 6
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 1013,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1021,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1026,
key.length: 19
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1046,
key.length: 21
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1068,
key.length: 21
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 1091,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1099,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1104,
key.length: 19
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1124,
key.length: 10
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1135,
key.length: 10
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "V",
key.usr: "s:16UnderscoredProto1CC1Vq_mfp",
key.offset: 1147,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1155,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1160,
key.length: 19
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1180,
key.length: 10
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1191,
key.length: 10
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 1203,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1209,
key.length: 9
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C",
key.usr: "s:16UnderscoredProto1CC",
key.offset: 1219,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1221,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 1227,
key.length: 1
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Hashable",
key.usr: "s:SH",
key.offset: 1231,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1247,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1252,
key.length: 19
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1272,
key.length: 20
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1293,
key.length: 20
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1CC1Uxmfp",
key.offset: 1315,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1321,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1328,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1330,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1333,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1343,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1348,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1354,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1361,
key.length: 6
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1DV1Txmfp",
key.offset: 1369,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1372,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1379,
key.length: 6
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "U",
key.usr: "s:16UnderscoredProto1DV1Uq_mfp",
key.offset: 1387,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1393,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "D",
key.usr: "s:16UnderscoredProto1DV",
key.offset: 1403,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1405,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1DVAASQRzrlE1Txmfp",
key.offset: 1411,
key.length: 1
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Equatable",
key.usr: "s:SQ",
key.offset: 1415,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1432,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1442,
key.length: 4
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1DVAASQRzrlE1Txmfp",
key.offset: 1449,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1454,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "D",
key.usr: "s:16UnderscoredProto1DV",
key.offset: 1464,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1466,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1DVAASQRzrlE1Txmfp",
key.offset: 1472,
key.length: 1
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Other1",
key.usr: "s:16UnderscoredProto6Other1P",
key.offset: 1476,
key.length: 6
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1DVAASQRzrlE1Txmfp",
key.offset: 1484,
key.length: 1
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Equatable",
key.usr: "s:SQ",
key.offset: 1488,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1505,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1510,
key.length: 37
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1548,
key.length: 17
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1566,
key.length: 17
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "T",
key.usr: "s:16UnderscoredProto1DVAASQRzrlE1Txmfp",
key.offset: 1585,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1591,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1600,
key.length: 6
}
]
[
{
key.kind: source.lang.swift.decl.struct,
key.name: "A",
key.usr: "s:16UnderscoredProto1AV",
key.generic_params: [
{
key.name: "T"
}
],
key.offset: 26,
key.length: 123,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>A</decl.name>&lt;<decl.generic_type_param usr=\"s:16UnderscoredProto1AV1Txmfp\"><decl.generic_type_param.name>T</decl.generic_type_param.name></decl.generic_type_param>&gt;</decl.struct>",
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromA(takesT:)",
key.usr: "s:16UnderscoredProto1AV5fromA6takesTyx_tF",
key.offset: 45,
key.length: 28,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromA</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesT</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1AV1Txmfp\">T</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesT",
key.name: "takesT",
key.offset: 71,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromAExtension(takesT:)",
key.usr: "s:16UnderscoredProto1AV14fromAExtension6takesTyx_tF",
key.offset: 79,
key.length: 37,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromAExtension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesT</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1AV1Txmfp\">T</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesT",
key.name: "takesT",
key.offset: 114,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProtoExtension()",
key.usr: "s:16UnderscoredProto01_aB0PAAE04fromB9ExtensionyyF::SYNTHESIZED::s:16UnderscoredProto1AV",
key.original_usr: "s:16UnderscoredProto01_aB0PAAE04fromB9ExtensionyyF",
key.offset: 122,
key.length: 25,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProtoExtension</decl.name>()</decl.function.method.instance>"
}
]
},
{
key.kind: source.lang.swift.decl.extension.struct,
key.offset: 151,
key.length: 56,
key.fully_annotated_decl: "<syntaxtype.keyword>extension</syntaxtype.keyword> <ref.struct usr=\"s:16UnderscoredProto1AV\">A</ref.struct>",
key.extends: {
key.kind: source.lang.swift.ref.struct,
key.name: "A",
key.usr: "s:16UnderscoredProto1AV"
},
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromDeprecatedProtoExtension()",
key.usr: "s:16UnderscoredProto01_aB0PAAE014fromDeprecatedB9ExtensionyyF::SYNTHESIZED::s:16UnderscoredProto1AV",
key.original_usr: "s:16UnderscoredProto01_aB0PAAE014fromDeprecatedB9ExtensionyyF",
key.offset: 170,
key.length: 35,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromDeprecatedProtoExtension</decl.name>()</decl.function.method.instance>"
}
],
key.attributes: [
{
key.kind: source.lang.swift.attribute.availability,
key.is_deprecated: 1
}
],
key.is_deprecated: 1
},
{
key.kind: source.lang.swift.decl.extension.struct,
key.generic_requirements: [
{
key.description: "T == String"
}
],
key.offset: 209,
key.length: 185,
key.fully_annotated_decl: "<decl.extension.struct>extension <decl.name><ref.struct usr=\"s:16UnderscoredProto1AV\">A</ref.struct></decl.name> : <ref.protocol usr=\"s:16UnderscoredProto01_A6Proto2P\">_UnderscoredProto2</ref.protocol> <syntaxtype.keyword>where</syntaxtype.keyword> <decl.generic_type_requirement><ref.generic_type_param usr=\"s:16UnderscoredProto1AVAASSRszlE1Txmfp\">T</ref.generic_type_param> == <ref.struct usr=\"s:SS\">String</ref.struct></decl.generic_type_requirement></decl.extension.struct>",
key.conforms: [
{
key.kind: source.lang.swift.ref.protocol,
key.name: "_UnderscoredProto2",
key.usr: "s:16UnderscoredProto01_A6Proto2P"
}
],
key.extends: {
key.kind: source.lang.swift.ref.struct,
key.name: "A",
key.usr: "s:16UnderscoredProto1AV"
},
key.entities: [
{
key.kind: source.lang.swift.decl.typealias,
key.name: "Elem",
key.usr: "s:16UnderscoredProto1AVAASSRszlE4Elema",
key.offset: 246,
key.length: 20,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <decl.name>Elem</decl.name> = <ref.struct usr=\"s:Si\">Int</ref.struct></decl.typealias>",
key.conforms: [
{
key.kind: source.lang.swift.ref.protocol,
key.name: "FixedWidthInteger",
key.usr: "s:s17FixedWidthIntegerP"
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "SignedInteger",
key.usr: "s:SZ"
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "_ExpressibleByBuiltinIntegerLiteral",
key.usr: "s:s35_ExpressibleByBuiltinIntegerLiteralP"
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromAConditionalExtension(takesTIfString:)",
key.usr: "s:16UnderscoredProto1AVAASSRszlE25fromAConditionalExtension14takesTIfStringySS_tF",
key.offset: 272,
key.length: 64,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromAConditionalExtension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesTIfString</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1AVAASSRszlE1Txmfp\">T</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesTIfString",
key.name: "takesTIfString",
key.offset: 334,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProto2Extension(takesElem:)",
key.usr: "s:16UnderscoredProto01_A6Proto2PAAE04fromC9Extension9takesElemy0G0Qz_tF::SYNTHESIZED::s:16UnderscoredProto1AV",
key.original_usr: "s:16UnderscoredProto01_A6Proto2PAAE04fromC9Extension9takesElemy0G0Qz_tF",
key.offset: 342,
key.length: 50,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProto2Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElem</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElem",
key.name: "takesElem",
key.offset: 388,
key.length: 3
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.struct,
key.offset: 396,
key.length: 98,
key.fully_annotated_decl: "<syntaxtype.keyword>extension</syntaxtype.keyword> <ref.struct usr=\"s:16UnderscoredProto1AV\">A</ref.struct>",
key.extends: {
key.kind: source.lang.swift.ref.struct,
key.name: "A",
key.usr: "s:16UnderscoredProto1AV"
},
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromDeprecatedConditionalProto2Extension(takesElemInt:)",
key.usr: "s:16UnderscoredProto01_A6Proto2PAASi4ElemRtzrlE025fromDeprecatedConditionalC9Extension05takesD3IntySi_tF::SYNTHESIZED::s:16UnderscoredProto1AV",
key.original_usr: "s:16UnderscoredProto01_A6Proto2PAASi4ElemRtzrlE025fromDeprecatedConditionalC9Extension05takesD3IntySi_tF",
key.offset: 415,
key.length: 77,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromDeprecatedConditionalProto2Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElemInt</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElemInt",
key.name: "takesElemInt",
key.offset: 488,
key.length: 3
}
]
}
],
key.attributes: [
{
key.kind: source.lang.swift.attribute.availability,
key.is_deprecated: 1
}
],
key.is_deprecated: 1
},
{
key.kind: source.lang.swift.decl.class,
key.name: "B",
key.usr: "s:16UnderscoredProto1BC",
key.generic_params: [
{
key.name: "T"
}
],
key.offset: 496,
key.length: 253,
key.fully_annotated_decl: "<decl.class><syntaxtype.keyword>class</syntaxtype.keyword> <decl.name>B</decl.name>&lt;<decl.generic_type_param usr=\"s:16UnderscoredProto1BC1Txmfp\"><decl.generic_type_param.name>T</decl.generic_type_param.name></decl.generic_type_param>&gt; : <ref.protocol usr=\"s:16UnderscoredProto01_aB0P\">_UnderscoredProto</ref.protocol></decl.class>",
key.conforms: [
{
key.kind: source.lang.swift.ref.protocol,
key.name: "_UnderscoredProto",
key.usr: "s:16UnderscoredProto01_aB0P"
}
],
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromB(takesT:)",
key.usr: "s:16UnderscoredProto1BC5fromB6takesTyx_tF",
key.offset: 514,
key.length: 28,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromB</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesT</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1BC1Txmfp\">T</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesT",
key.name: "takesT",
key.offset: 540,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.typealias,
key.name: "Elem",
key.usr: "s:16UnderscoredProto1BC4Elema",
key.offset: 548,
key.length: 23,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <decl.name>Elem</decl.name> = <ref.struct usr=\"s:SS\">String</ref.struct></decl.typealias>"
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProtoExtension()",
key.usr: "s:16UnderscoredProto01_aB0PAAE04fromB9ExtensionyyF::SYNTHESIZED::s:16UnderscoredProto1BC",
key.original_usr: "s:16UnderscoredProto01_aB0PAAE04fromB9ExtensionyyF",
key.offset: 577,
key.length: 25,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProtoExtension</decl.name>()</decl.function.method.instance>"
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProto2Extension(takesElem:)",
key.usr: "s:16UnderscoredProto01_A6Proto2PAAE04fromC9Extension9takesElemy0G0Qz_tF::SYNTHESIZED::s:16UnderscoredProto1BC",
key.original_usr: "s:16UnderscoredProto01_A6Proto2PAAE04fromC9Extension9takesElemy0G0Qz_tF",
key.offset: 608,
key.length: 53,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProto2Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElem</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.struct usr=\"s:SS\">String</ref.struct></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElem",
key.name: "takesElem",
key.offset: 654,
key.length: 6
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromConditionalProto2Extension(takesElemIfString:)",
key.usr: "s:16UnderscoredProto01_A6Proto2PAASS4ElemRtzrlE015fromConditionalC9Extension05takesD8IfStringySS_tF::SYNTHESIZED::s:16UnderscoredProto1BC",
key.original_usr: "s:16UnderscoredProto01_A6Proto2PAASS4ElemRtzrlE015fromConditionalC9Extension05takesD8IfStringySS_tF",
key.offset: 667,
key.length: 80,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromConditionalProto2Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElemIfString</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.struct usr=\"s:SS\">String</ref.struct></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElemIfString",
key.name: "takesElemIfString",
key.offset: 740,
key.length: 6
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.class,
key.offset: 751,
key.length: 56,
key.fully_annotated_decl: "<syntaxtype.keyword>extension</syntaxtype.keyword> <ref.class usr=\"s:16UnderscoredProto1BC\">B</ref.class>",
key.extends: {
key.kind: source.lang.swift.ref.class,
key.name: "B",
key.usr: "s:16UnderscoredProto1BC"
},
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromDeprecatedProtoExtension()",
key.usr: "s:16UnderscoredProto01_aB0PAAE014fromDeprecatedB9ExtensionyyF::SYNTHESIZED::s:16UnderscoredProto1BC",
key.original_usr: "s:16UnderscoredProto01_aB0PAAE014fromDeprecatedB9ExtensionyyF",
key.offset: 770,
key.length: 35,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromDeprecatedProtoExtension</decl.name>()</decl.function.method.instance>"
}
],
key.attributes: [
{
key.kind: source.lang.swift.attribute.availability,
key.is_deprecated: 1
}
],
key.is_deprecated: 1
},
{
key.kind: source.lang.swift.decl.class,
key.name: "C",
key.usr: "s:16UnderscoredProto1CC",
key.generic_params: [
{
key.name: "U"
},
{
key.name: "V"
}
],
key.generic_requirements: [
{
key.description: "U : Equatable"
}
],
key.offset: 809,
key.length: 398,
key.fully_annotated_decl: "<decl.class><syntaxtype.keyword>class</syntaxtype.keyword> <decl.name>C</decl.name>&lt;<decl.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\"><decl.generic_type_param.name>U</decl.generic_type_param.name></decl.generic_type_param>, <decl.generic_type_param usr=\"s:16UnderscoredProto1CC1Vq_mfp\"><decl.generic_type_param.name>V</decl.generic_type_param.name></decl.generic_type_param>&gt; : <ref.class usr=\"s:16UnderscoredProto1BC\">B</ref.class>&lt;<ref.struct usr=\"s:SS\">String</ref.struct>&gt; <syntaxtype.keyword>where</syntaxtype.keyword> <decl.generic_type_requirement><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param> : <ref.protocol usr=\"s:SQ\">Equatable</ref.protocol></decl.generic_type_requirement></decl.class>",
key.inherits: [
{
key.kind: source.lang.swift.ref.class,
key.name: "B",
key.usr: "s:16UnderscoredProto1BC"
}
],
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromC(takesUIfEquatable:)",
key.usr: "s:16UnderscoredProto1CC5fromC17takesUIfEquatableyx_tF",
key.offset: 862,
key.length: 50,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromC</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesUIfEquatable</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesUIfEquatable",
key.name: "takesUIfEquatable",
key.offset: 910,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.typealias,
key.name: "Elem1",
key.usr: "s:16UnderscoredProto1CC5Elem1a",
key.offset: 918,
key.length: 19,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <decl.name>Elem1</decl.name> = <ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Vq_mfp\">V</ref.generic_type_param></decl.typealias>",
key.conforms: [
{
key.kind: source.lang.swift.ref.associatedtype,
key.name: "Elem1",
key.usr: "s:16UnderscoredProto01_A6Proto3P5Elem1Qa"
}
]
},
{
key.kind: source.lang.swift.decl.typealias,
key.name: "Elem2",
key.usr: "s:16UnderscoredProto1CC5Elem2a",
key.offset: 943,
key.length: 19,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <decl.name>Elem2</decl.name> = <ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param></decl.typealias>",
key.conforms: [
{
key.kind: source.lang.swift.ref.associatedtype,
key.name: "Elem2",
key.usr: "s:16UnderscoredProto01_A6Proto3P5Elem2Qa"
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromCConditionlExtension(takesU:)",
key.usr: "s:16UnderscoredProto1CC24fromCConditionlExtension6takesUyx_tF",
key.offset: 968,
key.length: 47,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromCConditionlExtension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesU</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesU",
key.name: "takesU",
key.offset: 1013,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProto4Extension(takesElem2IfEquatable:)",
key.usr: "s:16UnderscoredProto01_A6Proto4PAAE04fromC9Extension21takesElem2IfEquatabley0G0Qz_tF::SYNTHESIZED::s:16UnderscoredProto1CC",
key.original_usr: "s:16UnderscoredProto01_A6Proto4PAAE04fromC9Extension21takesElem2IfEquatabley0G0Qz_tF",
key.offset: 1021,
key.length: 72,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProto4Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElem2IfEquatable</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElem2IfEquatable",
key.name: "takesElem2IfEquatable",
key.offset: 1091,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProto3Extension(takesElem1:)",
key.usr: "s:16UnderscoredProto01_A6Proto3PAAE04fromC9Extension10takesElem1y0G0Qz_tF::SYNTHESIZED::s:16UnderscoredProto1CC",
key.original_usr: "s:16UnderscoredProto01_A6Proto3PAAE04fromC9Extension10takesElem1y0G0Qz_tF",
key.offset: 1099,
key.length: 50,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProto3Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElem1</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Vq_mfp\">V</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElem1",
key.name: "takesElem1",
key.offset: 1147,
key.length: 1
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProto3Extension(takesElem2:)",
key.usr: "s:16UnderscoredProto01_A6Proto3PAAE04fromC9Extension10takesElem2y0G0Qz_tF::SYNTHESIZED::s:16UnderscoredProto1CC",
key.original_usr: "s:16UnderscoredProto01_A6Proto3PAAE04fromC9Extension10takesElem2y0G0Qz_tF",
key.offset: 1155,
key.length: 50,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProto3Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElem2</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElem2",
key.name: "takesElem2",
key.offset: 1203,
key.length: 1
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.class,
key.generic_requirements: [
{
key.description: "U : Hashable"
}
],
key.offset: 1209,
key.length: 110,
key.fully_annotated_decl: "<syntaxtype.keyword>extension</syntaxtype.keyword> <ref.class usr=\"s:16UnderscoredProto1CC\">C</ref.class> <syntaxtype.keyword>where</syntaxtype.keyword> <decl.generic_type_requirement><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param> : <ref.protocol usr=\"s:SH\">Hashable</ref.protocol></decl.generic_type_requirement>",
key.extends: {
key.kind: source.lang.swift.ref.class,
key.name: "C",
key.usr: "s:16UnderscoredProto1CC"
},
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromProto4Extension(takesElem2IfHashable:)",
key.usr: "s:16UnderscoredProto01_A6Proto4PAASH5Elem2RpzrlE04fromC9Extension05takesD10IfHashableyAE_tF::SYNTHESIZED::s:16UnderscoredProto1CC",
key.original_usr: "s:16UnderscoredProto01_A6Proto4PAASH5Elem2RpzrlE04fromC9Extension05takesD10IfHashableyAE_tF",
key.offset: 1247,
key.length: 70,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromProto4Extension</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesElem2IfHashable</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1CC1Uxmfp\">U</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesElem2IfHashable",
key.name: "takesElem2IfHashable",
key.offset: 1315,
key.length: 1
}
]
}
]
},
{
key.kind: source.lang.swift.decl.struct,
key.name: "D",
key.usr: "s:16UnderscoredProto1DV",
key.generic_params: [
{
key.name: "T"
},
{
key.name: "U"
}
],
key.offset: 1321,
key.length: 70,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>D</decl.name>&lt;<decl.generic_type_param usr=\"s:16UnderscoredProto1DV1Txmfp\"><decl.generic_type_param.name>T</decl.generic_type_param.name></decl.generic_type_param>, <decl.generic_type_param usr=\"s:16UnderscoredProto1DV1Uq_mfp\"><decl.generic_type_param.name>U</decl.generic_type_param.name></decl.generic_type_param>&gt;</decl.struct>",
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromD(takesT:takesU:)",
key.usr: "s:16UnderscoredProto1DV5fromD6takesT0D1Uyx_q_tF",
key.offset: 1343,
key.length: 46,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromD</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesT</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1DV1Txmfp\">T</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>, <decl.var.parameter><decl.var.parameter.argument_label>takesU</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1DV1Uq_mfp\">U</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesT",
key.name: "takesT",
key.offset: 1369,
key.length: 1
},
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesU",
key.name: "takesU",
key.offset: 1387,
key.length: 1
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.struct,
key.generic_requirements: [
{
key.description: "T : Equatable"
}
],
key.offset: 1393,
key.length: 59,
key.fully_annotated_decl: "<decl.extension.struct>extension <decl.name><ref.struct usr=\"s:16UnderscoredProto1DV\">D</ref.struct></decl.name> : <ref.protocol usr=\"s:16UnderscoredProto05_SomeB0P\">_SomeProto</ref.protocol> <syntaxtype.keyword>where</syntaxtype.keyword> <decl.generic_type_requirement><ref.generic_type_param usr=\"s:16UnderscoredProto1DVAASQRzrlE1Txmfp\">T</ref.generic_type_param> : <ref.protocol usr=\"s:SQ\">Equatable</ref.protocol></decl.generic_type_requirement></decl.extension.struct>",
key.conforms: [
{
key.kind: source.lang.swift.ref.protocol,
key.name: "_SomeProto",
key.usr: "s:16UnderscoredProto05_SomeB0P"
}
],
key.extends: {
key.kind: source.lang.swift.ref.struct,
key.name: "D",
key.usr: "s:16UnderscoredProto1DV"
},
key.entities: [
{
key.kind: source.lang.swift.decl.typealias,
key.name: "Item",
key.usr: "s:16UnderscoredProto1DVAASQRzrlE4Itema",
key.offset: 1432,
key.length: 18,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <decl.name>Item</decl.name> = <ref.generic_type_param usr=\"s:16UnderscoredProto1DVAASQRzrlE1Txmfp\">T</ref.generic_type_param></decl.typealias>",
key.conforms: [
{
key.kind: source.lang.swift.ref.associatedtype,
key.name: "Item",
key.usr: "s:16UnderscoredProto05_SomeB0P4ItemQa"
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.struct,
key.generic_requirements: [
{
key.description: "T : Other1"
},
{
key.description: "T : Equatable"
}
],
key.offset: 1454,
key.length: 135,
key.fully_annotated_decl: "<syntaxtype.keyword>extension</syntaxtype.keyword> <ref.struct usr=\"s:16UnderscoredProto1DV\">D</ref.struct> <syntaxtype.keyword>where</syntaxtype.keyword> <decl.generic_type_requirement><ref.generic_type_param usr=\"s:16UnderscoredProto1DVAASQRzrlE1Txmfp\">T</ref.generic_type_param> : <ref.protocol usr=\"s:16UnderscoredProto6Other1P\">Other1</ref.protocol></decl.generic_type_requirement>, <decl.generic_type_requirement><ref.generic_type_param usr=\"s:16UnderscoredProto1DVAASQRzrlE1Txmfp\">T</ref.generic_type_param> : <ref.protocol usr=\"s:SQ\">Equatable</ref.protocol></decl.generic_type_requirement>",
key.extends: {
key.kind: source.lang.swift.ref.struct,
key.name: "D",
key.usr: "s:16UnderscoredProto1DV"
},
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "fromSomeProtoExtensionSplitConditions(takesItemIfOther1:)",
key.usr: "s:16UnderscoredProto05_SomeB0PA2A6Other14ItemRpzrlE04fromcB24ExtensionSplitConditions05takese2IfD0yAF_tF::SYNTHESIZED::s:16UnderscoredProto1DV",
key.original_usr: "s:16UnderscoredProto05_SomeB0PA2A6Other14ItemRpzrlE04fromcB24ExtensionSplitConditions05takese2IfD0yAF_tF",
key.offset: 1505,
key.length: 82,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fromSomeProtoExtensionSplitConditions</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>takesItemIfOther1</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.generic_type_param usr=\"s:16UnderscoredProto1DVAASQRzrlE1Txmfp\">T</ref.generic_type_param></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "takesItemIfOther1",
key.name: "takesItemIfOther1",
key.offset: 1585,
key.length: 1
}
]
}
]
},
{
key.kind: source.lang.swift.decl.protocol,
key.name: "Other1",
key.usr: "s:16UnderscoredProto6Other1P",
key.offset: 1591,
key.length: 19,
key.fully_annotated_decl: "<decl.protocol><syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>Other1</decl.name></decl.protocol>"
}
]