import SwiftOnoneSupport class C1 : cake.Prot { typealias Element = Int var p: Int func foo() func foo1(i0 i0: Int, i1 i1: Int) subscript(_ index: Int) -> Int { get } subscript(index i: Float) -> Int { get } enum C1Cases : Int { case case1 } func extfoo() func foo1() subscript(_ index: Int) -> Int { get } } extension C1 { func addition() } extension C1 : cake.P4 { func C1foo() struct C1S1 { func C1S1foo(a a: cake.P4) } } extension C1.C1Cases { @inlinable var hashValue: Int { get } @inlinable func hash(into hasher: inout Hasher) static func != (_ lhs: C1.C1Cases, _ rhs: C1.C1Cases) -> Bool } class C2 : cake.C1 { func C2foo() enum C1Cases : Int { case case1 } func extfoo() func foo1() subscript(_ index: Int) -> Int { get } } extension C2 { func addition() } extension C2 : P4 { func C1foo() struct C1S1 { func C1S1foo(a a: P4) } } enum MyEnum : Int { case Blah @inlinable var hashValue: Int { get } @inlinable func hash(into hasher: inout Hasher) static func != (_ lhs: MyEnum, _ rhs: MyEnum) -> Bool } @objc protocol P2 { @objc optional func foo1() } protocol P3 { associatedtype T } protocol P4 { } protocol P5 { associatedtype Element } protocol P6 : cake.P5 { } extension P6 { var null: Self.Element? { get } } protocol Prot { associatedtype Element var p: Int { get } func foo() func foo1() } extension Prot { func foo1() subscript(_ index: Int) -> Int { get } } extension Prot where Self.Element == Int { func extfoo() } struct S1 { enum SE { case a case b case c } func foo1() struct S2 { let b: Int } } extension S1.SE { static func != (_ lhs: S1.SE, _ rhs: S1.SE) -> Bool } struct S2 : cake.P3 { typealias T = cake.S2 } struct S3 : cake.P5 where Wrapped : cake.P5 { typealias Element = Wrapped.Element } extension S3 { var null: Wrapped.Element? { get } } func genfoo(x ix: T1, y iy: T2) where T1 : cake.Prot, T2 : cake.C1, T1.Element == Int [ { 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: 5 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 32, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 37, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP", key.offset: 42, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 54, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 64, key.length: 7 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 74, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 83, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 87, key.length: 1 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 90, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 99, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 104, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 115, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 120, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 125, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 128, key.length: 2 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 132, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 137, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 140, key.length: 2 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 144, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 154, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 164, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 166, key.length: 5 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 173, key.length: 3 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 181, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 187, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 198, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 208, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 214, key.length: 1 }, { key.kind: source.lang.swift.ref.struct, key.name: "Float", key.usr: "s:Sf", key.offset: 217, key.length: 5 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 227, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 233, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 244, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 249, key.length: 7 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 259, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 274, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 279, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 296, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 301, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 315, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 320, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 332, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 342, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 344, key.length: 5 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 351, key.length: 3 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 359, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 365, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 374, key.length: 9 }, { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 384, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 394, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 399, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 413, key.length: 9 }, { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 423, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 428, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P4", key.usr: "s:4cake2P4P", key.offset: 433, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 443, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 448, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 461, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 468, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 484, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 489, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 497, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 499, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 502, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P4", key.usr: "s:4cake2P4P", key.offset: 507, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 520, key.length: 9 }, { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 530, key.length: 2 }, { key.kind: source.lang.swift.ref.enum, key.name: "C1Cases", key.usr: "s:4cake2C1C0B5CasesO", key.offset: 533, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.attribute.builtin, key.offset: 548, key.length: 10 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 559, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 563, key.length: 9 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 574, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 580, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.attribute.builtin, key.offset: 591, key.length: 10 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 602, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 607, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 612, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 617, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 625, key.length: 5 }, { key.kind: source.lang.swift.ref.struct, key.name: "Hasher", key.usr: "s:s6HasherV", key.offset: 631, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 644, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 651, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 660, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 662, key.length: 3 }, { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 667, key.length: 2 }, { key.kind: source.lang.swift.ref.enum, key.name: "C1Cases", key.usr: "s:4cake2C1C0B5CasesO", key.offset: 670, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 679, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 681, key.length: 3 }, { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 686, key.length: 2 }, { key.kind: source.lang.swift.ref.enum, key.name: "C1Cases", key.usr: "s:4cake2C1C0B5CasesO", key.offset: 689, key.length: 7 }, { key.kind: source.lang.swift.ref.struct, key.name: "Bool", key.usr: "s:Sb", key.offset: 701, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 709, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 715, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 720, key.length: 4 }, { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 725, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 735, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 740, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 753, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 758, key.length: 7 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 768, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 783, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 788, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 805, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 810, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 824, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 829, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 841, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 851, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 853, key.length: 5 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 860, key.length: 3 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 868, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 874, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 883, key.length: 9 }, { key.kind: source.lang.swift.ref.class, key.name: "C2", key.usr: "s:4cake2C2C", key.offset: 893, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 903, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 908, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 922, key.length: 9 }, { key.kind: source.lang.swift.ref.class, key.name: "C2", key.usr: "s:4cake2C2C", key.offset: 932, key.length: 2 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P4", key.usr: "s:4cake2P4P", key.offset: 937, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 947, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 952, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 965, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 972, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 988, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 993, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 1001, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 1003, key.length: 1 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P4", key.usr: "s:4cake2P4P", key.offset: 1006, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1019, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1024, key.length: 6 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 1033, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1044, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1049, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.attribute.builtin, key.offset: 1059, key.length: 10 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1070, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1074, key.length: 9 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 1085, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1091, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.attribute.builtin, key.offset: 1102, key.length: 10 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1113, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1118, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 1123, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 1128, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1136, key.length: 5 }, { key.kind: source.lang.swift.ref.struct, key.name: "Hasher", key.usr: "s:s6HasherV", key.offset: 1142, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1155, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1162, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 1171, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 1173, key.length: 3 }, { key.kind: source.lang.swift.ref.enum, key.name: "MyEnum", key.usr: "s:4cake6MyEnumO", key.offset: 1178, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 1186, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 1188, key.length: 3 }, { key.kind: source.lang.swift.ref.enum, key.name: "MyEnum", key.usr: "s:4cake6MyEnumO", key.offset: 1193, key.length: 6 }, { key.kind: source.lang.swift.ref.struct, key.name: "Bool", key.usr: "s:Sb", key.offset: 1204, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.attribute.builtin, key.offset: 1212, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1218, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1227, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.attribute.builtin, key.offset: 1237, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.attribute.builtin, key.offset: 1243, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1252, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1257, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1267, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1276, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1286, key.length: 14 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1301, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1306, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1315, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1323, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1332, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1342, key.length: 14 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1357, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1368, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1377, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 1382, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P5", key.usr: "s:4cake2P5P", key.offset: 1387, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1395, key.length: 9 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P6", key.usr: "s:4cake2P6P", key.offset: 1405, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1415, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1419, key.length: 4 }, { key.kind: source.lang.swift.ref.generic_type_param, key.name: "Self", key.usr: "s:4cake2P6P4Selfxmfp", key.offset: 1425, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 1430, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1441, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1450, key.length: 8 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1459, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1471, key.length: 14 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1486, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1499, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1503, key.length: 1 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 1506, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1512, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1523, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1528, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1539, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1544, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1554, key.length: 9 }, { key.kind: source.lang.swift.ref.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP", key.offset: 1564, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1576, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1581, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1593, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 1603, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 1605, key.length: 5 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 1612, key.length: 3 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 1620, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1626, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1635, key.length: 9 }, { key.kind: source.lang.swift.ref.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP", key.offset: 1645, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1650, key.length: 5 }, { key.kind: source.lang.swift.ref.generic_type_param, key.name: "Self", key.usr: "s:4cake4ProtPAASi7ElementRtzrlE4Selfxmfp", key.offset: 1656, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 1661, key.length: 7 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 1672, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1683, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1688, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1700, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1707, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1717, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1722, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1736, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1741, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1752, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1757, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1768, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1773, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1786, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1791, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1803, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1810, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1824, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1828, key.length: 1 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 1831, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1844, key.length: 9 }, { key.kind: source.lang.swift.ref.struct, key.name: "S1", key.usr: "s:4cake2S1V", key.offset: 1854, key.length: 2 }, { key.kind: source.lang.swift.ref.enum, key.name: "SE", key.usr: "s:4cake2S1V2SEO", key.offset: 1857, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1867, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1874, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 1883, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 1885, key.length: 3 }, { key.kind: source.lang.swift.ref.struct, key.name: "S1", key.usr: "s:4cake2S1V", key.offset: 1890, key.length: 2 }, { key.kind: source.lang.swift.ref.enum, key.name: "SE", key.usr: "s:4cake2S1V2SEO", key.offset: 1893, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 1897, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 1899, key.length: 3 }, { key.kind: source.lang.swift.ref.struct, key.name: "S1", key.usr: "s:4cake2S1V", key.offset: 1904, key.length: 2 }, { key.kind: source.lang.swift.ref.enum, key.name: "SE", key.usr: "s:4cake2S1V2SEO", key.offset: 1907, key.length: 2 }, { key.kind: source.lang.swift.ref.struct, key.name: "Bool", key.usr: "s:Sb", key.offset: 1914, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1922, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1929, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 1934, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P3", key.usr: "s:4cake2P3P", key.offset: 1939, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1949, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1959, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 1963, key.length: 4 }, { key.kind: source.lang.swift.ref.struct, key.name: "S2", key.usr: "s:4cake2S2V", key.offset: 1968, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 1974, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1981, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 1984, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 1995, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P5", key.usr: "s:4cake2P5P", key.offset: 2000, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 2003, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2009, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2019, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "P5", key.usr: "s:4cake2P5P", key.offset: 2024, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 2034, key.length: 9 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 2044, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2054, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2062, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 2073, key.length: 9 }, { key.kind: source.lang.swift.ref.struct, key.name: "S3", key.usr: "s:4cake2S3V", key.offset: 2083, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 2093, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 2097, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2103, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2111, key.length: 7 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 2122, key.length: 3 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 2131, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 2136, key.length: 6 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 2143, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.identifier, key.offset: 2147, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 2151, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 2153, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2157, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.argument, key.offset: 2161, key.length: 1 }, { key.kind: source.lang.swift.syntaxtype.parameter, key.offset: 2163, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2167, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.keyword, key.offset: 2171, key.length: 5 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2177, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2182, key.length: 4 }, { key.kind: source.lang.swift.ref.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP", key.offset: 2187, key.length: 4 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2193, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2198, key.length: 4 }, { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 2203, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2207, key.length: 2 }, { key.kind: source.lang.swift.syntaxtype.typeidentifier, key.offset: 2210, key.length: 7 }, { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si", key.offset: 2221, key.length: 3 } ] [ { key.kind: source.lang.swift.decl.class, key.name: "C1", key.usr: "s:4cake2C1C", key.offset: 26, key.length: 346, key.fully_annotated_decl: "class C1 : Prot", key.conforms: [ { key.kind: source.lang.swift.ref.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP" } ], key.entities: [ { key.kind: source.lang.swift.decl.typealias, key.name: "Element", key.usr: "s:4cake2C1C7Elementa", key.offset: 54, key.length: 23, key.fully_annotated_decl: "typealias C1.Element = Int", 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.var.instance, key.name: "p", key.usr: "s:4cake2C1C1pSivp", key.offset: 83, key.length: 10, key.fully_annotated_decl: "var p: Int", key.conforms: [ { key.kind: source.lang.swift.ref.var.instance, key.name: "p", key.usr: "s:4cake4ProtP1pSivp" } ] }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo()", key.usr: "s:4cake2C1C3fooyyF", key.offset: 99, key.length: 10, key.fully_annotated_decl: "func foo()", key.conforms: [ { key.kind: source.lang.swift.ref.function.method.instance, key.name: "foo()", key.usr: "s:4cake4ProtP3fooyyF" } ] }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo1(i0:i1:)", key.usr: "s:4cake2C1C4foo12i02i1ySin_SihtF", key.offset: 115, key.length: 33, key.fully_annotated_decl: "func foo1(i0: Int, i1: Int)", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "i0", key.name: "i0", key.offset: 132, key.length: 3 }, { key.kind: source.lang.swift.decl.var.local, key.keyword: "i1", key.name: "i1", key.offset: 144, key.length: 3 } ] }, { key.kind: source.lang.swift.decl.function.subscript, key.name: "subscript(_:)", key.usr: "s:4cake2C1CyS2icip", key.offset: 154, key.length: 38, key.fully_annotated_decl: "subscript(index: Int) -> Int { get }", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "index", key.offset: 173, key.length: 3 } ] }, { key.kind: source.lang.swift.decl.function.subscript, key.name: "subscript(index:)", key.usr: "s:4cake2C1C5indexSiSf_tcip", key.offset: 198, key.length: 40, key.fully_annotated_decl: "subscript(index i: Float) -> Int { get }", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "index", key.name: "i", key.offset: 217, key.length: 5 } ] }, { key.kind: source.lang.swift.decl.enum, key.name: "C1Cases", key.usr: "s:4cake2C1C0B5CasesO", key.offset: 244, key.length: 46, key.fully_annotated_decl: "enum C1Cases : Int", key.inherits: [ { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si" } ], key.entities: [ { key.kind: source.lang.swift.decl.enumelement, key.name: "case1", key.usr: "s:4cake2C1C0B5CasesO5case1yA2EmF", key.offset: 274, key.length: 10, key.fully_annotated_decl: "case case1" } ] }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "extfoo()", key.usr: "s:4cake4ProtPAASi7ElementRtzrlE6extfooyyF::SYNTHESIZED::s:4cake2C1C", key.original_usr: "s:4cake4ProtPAASi7ElementRtzrlE6extfooyyF", key.offset: 296, key.length: 13, key.fully_annotated_decl: "func extfoo()" }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo1()", key.usr: "s:4cake4ProtPAAE4foo1yyF::SYNTHESIZED::s:4cake2C1C", key.original_usr: "s:4cake4ProtPAAE4foo1yyF", key.offset: 315, key.length: 11, key.fully_annotated_decl: "func foo1()" }, { key.kind: source.lang.swift.decl.function.subscript, key.name: "subscript(_:)", key.usr: "s:4cake4ProtPAAEyS2icip::SYNTHESIZED::s:4cake2C1C", key.original_usr: "s:4cake4ProtPAAEyS2icip", key.offset: 332, key.length: 38, key.fully_annotated_decl: "subscript(index: Int) -> Int { get }", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "index", key.offset: 351, key.length: 3 } ] } ] }, { key.kind: source.lang.swift.decl.extension.class, key.doc.full_as_xml: "@available(OSX 10.12, iOS 10.0, watchOS 3.0, tvOS 10.0, *)\nextension C1some comments", key.offset: 374, key.length: 37, key.extends: { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C" }, key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "addition()", key.usr: "s:4cake2C1C8additionyyF", key.offset: 394, key.length: 15, key.fully_annotated_decl: "func addition()" } ], key.attributes: [ { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.tvos, key.introduced: "10.0" }, { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.watchos, key.introduced: "3.0" }, { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.ios, key.introduced: "10.0" }, { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.osx, key.introduced: "10.12" } ] }, { key.kind: source.lang.swift.decl.extension.class, key.offset: 413, key.length: 105, key.conforms: [ { key.kind: source.lang.swift.ref.protocol, key.name: "P4", key.usr: "s:4cake2P4P" } ], key.extends: { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C" }, key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "C1foo()", key.usr: "s:4cake2C1C5C1fooyyF", key.offset: 443, key.length: 12, key.fully_annotated_decl: "func C1foo()" }, { key.kind: source.lang.swift.decl.struct, key.name: "C1S1", key.usr: "s:4cake2C1C0B2S1V", key.offset: 461, key.length: 55, key.fully_annotated_decl: "struct C1S1", key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "C1S1foo(a:)", key.usr: "s:4cake2C1C0B2S1V0B5S1foo1ayAA2P4_p_tF", key.offset: 484, key.length: 26, key.fully_annotated_decl: "func C1S1foo(a: P4)", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "a", key.name: "a", key.offset: 502, key.length: 7 } ] } ] } ] }, { key.kind: source.lang.swift.decl.extension.enum, key.generic_requirements: [ { key.description: "Self : Hashable" }, { key.description: "Self.RawValue : Hashable" } ], key.offset: 520, key.length: 187, key.fully_annotated_generic_signature: "<Self where Self : Hashable, Self : RawRepresentable, Self.RawValue : Hashable>", key.extends: { key.kind: source.lang.swift.ref.enum, key.name: "C1Cases", key.usr: "s:4cake2C1C0B5CasesO" }, key.entities: [ { key.kind: source.lang.swift.decl.var.instance, key.name: "hashValue", key.usr: "s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:4cake2C1C0B5CasesO", key.original_usr: "s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp", key.offset: 548, key.length: 37, key.fully_annotated_decl: "@inlinable var hashValue: Int { get }" }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "hash(into:)", key.usr: "s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:4cake2C1C0B5CasesO", key.original_usr: "s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF", key.offset: 591, key.length: 47, key.fully_annotated_decl: "@inlinable func hash(into hasher: inout Hasher)", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "into", key.name: "hasher", key.offset: 631, key.length: 6 } ] }, { key.kind: source.lang.swift.decl.function.operator.infix, key.name: "!=(_:_:)", key.usr: "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:4cake2C1C0B5CasesO", key.original_usr: "s:SQsE2neoiySbx_xtFZ", key.offset: 644, key.length: 61, key.fully_annotated_decl: "static func != (lhs: C1.C1Cases, rhs: C1.C1Cases) -> Bool", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "lhs", key.offset: 667, key.length: 10 }, { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "rhs", key.offset: 686, key.length: 10 } ] } ] }, { key.kind: source.lang.swift.decl.class, key.name: "C2", key.usr: "s:4cake2C2C", key.offset: 709, key.length: 172, key.fully_annotated_decl: "class C2 : C1", key.inherits: [ { key.kind: source.lang.swift.ref.class, key.name: "C1", key.usr: "s:4cake2C1C" } ], key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "C2foo()", key.usr: "s:4cake2C2C5C2fooyyF", key.offset: 735, key.length: 12, key.fully_annotated_decl: "func C2foo()" }, { key.kind: source.lang.swift.decl.enum, key.name: "C1Cases", key.usr: "s:4cake2C1C0B5CasesO::SYNTHESIZED::s:4cake2C2C", key.original_usr: "s:4cake2C1C0B5CasesO", key.offset: 753, key.length: 46, key.fully_annotated_decl: "enum C1Cases : Int", key.inherits: [ { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si" } ], key.entities: [ { key.kind: source.lang.swift.decl.enumelement, key.name: "case1", key.usr: "s:4cake2C1C0B5CasesO5case1yA2EmF", key.offset: 783, key.length: 10, key.fully_annotated_decl: "case case1" } ] }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "extfoo()", key.usr: "s:4cake4ProtPAASi7ElementRtzrlE6extfooyyF::SYNTHESIZED::s:4cake2C2C", key.original_usr: "s:4cake4ProtPAASi7ElementRtzrlE6extfooyyF", key.offset: 805, key.length: 13, key.fully_annotated_decl: "func extfoo()" }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo1()", key.usr: "s:4cake4ProtPAAE4foo1yyF::SYNTHESIZED::s:4cake2C2C", key.original_usr: "s:4cake4ProtPAAE4foo1yyF", key.offset: 824, key.length: 11, key.fully_annotated_decl: "func foo1()" }, { key.kind: source.lang.swift.decl.function.subscript, key.name: "subscript(_:)", key.usr: "s:4cake4ProtPAAEyS2icip::SYNTHESIZED::s:4cake2C2C", key.original_usr: "s:4cake4ProtPAAEyS2icip", key.offset: 841, key.length: 38, key.fully_annotated_decl: "subscript(index: Int) -> Int { get }", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "index", key.offset: 860, key.length: 3 } ] } ] }, { key.kind: source.lang.swift.decl.extension.class, key.doc.full_as_xml: "@available(OSX 10.12, iOS 10.0, watchOS 3.0, tvOS 10.0, *)\nextension C2some comments", key.offset: 883, key.length: 37, key.extends: { key.kind: source.lang.swift.ref.class, key.name: "C2", key.usr: "s:4cake2C2C" }, key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "addition()", key.usr: "s:4cake2C1C8additionyyF::SYNTHESIZED::s:4cake2C2C", key.original_usr: "s:4cake2C1C8additionyyF", key.offset: 903, key.length: 15, key.fully_annotated_decl: "func addition()" } ], key.attributes: [ { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.tvos, key.introduced: "10.0" }, { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.watchos, key.introduced: "3.0" }, { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.ios, key.introduced: "10.0" }, { key.kind: source.lang.swift.attribute.availability, key.platform: source.availability.platform.osx, key.introduced: "10.12" } ] }, { key.kind: source.lang.swift.decl.extension.class, key.offset: 922, key.length: 95, key.conforms: [ { key.kind: source.lang.swift.ref.protocol, key.name: "P4", key.usr: "s:4cake2P4P" } ], key.extends: { key.kind: source.lang.swift.ref.class, key.name: "C2", key.usr: "s:4cake2C2C" }, key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "C1foo()", key.usr: "s:4cake2C1C5C1fooyyF::SYNTHESIZED::s:4cake2C2C", key.original_usr: "s:4cake2C1C5C1fooyyF", key.offset: 947, key.length: 12, key.fully_annotated_decl: "func C1foo()" }, { key.kind: source.lang.swift.decl.struct, key.name: "C1S1", key.usr: "s:4cake2C1C0B2S1V::SYNTHESIZED::s:4cake2C2C", key.original_usr: "s:4cake2C1C0B2S1V", key.offset: 965, key.length: 50, key.fully_annotated_decl: "struct C1S1", key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "C1S1foo(a:)", key.usr: "s:4cake2C1C0B2S1V0B5S1foo1ayAA2P4_p_tF", key.offset: 988, key.length: 21, key.fully_annotated_decl: "func C1S1foo(a: P4)", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "a", key.name: "a", key.offset: 1006, key.length: 2 } ] } ] } ] }, { key.kind: source.lang.swift.decl.enum, key.name: "MyEnum", key.usr: "s:4cake6MyEnumO", key.offset: 1019, key.length: 191, key.fully_annotated_decl: "enum MyEnum : Int", key.inherits: [ { key.kind: source.lang.swift.ref.struct, key.name: "Int", key.usr: "s:Si" } ], key.entities: [ { key.kind: source.lang.swift.decl.enumelement, key.name: "Blah", key.usr: "s:4cake6MyEnumO4BlahyA2CmF", key.offset: 1044, key.length: 9, key.fully_annotated_decl: "case Blah" }, { key.kind: source.lang.swift.decl.var.instance, key.name: "hashValue", key.usr: "s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:4cake6MyEnumO", key.original_usr: "s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp", key.offset: 1059, key.length: 37, key.fully_annotated_decl: "@inlinable var hashValue: Int { get }" }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "hash(into:)", key.usr: "s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:4cake6MyEnumO", key.original_usr: "s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF", key.offset: 1102, key.length: 47, key.fully_annotated_decl: "@inlinable func hash(into hasher: inout Hasher)", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "into", key.name: "hasher", key.offset: 1142, key.length: 6 } ] }, { key.kind: source.lang.swift.decl.function.operator.infix, key.name: "!=(_:_:)", key.usr: "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:4cake6MyEnumO", key.original_usr: "s:SQsE2neoiySbx_xtFZ", key.offset: 1155, key.length: 53, key.fully_annotated_decl: "static func != (lhs: MyEnum, rhs: MyEnum) -> Bool", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "lhs", key.offset: 1178, key.length: 6 }, { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "rhs", key.offset: 1193, key.length: 6 } ] } ] }, { key.kind: source.lang.swift.decl.protocol, key.name: "P2", key.usr: "c:@M@cake@objc(pl)P2", key.offset: 1212, key.length: 53, key.fully_annotated_decl: "@objc protocol P2", key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo1()", key.usr: "c:@M@cake@objc(pl)P2(im)foo1", key.offset: 1237, key.length: 26, key.fully_annotated_decl: "@objc optional func foo1()", key.is_optional: 1 } ] }, { key.kind: source.lang.swift.decl.protocol, key.name: "P3", key.usr: "s:4cake2P3P", key.offset: 1267, key.length: 37, key.fully_annotated_decl: "protocol P3", key.entities: [ { key.kind: source.lang.swift.decl.associatedtype, key.name: "T", key.usr: "s:4cake2P3P1TQa", key.offset: 1286, key.length: 16, key.fully_annotated_decl: "associatedtype T" } ] }, { key.kind: source.lang.swift.decl.protocol, key.name: "P4", key.usr: "s:4cake2P4P", key.offset: 1306, key.length: 15, key.fully_annotated_decl: "protocol P4" }, { key.kind: source.lang.swift.decl.protocol, key.name: "P5", key.usr: "s:4cake2P5P", key.offset: 1323, key.length: 43, key.fully_annotated_decl: "protocol P5", key.entities: [ { key.kind: source.lang.swift.decl.associatedtype, key.name: "Element", key.usr: "s:4cake2P5P7ElementQa", key.offset: 1342, key.length: 22, key.fully_annotated_decl: "associatedtype Element" } ] }, { key.kind: source.lang.swift.decl.protocol, key.name: "P6", key.usr: "s:4cake2P6P", key.offset: 1368, key.length: 25, key.fully_annotated_decl: "protocol P6 : P5", key.conforms: [ { key.kind: source.lang.swift.ref.protocol, key.name: "P5", key.usr: "s:4cake2P5P" } ] }, { key.kind: source.lang.swift.decl.extension.protocol, key.offset: 1395, key.length: 53, key.fully_annotated_generic_signature: "<Self where Self : P6>", key.extends: { key.kind: source.lang.swift.ref.protocol, key.name: "P6", key.usr: "s:4cake2P6P" }, key.entities: [ { key.kind: source.lang.swift.decl.var.instance, key.name: "null", key.usr: "s:4cake2P6PAAE4null7ElementQzSgvp", key.offset: 1415, key.length: 31, key.fully_annotated_decl: "var null: Self.Element? { get }" } ] }, { key.kind: source.lang.swift.decl.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP", key.offset: 1450, key.length: 102, key.fully_annotated_decl: "protocol Prot", key.entities: [ { key.kind: source.lang.swift.decl.associatedtype, key.name: "Element", key.usr: "s:4cake4ProtP7ElementQa", key.offset: 1471, key.length: 22, key.fully_annotated_decl: "associatedtype Element" }, { key.kind: source.lang.swift.decl.var.instance, key.name: "p", key.usr: "s:4cake4ProtP1pSivp", key.offset: 1499, key.length: 18, key.fully_annotated_decl: "var p: Int { get }" }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo()", key.usr: "s:4cake4ProtP3fooyyF", key.offset: 1523, key.length: 10, key.fully_annotated_decl: "func foo()" }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo1()", key.usr: "s:4cake4ProtP4foo1yyF", key.offset: 1539, key.length: 11, key.fully_annotated_decl: "func foo1()" } ] }, { key.kind: source.lang.swift.decl.extension.protocol, key.offset: 1554, key.length: 79, key.fully_annotated_generic_signature: "<Self where Self : Prot>", key.extends: { key.kind: source.lang.swift.ref.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP" }, key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo1()", key.usr: "s:4cake4ProtPAAE4foo1yyF", key.default_implementation_of: "s:4cake4ProtP4foo1yyF", key.offset: 1576, key.length: 11, key.fully_annotated_decl: "func foo1()" }, { key.kind: source.lang.swift.decl.function.subscript, key.name: "subscript(_:)", key.usr: "s:4cake4ProtPAAEyS2icip", key.offset: 1593, key.length: 38, key.fully_annotated_decl: "subscript(index: Int) -> Int { get }", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "index", key.offset: 1612, key.length: 3 } ] } ] }, { key.kind: source.lang.swift.decl.extension.protocol, key.generic_requirements: [ { key.description: "Self.Element == Int" } ], key.offset: 1635, key.length: 63, key.fully_annotated_generic_signature: "<Self where Self : Prot, Self.Element == Int>", key.extends: { key.kind: source.lang.swift.ref.protocol, key.name: "Prot", key.usr: "s:4cake4ProtP" }, key.entities: [ { key.kind: source.lang.swift.decl.function.method.instance, key.name: "extfoo()", key.usr: "s:4cake4ProtPAASi7ElementRtzrlE6extfooyyF", key.offset: 1683, key.length: 13, key.fully_annotated_decl: "func extfoo()" } ] }, { key.kind: source.lang.swift.decl.struct, key.name: "S1", key.usr: "s:4cake2S1V", key.offset: 1700, key.length: 142, key.fully_annotated_decl: "struct S1", key.entities: [ { key.kind: source.lang.swift.decl.enum, key.name: "SE", key.usr: "s:4cake2S1V2SEO", key.offset: 1717, key.length: 63, key.fully_annotated_decl: "enum S1.SE", key.entities: [ { key.kind: source.lang.swift.decl.enumelement, key.name: "a", key.usr: "s:4cake2S1V2SEO1ayA2EmF", key.offset: 1736, key.length: 6, key.fully_annotated_decl: "case a" }, { key.kind: source.lang.swift.decl.enumelement, key.name: "b", key.usr: "s:4cake2S1V2SEO1byA2EmF", key.offset: 1752, key.length: 6, key.fully_annotated_decl: "case b" }, { key.kind: source.lang.swift.decl.enumelement, key.name: "c", key.usr: "s:4cake2S1V2SEO1cyA2EmF", key.offset: 1768, key.length: 6, key.fully_annotated_decl: "case c" } ] }, { key.kind: source.lang.swift.decl.function.method.instance, key.name: "foo1()", key.usr: "s:4cake2S1V4foo1yyF", key.offset: 1786, key.length: 11, key.fully_annotated_decl: "func foo1()" }, { key.kind: source.lang.swift.decl.struct, key.name: "S2", key.usr: "s:4cake2S1V2S2V", key.offset: 1803, key.length: 37, key.fully_annotated_decl: "struct S2", key.entities: [ { key.kind: source.lang.swift.decl.var.instance, key.name: "b", key.usr: "s:4cake2S1V2S2V1bSivp", key.offset: 1824, key.length: 10, key.fully_annotated_decl: "let b: Int" } ] } ] }, { key.kind: source.lang.swift.decl.extension.enum, key.offset: 1844, key.length: 76, key.fully_annotated_generic_signature: "<Self where Self : Equatable>", key.extends: { key.kind: source.lang.swift.ref.enum, key.name: "SE", key.usr: "s:4cake2S1V2SEO" }, key.entities: [ { key.kind: source.lang.swift.decl.function.operator.infix, key.name: "!=(_:_:)", key.usr: "s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:4cake2S1V2SEO", key.original_usr: "s:SQsE2neoiySbx_xtFZ", key.offset: 1867, key.length: 51, key.fully_annotated_decl: "static func != (lhs: S1.SE, rhs: S1.SE) -> Bool", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "lhs", key.offset: 1890, key.length: 5 }, { key.kind: source.lang.swift.decl.var.local, key.keyword: "_", key.name: "rhs", key.offset: 1904, key.length: 5 } ] } ] }, { key.kind: source.lang.swift.decl.struct, key.name: "S2", key.usr: "s:4cake2S2V", key.offset: 1922, key.length: 50, key.fully_annotated_decl: "struct S2 : P3", key.conforms: [ { key.kind: source.lang.swift.ref.protocol, key.name: "P3", key.usr: "s:4cake2P3P" } ], key.entities: [ { key.kind: source.lang.swift.decl.typealias, key.name: "T", key.usr: "s:4cake2S2V1Ta", key.offset: 1949, key.length: 21, key.fully_annotated_decl: "typealias S2.T = S2", key.conforms: [ { key.kind: source.lang.swift.ref.protocol, key.name: "P3", key.usr: "s:4cake2P3P" } ] } ] }, { key.kind: source.lang.swift.decl.struct, key.name: "S3", key.usr: "s:4cake2S3V", key.generic_params: [ { key.name: "Wrapped" } ], key.generic_requirements: [ { key.description: "Wrapped : P5" } ], key.offset: 1974, key.length: 97, key.fully_annotated_decl: "struct S3<Wrapped> : P5 where Wrapped : P5", key.conforms: [ { key.kind: source.lang.swift.ref.protocol, key.name: "P5", key.usr: "s:4cake2P5P" } ], key.entities: [ { key.kind: source.lang.swift.decl.typealias, key.name: "Element", key.usr: "s:4cake2S3V7Elementa", key.offset: 2034, key.length: 35, key.fully_annotated_decl: "typealias S3<Wrapped>.Element = Wrapped.Element", key.conforms: [ { key.kind: source.lang.swift.ref.associatedtype, key.name: "Element", key.usr: "s:4cake2P5P7ElementQa" } ] } ] }, { key.kind: source.lang.swift.decl.extension.struct, key.offset: 2073, key.length: 56, key.fully_annotated_generic_signature: "<Self where Self : P6>", key.extends: { key.kind: source.lang.swift.ref.struct, key.name: "S3", key.usr: "s:4cake2S3V" }, key.entities: [ { key.kind: source.lang.swift.decl.var.instance, key.name: "null", key.usr: "s:4cake2P6PAAE4null7ElementQzSgvp::SYNTHESIZED::s:4cake2S3V", key.original_usr: "s:4cake2P6PAAE4null7ElementQzSgvp", key.offset: 2093, key.length: 34, key.fully_annotated_decl: "var null: Wrapped.Element? { get }" } ] }, { key.kind: source.lang.swift.decl.function.free, key.name: "genfoo(x:y:)", key.usr: "s:4cake6genfoo1x1yyx_q_tAA4ProtRzAA2C1CRb_Si7ElementRtzr0_lF", key.generic_params: [ { key.name: "T1" }, { key.name: "T2" } ], key.generic_requirements: [ { key.description: "T1 : Prot" }, { key.description: "T2 : C1" }, { key.description: "T1.Element == Int" } ], key.offset: 2131, key.length: 93, key.fully_annotated_decl: "func genfoo<T1, T2>(x ix: T1, y iy: T2) where T1 : Prot, T2 : C1, T1.Element == Int", key.entities: [ { key.kind: source.lang.swift.decl.var.local, key.keyword: "x", key.name: "ix", key.offset: 2157, key.length: 2 }, { key.kind: source.lang.swift.decl.var.local, key.keyword: "y", key.name: "iy", key.offset: 2167, key.length: 2 } ] } ]