blob: 1c1dabfc80477eaa67ee6ffc3c2815bc85655824 [file] [log] [blame]
import SwiftOnoneSupport
class C1 : Prot {
typealias Element = Int
var p: Int
func foo()
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 : P4 {
func C1foo()
struct C1S1 {
func C1S1foo(a a: P4)
}
}
extension C1.C1Cases {
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 : P4 {
func C1foo()
struct C1S1 {
func C1S1foo(a a: P4)
}
}
enum MyEnum : Int {
case Blah
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 : 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 : P3 {
typealias T = cake.S2
}
struct S3<Wrapped> : P5 where Wrapped : P5 {
typealias Element = Wrapped.Element
}
extension S3 {
var null: Wrapped.Element? { get }
}
func genfoo<T1, T2>(x ix: T1, y iy: T2) where T1 : 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.ref.protocol,
key.name: "Prot",
key.usr: "s:4cake4ProtP",
key.offset: 37,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 49,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 59,
key.length: 7
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 69,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 78,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 82,
key.length: 1
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 85,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 94,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 99,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 110,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 120,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 122,
key.length: 5
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 129,
key.length: 3
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 137,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 143,
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: 5
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 170,
key.length: 1
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Float",
key.usr: "s:Sf",
key.offset: 173,
key.length: 5
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 183,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 189,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 200,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 205,
key.length: 7
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 215,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 230,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 235,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 252,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 257,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 271,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 276,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 288,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 298,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 300,
key.length: 5
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 307,
key.length: 3
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 315,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 321,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 330,
key.length: 9
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C1",
key.usr: "s:4cake2C1C",
key.offset: 340,
key.length: 2
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P4",
key.usr: "s:4cake2P4P",
key.offset: 345,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 355,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 360,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 373,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 380,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 396,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 401,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 409,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 411,
key.length: 1
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P4",
key.usr: "s:4cake2P4P",
key.offset: 414,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 427,
key.length: 9
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C1",
key.usr: "s:4cake2C1C",
key.offset: 437,
key.length: 2
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "C1Cases",
key.usr: "s:4cake2C1C0B5CasesO",
key.offset: 440,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 455,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 462,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 471,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 473,
key.length: 3
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C1",
key.usr: "s:4cake2C1C",
key.offset: 478,
key.length: 2
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "C1Cases",
key.usr: "s:4cake2C1C0B5CasesO",
key.offset: 481,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 490,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 492,
key.length: 3
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C1",
key.usr: "s:4cake2C1C",
key.offset: 497,
key.length: 2
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "C1Cases",
key.usr: "s:4cake2C1C0B5CasesO",
key.offset: 500,
key.length: 7
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Bool",
key.usr: "s:Sb",
key.offset: 512,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 520,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 526,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 531,
key.length: 4
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C1",
key.usr: "s:4cake2C1C",
key.offset: 536,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 546,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 551,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 564,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 569,
key.length: 7
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 579,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 594,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 599,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 616,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 621,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 635,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 640,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 652,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 662,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 664,
key.length: 5
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 671,
key.length: 3
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 679,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 685,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 694,
key.length: 9
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C2",
key.usr: "s:4cake2C2C",
key.offset: 704,
key.length: 2
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P4",
key.usr: "s:4cake2P4P",
key.offset: 709,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 719,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 724,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 737,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 744,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 760,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 765,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 773,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 775,
key.length: 1
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P4",
key.usr: "s:4cake2P4P",
key.offset: 778,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 791,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 796,
key.length: 6
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 805,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 816,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 821,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 831,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 838,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 847,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 849,
key.length: 3
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "MyEnum",
key.usr: "s:4cake6MyEnumO",
key.offset: 854,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 862,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 864,
key.length: 3
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "MyEnum",
key.usr: "s:4cake6MyEnumO",
key.offset: 869,
key.length: 6
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Bool",
key.usr: "s:Sb",
key.offset: 880,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
key.offset: 888,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 894,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 903,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
key.offset: 913,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
key.offset: 919,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 928,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 933,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 943,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 952,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 962,
key.length: 14
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 977,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 982,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 991,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 999,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1008,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1018,
key.length: 14
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1033,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1044,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1053,
key.length: 2
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P5",
key.usr: "s:4cake2P5P",
key.offset: 1058,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1066,
key.length: 9
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P6",
key.usr: "s:4cake2P6P",
key.offset: 1076,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1086,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1090,
key.length: 4
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "Self",
key.usr: "s:4cake2P6P4Selfxmfp",
key.offset: 1096,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1101,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1112,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1121,
key.length: 8
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1130,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1142,
key.length: 14
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1157,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1170,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1174,
key.length: 1
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 1177,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1183,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1194,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1199,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1210,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1215,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1225,
key.length: 9
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Prot",
key.usr: "s:4cake4ProtP",
key.offset: 1235,
key.length: 4
},
{
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: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1264,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1274,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1276,
key.length: 5
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 1283,
key.length: 3
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 1291,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1297,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1306,
key.length: 9
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Prot",
key.usr: "s:4cake4ProtP",
key.offset: 1316,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1321,
key.length: 5
},
{
key.kind: source.lang.swift.ref.generic_type_param,
key.name: "Self",
key.usr: "s:4cake4ProtPAASi7ElementRtzrlE4Selfxmfp",
key.offset: 1327,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1332,
key.length: 7
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 1343,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1354,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1359,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1371,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1378,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1388,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1393,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1407,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1412,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1423,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1428,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1439,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1444,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1457,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1462,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1474,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1481,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1495,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1499,
key.length: 1
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 1502,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1515,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "S1",
key.usr: "s:4cake2S1V",
key.offset: 1525,
key.length: 2
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "SE",
key.usr: "s:4cake2S1V2SEO",
key.offset: 1528,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1538,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1545,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1554,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1556,
key.length: 3
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "S1",
key.usr: "s:4cake2S1V",
key.offset: 1561,
key.length: 2
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "SE",
key.usr: "s:4cake2S1V2SEO",
key.offset: 1564,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1568,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1570,
key.length: 3
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "S1",
key.usr: "s:4cake2S1V",
key.offset: 1575,
key.length: 2
},
{
key.kind: source.lang.swift.ref.enum,
key.name: "SE",
key.usr: "s:4cake2S1V2SEO",
key.offset: 1578,
key.length: 2
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Bool",
key.usr: "s:Sb",
key.offset: 1585,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1593,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1600,
key.length: 2
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P3",
key.usr: "s:4cake2P3P",
key.offset: 1605,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1615,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1625,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1629,
key.length: 4
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "S2",
key.usr: "s:4cake2S2V",
key.offset: 1634,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1640,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1647,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1650,
key.length: 7
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P5",
key.usr: "s:4cake2P5P",
key.offset: 1661,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1664,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1670,
key.length: 7
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "P5",
key.usr: "s:4cake2P5P",
key.offset: 1680,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1690,
key.length: 9
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1700,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1710,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1718,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1729,
key.length: 9
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "S3",
key.usr: "s:4cake2S3V",
key.offset: 1739,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1749,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1753,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1759,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1767,
key.length: 7
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1778,
key.length: 3
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1787,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1792,
key.length: 6
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1799,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.identifier,
key.offset: 1803,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1807,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1809,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1813,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.argument,
key.offset: 1817,
key.length: 1
},
{
key.kind: source.lang.swift.syntaxtype.parameter,
key.offset: 1819,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1823,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 1827,
key.length: 5
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1833,
key.length: 2
},
{
key.kind: source.lang.swift.ref.protocol,
key.name: "Prot",
key.usr: "s:4cake4ProtP",
key.offset: 1838,
key.length: 4
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1844,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1849,
key.length: 4
},
{
key.kind: source.lang.swift.ref.class,
key.name: "C1",
key.usr: "s:4cake2C1C",
key.offset: 1854,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1858,
key.length: 2
},
{
key.kind: source.lang.swift.syntaxtype.typeidentifier,
key.offset: 1861,
key.length: 7
},
{
key.kind: source.lang.swift.ref.struct,
key.name: "Int",
key.usr: "s:Si",
key.offset: 1872,
key.length: 3
}
]
[
{
key.kind: source.lang.swift.decl.class,
key.name: "C1",
key.usr: "s:4cake2C1C",
key.offset: 26,
key.length: 302,
key.fully_annotated_decl: "<decl.class><syntaxtype.keyword>class</syntaxtype.keyword> <decl.name>C1</decl.name> : <ref.protocol usr=\"s:4cake4ProtP\">Prot</ref.protocol></decl.class>",
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: 49,
key.length: 23,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <ref.class usr=\"s:4cake2C1C\">C1</ref.class>.<decl.name>Element</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.var.instance,
key.name: "p",
key.usr: "s:4cake2C1C1pSivp",
key.offset: 78,
key.length: 10,
key.fully_annotated_decl: "<decl.var.instance><syntaxtype.keyword>var</syntaxtype.keyword> <decl.name>p</decl.name>: <decl.var.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.type></decl.var.instance>",
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: 94,
key.length: 10,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo</decl.name>()</decl.function.method.instance>",
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.subscript,
key.name: "subscript(_:)",
key.usr: "s:4cake2C1CyS2icip",
key.offset: 110,
key.length: 38,
key.fully_annotated_decl: "<decl.function.subscript><syntaxtype.keyword>subscript</syntaxtype.keyword>(<decl.var.parameter><decl.var.parameter.name>index</decl.var.parameter.name>: <decl.var.parameter.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Si\">Int</ref.struct></decl.function.returntype> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.function.subscript>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "index",
key.offset: 129,
key.length: 3
}
]
},
{
key.kind: source.lang.swift.decl.function.subscript,
key.name: "subscript(index:)",
key.usr: "s:4cake2C1C5indexSiSf_tcip",
key.offset: 154,
key.length: 40,
key.fully_annotated_decl: "<decl.function.subscript><syntaxtype.keyword>subscript</syntaxtype.keyword>(<decl.var.parameter><decl.var.parameter.argument_label>index</decl.var.parameter.argument_label> <decl.var.parameter.name>i</decl.var.parameter.name>: <decl.var.parameter.type><ref.struct usr=\"s:Sf\">Float</ref.struct></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Si\">Int</ref.struct></decl.function.returntype> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.function.subscript>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "index",
key.name: "i",
key.offset: 173,
key.length: 5
}
]
},
{
key.kind: source.lang.swift.decl.enum,
key.name: "C1Cases",
key.usr: "s:4cake2C1C0B5CasesO",
key.offset: 200,
key.length: 46,
key.fully_annotated_decl: "<decl.enum><syntaxtype.keyword>enum</syntaxtype.keyword> <decl.name>C1Cases</decl.name> : <ref.struct usr=\"s:Si\">Int</ref.struct></decl.enum>",
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: 230,
key.length: 10,
key.fully_annotated_decl: "<decl.enumelement><syntaxtype.keyword>case</syntaxtype.keyword> <decl.name>case1</decl.name></decl.enumelement>"
}
]
},
{
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: 252,
key.length: 13,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>extfoo</decl.name>()</decl.function.method.instance>"
},
{
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: 271,
key.length: 11,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo1</decl.name>()</decl.function.method.instance>"
},
{
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: 288,
key.length: 38,
key.fully_annotated_decl: "<decl.function.subscript><syntaxtype.keyword>subscript</syntaxtype.keyword>(<decl.var.parameter><decl.var.parameter.name>index</decl.var.parameter.name>: <decl.var.parameter.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Si\">Int</ref.struct></decl.function.returntype> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.function.subscript>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "index",
key.offset: 307,
key.length: 3
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.class,
key.offset: 330,
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: "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: 355,
key.length: 12,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>C1foo</decl.name>()</decl.function.method.instance>"
},
{
key.kind: source.lang.swift.decl.struct,
key.name: "C1S1",
key.usr: "s:4cake2C1C0B2S1V",
key.offset: 373,
key.length: 50,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>C1S1</decl.name></decl.struct>",
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "C1S1foo(a:)",
key.usr: "s:4cake2C1C0B2S1V0B5S1foo1ayAA2P4_p_tF",
key.offset: 396,
key.length: 21,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>C1S1foo</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>a</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.protocol usr=\"s:4cake2P4P\">P4</ref.protocol></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "a",
key.name: "a",
key.offset: 414,
key.length: 2
}
]
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.enum,
key.offset: 427,
key.length: 91,
key.extends: {
key.kind: source.lang.swift.ref.enum,
key.name: "C1Cases",
key.usr: "s:4cake2C1C0B5CasesO"
},
key.entities: [
{
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.doc.full_as_xml: "<Function><Name>!=(_:_:)</Name><USR>s:SQsE2neoiySbx_xtFZ</USR><Declaration>static func != (lhs: Self, rhs: Self) -&gt; Bool</Declaration><CommentParts><Abstract><Para>Returns a Boolean value indicating whether two values are not equal.</Para></Abstract><Parameters><Parameter><Name>lhs</Name><Direction isExplicit=\"0\">in</Direction><Discussion><Para>A value to compare.</Para></Discussion></Parameter><Parameter><Name>rhs</Name><Direction isExplicit=\"0\">in</Direction><Discussion><Para>Another value to compare.</Para></Discussion></Parameter></Parameters><Discussion><Para>Inequality is the inverse of equality. For any values <codeVoice>a</codeVoice> and <codeVoice>b</codeVoice>, <codeVoice>a != b</codeVoice> implies that <codeVoice>a == b</codeVoice> is <codeVoice>false</codeVoice>.</Para><Para>This is the default implementation of the not-equal-to operator (<codeVoice>!=</codeVoice>) for any type that conforms to <codeVoice>Equatable</codeVoice>.</Para></Discussion></CommentParts></Function>",
key.offset: 455,
key.length: 61,
key.fully_annotated_decl: "<decl.function.operator.infix><syntaxtype.keyword>static</syntaxtype.keyword> <syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>!= </decl.name>(<decl.var.parameter><decl.var.parameter.name>lhs</decl.var.parameter.name>: <decl.var.parameter.type><ref.class usr=\"s:4cake2C1C\">C1</ref.class>.<ref.enum usr=\"s:4cake2C1C0B5CasesO\">C1Cases</ref.enum></decl.var.parameter.type></decl.var.parameter>, <decl.var.parameter><decl.var.parameter.name>rhs</decl.var.parameter.name>: <decl.var.parameter.type><ref.class usr=\"s:4cake2C1C\">C1</ref.class>.<ref.enum usr=\"s:4cake2C1C0B5CasesO\">C1Cases</ref.enum></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Sb\">Bool</ref.struct></decl.function.returntype></decl.function.operator.infix>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "lhs",
key.offset: 478,
key.length: 10
},
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "rhs",
key.offset: 497,
key.length: 10
}
]
}
]
},
{
key.kind: source.lang.swift.decl.class,
key.name: "C2",
key.usr: "s:4cake2C2C",
key.offset: 520,
key.length: 172,
key.fully_annotated_decl: "<decl.class><syntaxtype.keyword>class</syntaxtype.keyword> <decl.name>C2</decl.name> : <ref.class usr=\"s:4cake2C1C\">C1</ref.class></decl.class>",
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: 546,
key.length: 12,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>C2foo</decl.name>()</decl.function.method.instance>"
},
{
key.kind: source.lang.swift.decl.enum,
key.name: "C1Cases",
key.usr: "s:4cake2C1C0B5CasesO::SYNTHESIZED::s:4cake2C2C",
key.original_usr: "s:4cake2C1C0B5CasesO",
key.offset: 564,
key.length: 46,
key.fully_annotated_decl: "<decl.enum><syntaxtype.keyword>enum</syntaxtype.keyword> <decl.name>C1Cases</decl.name> : <ref.struct usr=\"s:Si\">Int</ref.struct></decl.enum>",
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: 594,
key.length: 10,
key.fully_annotated_decl: "<decl.enumelement><syntaxtype.keyword>case</syntaxtype.keyword> <decl.name>case1</decl.name></decl.enumelement>"
}
]
},
{
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: 616,
key.length: 13,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>extfoo</decl.name>()</decl.function.method.instance>"
},
{
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: 635,
key.length: 11,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo1</decl.name>()</decl.function.method.instance>"
},
{
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: 652,
key.length: 38,
key.fully_annotated_decl: "<decl.function.subscript><syntaxtype.keyword>subscript</syntaxtype.keyword>(<decl.var.parameter><decl.var.parameter.name>index</decl.var.parameter.name>: <decl.var.parameter.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Si\">Int</ref.struct></decl.function.returntype> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.function.subscript>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "index",
key.offset: 671,
key.length: 3
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.class,
key.offset: 694,
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: 719,
key.length: 12,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>C1foo</decl.name>()</decl.function.method.instance>"
},
{
key.kind: source.lang.swift.decl.struct,
key.name: "C1S1",
key.usr: "s:4cake2C1C0B2S1V::SYNTHESIZED::s:4cake2C2C",
key.original_usr: "s:4cake2C1C0B2S1V",
key.offset: 737,
key.length: 50,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>C1S1</decl.name></decl.struct>",
key.entities: [
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "C1S1foo(a:)",
key.usr: "s:4cake2C1C0B2S1V0B5S1foo1ayAA2P4_p_tF",
key.offset: 760,
key.length: 21,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>C1S1foo</decl.name>(<decl.var.parameter><decl.var.parameter.argument_label>a</decl.var.parameter.argument_label>: <decl.var.parameter.type><ref.protocol usr=\"s:4cake2P4P\">P4</ref.protocol></decl.var.parameter.type></decl.var.parameter>)</decl.function.method.instance>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "a",
key.name: "a",
key.offset: 778,
key.length: 2
}
]
}
]
}
]
},
{
key.kind: source.lang.swift.decl.enum,
key.name: "MyEnum",
key.usr: "s:4cake6MyEnumO",
key.offset: 791,
key.length: 95,
key.fully_annotated_decl: "<decl.enum><syntaxtype.keyword>enum</syntaxtype.keyword> <decl.name>MyEnum</decl.name> : <ref.struct usr=\"s:Si\">Int</ref.struct></decl.enum>",
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: 816,
key.length: 9,
key.fully_annotated_decl: "<decl.enumelement><syntaxtype.keyword>case</syntaxtype.keyword> <decl.name>Blah</decl.name></decl.enumelement>"
},
{
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.doc.full_as_xml: "<Function><Name>!=(_:_:)</Name><USR>s:SQsE2neoiySbx_xtFZ</USR><Declaration>static func != (lhs: Self, rhs: Self) -&gt; Bool</Declaration><CommentParts><Abstract><Para>Returns a Boolean value indicating whether two values are not equal.</Para></Abstract><Parameters><Parameter><Name>lhs</Name><Direction isExplicit=\"0\">in</Direction><Discussion><Para>A value to compare.</Para></Discussion></Parameter><Parameter><Name>rhs</Name><Direction isExplicit=\"0\">in</Direction><Discussion><Para>Another value to compare.</Para></Discussion></Parameter></Parameters><Discussion><Para>Inequality is the inverse of equality. For any values <codeVoice>a</codeVoice> and <codeVoice>b</codeVoice>, <codeVoice>a != b</codeVoice> implies that <codeVoice>a == b</codeVoice> is <codeVoice>false</codeVoice>.</Para><Para>This is the default implementation of the not-equal-to operator (<codeVoice>!=</codeVoice>) for any type that conforms to <codeVoice>Equatable</codeVoice>.</Para></Discussion></CommentParts></Function>",
key.offset: 831,
key.length: 53,
key.fully_annotated_decl: "<decl.function.operator.infix><syntaxtype.keyword>static</syntaxtype.keyword> <syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>!= </decl.name>(<decl.var.parameter><decl.var.parameter.name>lhs</decl.var.parameter.name>: <decl.var.parameter.type><ref.enum usr=\"s:4cake6MyEnumO\">MyEnum</ref.enum></decl.var.parameter.type></decl.var.parameter>, <decl.var.parameter><decl.var.parameter.name>rhs</decl.var.parameter.name>: <decl.var.parameter.type><ref.enum usr=\"s:4cake6MyEnumO\">MyEnum</ref.enum></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Sb\">Bool</ref.struct></decl.function.returntype></decl.function.operator.infix>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "lhs",
key.offset: 854,
key.length: 6
},
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "rhs",
key.offset: 869,
key.length: 6
}
]
}
]
},
{
key.kind: source.lang.swift.decl.protocol,
key.name: "P2",
key.usr: "c:@M@cake@objc(pl)P2",
key.offset: 888,
key.length: 53,
key.fully_annotated_decl: "<decl.protocol><syntaxtype.attribute.builtin><syntaxtype.attribute.name>@objc</syntaxtype.attribute.name></syntaxtype.attribute.builtin> <syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>P2</decl.name></decl.protocol>",
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: 913,
key.length: 26,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.attribute.builtin><syntaxtype.attribute.name>@objc</syntaxtype.attribute.name></syntaxtype.attribute.builtin> <syntaxtype.keyword>optional</syntaxtype.keyword> <syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo1</decl.name>()</decl.function.method.instance>",
key.is_optional: 1
}
]
},
{
key.kind: source.lang.swift.decl.protocol,
key.name: "P3",
key.usr: "s:4cake2P3P",
key.offset: 943,
key.length: 37,
key.fully_annotated_decl: "<decl.protocol><syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>P3</decl.name></decl.protocol>",
key.entities: [
{
key.kind: source.lang.swift.decl.associatedtype,
key.name: "T",
key.usr: "s:4cake2P3P1TQa",
key.offset: 962,
key.length: 16,
key.fully_annotated_decl: "<decl.associatedtype><syntaxtype.keyword>associatedtype</syntaxtype.keyword> <decl.name>T</decl.name></decl.associatedtype>"
}
]
},
{
key.kind: source.lang.swift.decl.protocol,
key.name: "P4",
key.usr: "s:4cake2P4P",
key.offset: 982,
key.length: 15,
key.fully_annotated_decl: "<decl.protocol><syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>P4</decl.name></decl.protocol>"
},
{
key.kind: source.lang.swift.decl.protocol,
key.name: "P5",
key.usr: "s:4cake2P5P",
key.offset: 999,
key.length: 43,
key.fully_annotated_decl: "<decl.protocol><syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>P5</decl.name></decl.protocol>",
key.entities: [
{
key.kind: source.lang.swift.decl.associatedtype,
key.name: "Element",
key.usr: "s:4cake2P5P7ElementQa",
key.offset: 1018,
key.length: 22,
key.fully_annotated_decl: "<decl.associatedtype><syntaxtype.keyword>associatedtype</syntaxtype.keyword> <decl.name>Element</decl.name></decl.associatedtype>"
}
]
},
{
key.kind: source.lang.swift.decl.protocol,
key.name: "P6",
key.usr: "s:4cake2P6P",
key.offset: 1044,
key.length: 20,
key.fully_annotated_decl: "<decl.protocol><syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>P6</decl.name> : <ref.protocol usr=\"s:4cake2P5P\">P5</ref.protocol></decl.protocol>",
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: 1066,
key.length: 53,
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: 1086,
key.length: 31,
key.fully_annotated_decl: "<decl.var.instance><syntaxtype.keyword>var</syntaxtype.keyword> <decl.name>null</decl.name>: <decl.var.type><ref.generic_type_param usr=\"s:4cake2P6P4Selfxmfp\">Self</ref.generic_type_param>.Element?</decl.var.type> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.var.instance>"
}
]
},
{
key.kind: source.lang.swift.decl.protocol,
key.name: "Prot",
key.usr: "s:4cake4ProtP",
key.offset: 1121,
key.length: 102,
key.fully_annotated_decl: "<decl.protocol><syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>Prot</decl.name></decl.protocol>",
key.entities: [
{
key.kind: source.lang.swift.decl.associatedtype,
key.name: "Element",
key.usr: "s:4cake4ProtP7ElementQa",
key.offset: 1142,
key.length: 22,
key.fully_annotated_decl: "<decl.associatedtype><syntaxtype.keyword>associatedtype</syntaxtype.keyword> <decl.name>Element</decl.name></decl.associatedtype>"
},
{
key.kind: source.lang.swift.decl.var.instance,
key.name: "p",
key.usr: "s:4cake4ProtP1pSivp",
key.offset: 1170,
key.length: 18,
key.fully_annotated_decl: "<decl.var.instance><syntaxtype.keyword>var</syntaxtype.keyword> <decl.name>p</decl.name>: <decl.var.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.type> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.var.instance>"
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "foo()",
key.usr: "s:4cake4ProtP3fooyyF",
key.offset: 1194,
key.length: 10,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo</decl.name>()</decl.function.method.instance>"
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "foo1()",
key.usr: "s:4cake4ProtP4foo1yyF",
key.offset: 1210,
key.length: 11,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo1</decl.name>()</decl.function.method.instance>"
}
]
},
{
key.kind: source.lang.swift.decl.extension.protocol,
key.offset: 1225,
key.length: 79,
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: 1247,
key.length: 11,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo1</decl.name>()</decl.function.method.instance>"
},
{
key.kind: source.lang.swift.decl.function.subscript,
key.name: "subscript(_:)",
key.usr: "s:4cake4ProtPAAEyS2icip",
key.offset: 1264,
key.length: 38,
key.fully_annotated_decl: "<decl.function.subscript><syntaxtype.keyword>subscript</syntaxtype.keyword>(<decl.var.parameter><decl.var.parameter.name>index</decl.var.parameter.name>: <decl.var.parameter.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Si\">Int</ref.struct></decl.function.returntype> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.function.subscript>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "index",
key.offset: 1283,
key.length: 3
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.protocol,
key.generic_requirements: [
{
key.description: "Self.Element == Int"
}
],
key.offset: 1306,
key.length: 63,
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: 1354,
key.length: 13,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>extfoo</decl.name>()</decl.function.method.instance>"
}
]
},
{
key.kind: source.lang.swift.decl.struct,
key.name: "S1",
key.usr: "s:4cake2S1V",
key.offset: 1371,
key.length: 142,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>S1</decl.name></decl.struct>",
key.entities: [
{
key.kind: source.lang.swift.decl.enum,
key.name: "SE",
key.usr: "s:4cake2S1V2SEO",
key.offset: 1388,
key.length: 63,
key.fully_annotated_decl: "<decl.enum><syntaxtype.keyword>enum</syntaxtype.keyword> <ref.struct usr=\"s:4cake2S1V\">S1</ref.struct>.<decl.name>SE</decl.name></decl.enum>",
key.entities: [
{
key.kind: source.lang.swift.decl.enumelement,
key.name: "a",
key.usr: "s:4cake2S1V2SEO1ayA2EmF",
key.offset: 1407,
key.length: 6,
key.fully_annotated_decl: "<decl.enumelement><syntaxtype.keyword>case</syntaxtype.keyword> <decl.name>a</decl.name></decl.enumelement>"
},
{
key.kind: source.lang.swift.decl.enumelement,
key.name: "b",
key.usr: "s:4cake2S1V2SEO1byA2EmF",
key.offset: 1423,
key.length: 6,
key.fully_annotated_decl: "<decl.enumelement><syntaxtype.keyword>case</syntaxtype.keyword> <decl.name>b</decl.name></decl.enumelement>"
},
{
key.kind: source.lang.swift.decl.enumelement,
key.name: "c",
key.usr: "s:4cake2S1V2SEO1cyA2EmF",
key.offset: 1439,
key.length: 6,
key.fully_annotated_decl: "<decl.enumelement><syntaxtype.keyword>case</syntaxtype.keyword> <decl.name>c</decl.name></decl.enumelement>"
}
]
},
{
key.kind: source.lang.swift.decl.function.method.instance,
key.name: "foo1()",
key.usr: "s:4cake2S1V4foo1yyF",
key.offset: 1457,
key.length: 11,
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo1</decl.name>()</decl.function.method.instance>"
},
{
key.kind: source.lang.swift.decl.struct,
key.name: "S2",
key.usr: "s:4cake2S1V2S2V",
key.offset: 1474,
key.length: 37,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>S2</decl.name></decl.struct>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.instance,
key.name: "b",
key.usr: "s:4cake2S1V2S2V1bSivp",
key.offset: 1495,
key.length: 10,
key.fully_annotated_decl: "<decl.var.instance><syntaxtype.keyword>let</syntaxtype.keyword> <decl.name>b</decl.name>: <decl.var.type><ref.struct usr=\"s:Si\">Int</ref.struct></decl.var.type></decl.var.instance>"
}
]
}
]
},
{
key.kind: source.lang.swift.decl.extension.enum,
key.offset: 1515,
key.length: 76,
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.doc.full_as_xml: "<Function><Name>!=(_:_:)</Name><USR>s:SQsE2neoiySbx_xtFZ</USR><Declaration>static func != (lhs: Self, rhs: Self) -&gt; Bool</Declaration><CommentParts><Abstract><Para>Returns a Boolean value indicating whether two values are not equal.</Para></Abstract><Parameters><Parameter><Name>lhs</Name><Direction isExplicit=\"0\">in</Direction><Discussion><Para>A value to compare.</Para></Discussion></Parameter><Parameter><Name>rhs</Name><Direction isExplicit=\"0\">in</Direction><Discussion><Para>Another value to compare.</Para></Discussion></Parameter></Parameters><Discussion><Para>Inequality is the inverse of equality. For any values <codeVoice>a</codeVoice> and <codeVoice>b</codeVoice>, <codeVoice>a != b</codeVoice> implies that <codeVoice>a == b</codeVoice> is <codeVoice>false</codeVoice>.</Para><Para>This is the default implementation of the not-equal-to operator (<codeVoice>!=</codeVoice>) for any type that conforms to <codeVoice>Equatable</codeVoice>.</Para></Discussion></CommentParts></Function>",
key.offset: 1538,
key.length: 51,
key.fully_annotated_decl: "<decl.function.operator.infix><syntaxtype.keyword>static</syntaxtype.keyword> <syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>!= </decl.name>(<decl.var.parameter><decl.var.parameter.name>lhs</decl.var.parameter.name>: <decl.var.parameter.type><ref.struct usr=\"s:4cake2S1V\">S1</ref.struct>.<ref.enum usr=\"s:4cake2S1V2SEO\">SE</ref.enum></decl.var.parameter.type></decl.var.parameter>, <decl.var.parameter><decl.var.parameter.name>rhs</decl.var.parameter.name>: <decl.var.parameter.type><ref.struct usr=\"s:4cake2S1V\">S1</ref.struct>.<ref.enum usr=\"s:4cake2S1V2SEO\">SE</ref.enum></decl.var.parameter.type></decl.var.parameter>) -&gt; <decl.function.returntype><ref.struct usr=\"s:Sb\">Bool</ref.struct></decl.function.returntype></decl.function.operator.infix>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "lhs",
key.offset: 1561,
key.length: 5
},
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "_",
key.name: "rhs",
key.offset: 1575,
key.length: 5
}
]
}
]
},
{
key.kind: source.lang.swift.decl.struct,
key.name: "S2",
key.usr: "s:4cake2S2V",
key.offset: 1593,
key.length: 45,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>S2</decl.name> : <ref.protocol usr=\"s:4cake2P3P\">P3</ref.protocol></decl.struct>",
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: 1615,
key.length: 21,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <ref.struct usr=\"s:4cake2S2V\">S2</ref.struct>.<decl.name>T</decl.name> = <ref.struct usr=\"s:4cake2S2V\">S2</ref.struct></decl.typealias>",
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: 1640,
key.length: 87,
key.fully_annotated_decl: "<decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>S3</decl.name>&lt;<decl.generic_type_param usr=\"s:4cake2S3V7Wrappedxmfp\"><decl.generic_type_param.name>Wrapped</decl.generic_type_param.name></decl.generic_type_param>&gt; : <ref.protocol usr=\"s:4cake2P5P\">P5</ref.protocol> <syntaxtype.keyword>where</syntaxtype.keyword> <decl.generic_type_requirement>Wrapped : <ref.protocol usr=\"s:4cake2P5P\">P5</ref.protocol></decl.generic_type_requirement></decl.struct>",
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: 1690,
key.length: 35,
key.fully_annotated_decl: "<decl.typealias><syntaxtype.keyword>typealias</syntaxtype.keyword> <ref.struct usr=\"s:4cake2S3V\">S3</ref.struct>&lt;Wrapped&gt;.<decl.name>Element</decl.name> = Wrapped.Element</decl.typealias>",
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: 1729,
key.length: 56,
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: 1749,
key.length: 34,
key.fully_annotated_decl: "<decl.var.instance><syntaxtype.keyword>var</syntaxtype.keyword> <decl.name>null</decl.name>: <decl.var.type>Wrapped.Element?</decl.var.type> { <syntaxtype.keyword>get</syntaxtype.keyword> }</decl.var.instance>"
}
]
},
{
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: 1787,
key.length: 88,
key.fully_annotated_decl: "<decl.function.free><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>genfoo</decl.name>&lt;<decl.generic_type_param usr=\"s:4cake6genfoo1x1yyx_q_tAA4ProtRzAA2C1CRb_Si7ElementRtzr0_lF2T1L_xmfp\"><decl.generic_type_param.name>T1</decl.generic_type_param.name></decl.generic_type_param>, <decl.generic_type_param usr=\"s:4cake6genfoo1x1yyx_q_tAA4ProtRzAA2C1CRb_Si7ElementRtzr0_lF2T2L_q_mfp\"><decl.generic_type_param.name>T2</decl.generic_type_param.name></decl.generic_type_param>&gt;(<decl.var.parameter><decl.var.parameter.argument_label>x</decl.var.parameter.argument_label> <decl.var.parameter.name>ix</decl.var.parameter.name>: <decl.var.parameter.type>T1</decl.var.parameter.type></decl.var.parameter>, <decl.var.parameter><decl.var.parameter.argument_label>y</decl.var.parameter.argument_label> <decl.var.parameter.name>iy</decl.var.parameter.name>: <decl.var.parameter.type>T2</decl.var.parameter.type></decl.var.parameter>) <syntaxtype.keyword>where</syntaxtype.keyword> <decl.generic_type_requirement>T1 : <ref.protocol usr=\"s:4cake4ProtP\">Prot</ref.protocol></decl.generic_type_requirement>, <decl.generic_type_requirement>T2 : <ref.class usr=\"s:4cake2C1C\">C1</ref.class></decl.generic_type_requirement>, <decl.generic_type_requirement>T1.Element == <ref.struct usr=\"s:Si\">Int</ref.struct></decl.generic_type_requirement></decl.function.free>",
key.entities: [
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "x",
key.name: "ix",
key.offset: 1813,
key.length: 2
},
{
key.kind: source.lang.swift.decl.var.local,
key.keyword: "y",
key.name: "iy",
key.offset: 1823,
key.length: 2
}
]
}
]