@@ -55,7 +55,7 @@ extension P2 {
55
55
subscript(_ a: Int) -> Int
56
56
}
57
57
58
- extension P2 {
58
+ extension P2 where Self : P3 {
59
59
60
60
func fooConstraint()
61
61
}
@@ -65,11 +65,16 @@ protocol P3 {
65
65
func p3Required()
66
66
}
67
67
68
- extension Dictionary.Keys where Key : Hashable {
68
+ extension Dictionary.Keys {
69
69
70
70
func foo()
71
71
}
72
72
73
+ extension Dictionary.Keys where Key : P1 {
74
+
75
+ func bar()
76
+ }
77
+
73
78
74
79
[
75
80
{
@@ -532,78 +537,126 @@ extension Dictionary.Keys where Key : Hashable {
532
537
},
533
538
{
534
539
key.kind: source.lang.swift.syntaxtype.keyword,
535
- key.offset: 633,
540
+ key.offset: 626,
541
+ key.length: 5
542
+ },
543
+ {
544
+ key.kind: source.lang.swift.ref.generic_type_param,
545
+ key.name: "Self",
546
+ key.usr: "s:5cake12P2PA2A2P3RzrlE4Selfxmfp",
547
+ key.offset: 632,
548
+ key.length: 4
549
+ },
550
+ {
551
+ key.kind: source.lang.swift.ref.protocol,
552
+ key.name: "P3",
553
+ key.usr: "s:5cake12P3P",
554
+ key.offset: 639,
555
+ key.length: 2
556
+ },
557
+ {
558
+ key.kind: source.lang.swift.syntaxtype.keyword,
559
+ key.offset: 649,
536
560
key.length: 4
537
561
},
538
562
{
539
563
key.kind: source.lang.swift.syntaxtype.identifier,
540
- key.offset: 638 ,
564
+ key.offset: 654 ,
541
565
key.length: 13
542
566
},
543
567
{
544
568
key.kind: source.lang.swift.syntaxtype.keyword,
545
- key.offset: 657 ,
569
+ key.offset: 673 ,
546
570
key.length: 8
547
571
},
548
572
{
549
573
key.kind: source.lang.swift.syntaxtype.identifier,
550
- key.offset: 666 ,
574
+ key.offset: 682 ,
551
575
key.length: 2
552
576
},
553
577
{
554
578
key.kind: source.lang.swift.syntaxtype.keyword,
555
- key.offset: 676 ,
579
+ key.offset: 692 ,
556
580
key.length: 4
557
581
},
558
582
{
559
583
key.kind: source.lang.swift.syntaxtype.identifier,
560
- key.offset: 681 ,
584
+ key.offset: 697 ,
561
585
key.length: 10
562
586
},
563
587
{
564
588
key.kind: source.lang.swift.syntaxtype.keyword,
565
- key.offset: 697 ,
589
+ key.offset: 713 ,
566
590
key.length: 9
567
591
},
568
592
{
569
593
key.kind: source.lang.swift.ref.struct,
570
594
key.name: "Dictionary",
571
595
key.usr: "s:SD",
572
- key.offset: 707 ,
596
+ key.offset: 723 ,
573
597
key.length: 10
574
598
},
575
599
{
576
600
key.kind: source.lang.swift.ref.struct,
577
601
key.name: "Keys",
578
602
key.usr: "s:SD4KeysV",
579
- key.offset: 718 ,
603
+ key.offset: 734 ,
580
604
key.length: 4
581
605
},
582
606
{
583
607
key.kind: source.lang.swift.syntaxtype.keyword,
584
- key.offset: 723,
608
+ key.offset: 746,
609
+ key.length: 4
610
+ },
611
+ {
612
+ key.kind: source.lang.swift.syntaxtype.identifier,
613
+ key.offset: 751,
614
+ key.length: 3
615
+ },
616
+ {
617
+ key.kind: source.lang.swift.syntaxtype.keyword,
618
+ key.offset: 760,
619
+ key.length: 9
620
+ },
621
+ {
622
+ key.kind: source.lang.swift.ref.struct,
623
+ key.name: "Dictionary",
624
+ key.usr: "s:SD",
625
+ key.offset: 770,
626
+ key.length: 10
627
+ },
628
+ {
629
+ key.kind: source.lang.swift.ref.struct,
630
+ key.name: "Keys",
631
+ key.usr: "s:SD4KeysV",
632
+ key.offset: 781,
633
+ key.length: 4
634
+ },
635
+ {
636
+ key.kind: source.lang.swift.syntaxtype.keyword,
637
+ key.offset: 786,
585
638
key.length: 5
586
639
},
587
640
{
588
641
key.kind: source.lang.swift.syntaxtype.typeidentifier,
589
- key.offset: 729 ,
642
+ key.offset: 792 ,
590
643
key.length: 3
591
644
},
592
645
{
593
646
key.kind: source.lang.swift.ref.protocol,
594
- key.name: "Hashable ",
595
- key.usr: "s:SH ",
596
- key.offset: 735 ,
597
- key.length: 8
647
+ key.name: "P1 ",
648
+ key.usr: "s:5cake12P1P ",
649
+ key.offset: 798 ,
650
+ key.length: 2
598
651
},
599
652
{
600
653
key.kind: source.lang.swift.syntaxtype.keyword,
601
- key.offset: 751 ,
654
+ key.offset: 808 ,
602
655
key.length: 4
603
656
},
604
657
{
605
658
key.kind: source.lang.swift.syntaxtype.identifier,
606
- key.offset: 756 ,
659
+ key.offset: 813 ,
607
660
key.length: 3
608
661
}
609
662
]
@@ -944,7 +997,7 @@ extension Dictionary.Keys where Key : Hashable {
944
997
}
945
998
],
946
999
key.offset: 613,
947
- key.length: 42 ,
1000
+ key.length: 58 ,
948
1001
key.extends: {
949
1002
key.kind: source.lang.swift.ref.protocol,
950
1003
key.name: "P2",
@@ -956,7 +1009,7 @@ extension Dictionary.Keys where Key : Hashable {
956
1009
key.name: "fooConstraint()",
957
1010
key.usr: "s:5cake12P2PA2A2P3RzrlE13fooConstraintyyF",
958
1011
key.default_implementation_of: "s:5cake12P1P13fooConstraintyyF",
959
- key.offset: 633 ,
1012
+ key.offset: 649 ,
960
1013
key.length: 20,
961
1014
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>fooConstraint</decl.name>()</decl.function.method.instance>"
962
1015
}
@@ -966,15 +1019,15 @@ extension Dictionary.Keys where Key : Hashable {
966
1019
key.kind: source.lang.swift.decl.protocol,
967
1020
key.name: "P3",
968
1021
key.usr: "s:5cake12P3P",
969
- key.offset: 657 ,
1022
+ key.offset: 673 ,
970
1023
key.length: 38,
971
1024
key.fully_annotated_decl: "<decl.protocol><syntaxtype.keyword>protocol</syntaxtype.keyword> <decl.name>P3</decl.name></decl.protocol>",
972
1025
key.entities: [
973
1026
{
974
1027
key.kind: source.lang.swift.decl.function.method.instance,
975
1028
key.name: "p3Required()",
976
1029
key.usr: "s:5cake12P3P10p3RequiredyyF",
977
- key.offset: 676 ,
1030
+ key.offset: 692 ,
978
1031
key.length: 17,
979
1032
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>p3Required</decl.name>()</decl.function.method.instance>"
980
1033
}
@@ -995,8 +1048,8 @@ extension Dictionary.Keys where Key : Hashable {
995
1048
key.description: "Key : Hashable"
996
1049
}
997
1050
],
998
- key.offset: 697 ,
999
- key.length: 66 ,
1051
+ key.offset: 713 ,
1052
+ key.length: 45 ,
1000
1053
key.extends: {
1001
1054
key.kind: source.lang.swift.ref.struct,
1002
1055
key.name: "Keys",
@@ -1007,10 +1060,38 @@ extension Dictionary.Keys where Key : Hashable {
1007
1060
key.kind: source.lang.swift.decl.function.method.instance,
1008
1061
key.name: "foo()",
1009
1062
key.usr: "s:SD4KeysV5cake1E3fooyyF",
1010
- key.offset: 751 ,
1063
+ key.offset: 746 ,
1011
1064
key.length: 10,
1012
1065
key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>foo</decl.name>()</decl.function.method.instance>"
1013
1066
}
1014
1067
]
1068
+ },
1069
+ {
1070
+ key.kind: source.lang.swift.decl.extension.struct,
1071
+ key.generic_requirements: [
1072
+ {
1073
+ key.description: "Key : Hashable"
1074
+ },
1075
+ {
1076
+ key.description: "Key : P1"
1077
+ }
1078
+ ],
1079
+ key.offset: 760,
1080
+ key.length: 60,
1081
+ key.extends: {
1082
+ key.kind: source.lang.swift.ref.struct,
1083
+ key.name: "Keys",
1084
+ key.usr: "s:SD4KeysV"
1085
+ },
1086
+ key.entities: [
1087
+ {
1088
+ key.kind: source.lang.swift.decl.function.method.instance,
1089
+ key.name: "bar()",
1090
+ key.usr: "s:SD4KeysV5cake1AC2P1RzrlE3baryyF",
1091
+ key.offset: 808,
1092
+ key.length: 10,
1093
+ key.fully_annotated_decl: "<decl.function.method.instance><syntaxtype.keyword>func</syntaxtype.keyword> <decl.name>bar</decl.name>()</decl.function.method.instance>"
1094
+ }
1095
+ ]
1015
1096
}
1016
1097
]
0 commit comments