File tree 19 files changed +365
-150
lines changed
T723-027.signatureHelp.nested
T723-027.signatureHelp.overloaded
T723-027.signatureHelp.simple
U429-030.signatureHelp.dot_call
U805-023.signatureHelp.context
U805-023.signatureHelp.designators
U909-007.signatureHelp.closing_par
U909-007.signatureHelp.type_cast
signature_help_active_parameter
signature_help_active_parameter_multiple_signatures
19 files changed +365
-150
lines changed Original file line number Diff line number Diff line change @@ -889,6 +889,13 @@ package body LSP.Ada_Completions.Parameters is
889
889
Cursor => Cursor,
890
890
Prev_Signatures => Filter_Signatures,
891
891
Res => Res);
892
+
893
+ if not Res.activeSignature.Is_Set or else Res.activeSignature.Value + 1 not in Res.signatures.First_Index .. Res.signatures.Last_Index then
894
+ Res.activeSignature := (Is_Set => True, Value => 0 );
895
+ else
896
+ Res.activeParameter := Res.signatures.Element (Res.activeSignature.Value + 1 ).activeParameter;
897
+ end if ;
898
+ -- Vector index start at 1
892
899
end Propose_Signatures ;
893
900
894
901
-- -----------------
Original file line number Diff line number Diff line change 5
5
" call. The signature should switch to the nested call and then go " ,
6
6
" back to the initial one."
7
7
]
8
- },
8
+ },
9
9
{
10
10
"start" : {
11
11
"cmd" : [
12
12
" ${ALS}"
13
13
]
14
14
}
15
- },
15
+ },
16
16
{
17
17
"send" : {
18
18
"request" : {
51
51
{
52
52
"send" : {
53
53
"request" : {
54
- "jsonrpc" : " 2.0" ,
54
+ "jsonrpc" : " 2.0" ,
55
55
"method" : " initialized"
56
- },
56
+ },
57
57
"wait" : []
58
58
}
59
- },
59
+ },
60
60
{
61
61
"send" : {
62
62
"request" : {
68
68
"defaultCharset" : " ISO-8859-1"
69
69
}
70
70
}
71
- },
72
- "jsonrpc" : " 2.0" ,
71
+ },
72
+ "jsonrpc" : " 2.0" ,
73
73
"method" : " workspace/didChangeConfiguration"
74
- },
74
+ },
75
75
"wait" : []
76
76
}
77
- },
77
+ },
78
78
{
79
79
"send" : {
80
80
"request" : {
321
321
}
322
322
],
323
323
"activeSignature" : 0 ,
324
- "activeParameter" : 0
324
+ "activeParameter" : 1
325
325
}
326
326
}
327
327
]
396
396
}
397
397
],
398
398
"activeSignature" : 0 ,
399
- "activeParameter" : 0
399
+ "activeParameter" : 1
400
400
}
401
401
}
402
402
]
471
471
}
472
472
],
473
473
"activeSignature" : 0 ,
474
- "activeParameter" : 0
474
+ "activeParameter" : 1
475
475
}
476
476
}
477
477
]
546
546
}
547
547
],
548
548
"activeSignature" : 0 ,
549
- "activeParameter" : 0
549
+ "activeParameter" : 1
550
550
}
551
551
}
552
552
]
621
621
}
622
622
],
623
623
"activeSignature" : 0 ,
624
- "activeParameter" : 0
624
+ "activeParameter" : 1
625
625
}
626
626
}
627
627
]
696
696
}
697
697
],
698
698
"activeSignature" : 0 ,
699
- "activeParameter" : 0
699
+ "activeParameter" : 1
700
700
}
701
701
}
702
702
]
771
771
}
772
772
],
773
773
"activeSignature" : 0 ,
774
- "activeParameter" : 0
774
+ "activeParameter" : 1
775
775
}
776
776
}
777
777
]
846
846
}
847
847
],
848
848
"activeSignature" : 0 ,
849
- "activeParameter" : 0
849
+ "activeParameter" : 1
850
850
}
851
851
}
852
852
]
921
921
}
922
922
],
923
923
"activeSignature" : 0 ,
924
- "activeParameter" : 0
924
+ "activeParameter" : 1
925
925
}
926
926
}
927
927
]
1134
1134
}
1135
1135
],
1136
1136
"activeSignature" : 0 ,
1137
- "activeParameter" : 0
1137
+ "activeParameter" : 1
1138
1138
}
1139
1139
}
1140
1140
]
1209
1209
}
1210
1210
],
1211
1211
"activeSignature" : 0 ,
1212
- "activeParameter" : 0
1212
+ "activeParameter" : 2
1213
1213
}
1214
1214
}
1215
1215
]
1284
1284
}
1285
1285
],
1286
1286
"activeSignature" : 0 ,
1287
- "activeParameter" : 0
1287
+ "activeParameter" : 2
1288
1288
}
1289
1289
}
1290
1290
]
1359
1359
}
1360
1360
],
1361
1361
"activeSignature" : 0 ,
1362
- "activeParameter" : 0
1362
+ "activeParameter" : 2
1363
1363
}
1364
1364
}
1365
1365
]
Original file line number Diff line number Diff line change 354
354
}
355
355
],
356
356
"activeSignature" : 0 ,
357
- "activeParameter" : 0
357
+ "activeParameter" : 1
358
358
}
359
359
}
360
360
]
442
442
}
443
443
],
444
444
"activeSignature" : 0 ,
445
- "activeParameter" : 0
445
+ "activeParameter" : 1
446
446
}
447
447
}
448
448
]
530
530
}
531
531
],
532
532
"activeSignature" : 0 ,
533
- "activeParameter" : 0
533
+ "activeParameter" : 1
534
534
}
535
535
}
536
536
]
605
605
}
606
606
],
607
607
"activeSignature" : 0 ,
608
- "activeParameter" : 0
608
+ "activeParameter" : 2
609
609
}
610
610
}
611
611
]
680
680
}
681
681
],
682
682
"activeSignature" : 0 ,
683
- "activeParameter" : 0
683
+ "activeParameter" : 2
684
684
}
685
685
}
686
686
]
755
755
}
756
756
],
757
757
"activeSignature" : 0 ,
758
- "activeParameter" : 0
758
+ "activeParameter" : 2
759
759
}
760
760
}
761
761
]
Original file line number Diff line number Diff line change 4
4
" Test signatureHelp for a simple case and verify that the active " ,
5
5
" parameter is properly changed while editing"
6
6
]
7
- },
7
+ },
8
8
{
9
9
"start" : {
10
10
"cmd" : [
11
11
" ${ALS}"
12
12
]
13
13
}
14
- },
14
+ },
15
15
{
16
16
"send" : {
17
17
"request" : {
62
62
{
63
63
"send" : {
64
64
"request" : {
65
- "jsonrpc" : " 2.0" ,
65
+ "jsonrpc" : " 2.0" ,
66
66
"method" : " initialized"
67
- },
67
+ },
68
68
"wait" : []
69
69
}
70
- },
70
+ },
71
71
{
72
72
"send" : {
73
73
"request" : {
79
79
"defaultCharset" : " ISO-8859-1"
80
80
}
81
81
}
82
- },
83
- "jsonrpc" : " 2.0" ,
82
+ },
83
+ "jsonrpc" : " 2.0" ,
84
84
"method" : " workspace/didChangeConfiguration"
85
- },
85
+ },
86
86
"wait" : []
87
87
}
88
- },
88
+ },
89
89
{
90
90
"send" : {
91
91
"request" : {
472
472
}
473
473
],
474
474
"activeSignature" : 0 ,
475
- "activeParameter" : 0
475
+ "activeParameter" : 1
476
476
}
477
477
}
478
478
]
547
547
}
548
548
],
549
549
"activeSignature" : 0 ,
550
- "activeParameter" : 0
550
+ "activeParameter" : 1
551
551
}
552
552
}
553
553
]
622
622
}
623
623
],
624
624
"activeSignature" : 0 ,
625
- "activeParameter" : 0
625
+ "activeParameter" : 1
626
626
}
627
627
}
628
628
]
697
697
}
698
698
],
699
699
"activeSignature" : 0 ,
700
- "activeParameter" : 0
700
+ "activeParameter" : 2
701
701
}
702
702
}
703
703
]
772
772
}
773
773
],
774
774
"activeSignature" : 0 ,
775
- "activeParameter" : 0
775
+ "activeParameter" : 2
776
776
}
777
777
}
778
778
]
847
847
}
848
848
],
849
849
"activeSignature" : 0 ,
850
- "activeParameter" : 0
850
+ "activeParameter" : 2
851
851
}
852
852
}
853
853
]
You can’t perform that action at this time.
0 commit comments