@@ -175,6 +175,7 @@ enum CompletionGroup {
175
175
staticMember,
176
176
typeReference,
177
177
localReference,
178
+ paramReference,
178
179
topLevel
179
180
}
180
181
@@ -222,6 +223,9 @@ class CompletionMetrics {
222
223
MeanReciprocalRankComputer localRefMrrComputer =
223
224
MeanReciprocalRankComputer ('local reference completions' );
224
225
226
+ MeanReciprocalRankComputer paramRefMrrComputer =
227
+ MeanReciprocalRankComputer ('param reference completions' );
228
+
225
229
MeanReciprocalRankComputer topLevelMrrComputer =
226
230
MeanReciprocalRankComputer ('non-type member completions' );
227
231
@@ -259,6 +263,10 @@ class CompletionMetrics {
259
263
/// (worst) ranks for completing to local references.
260
264
List <CompletionResult > localRefWorstResults = [];
261
265
266
+ /// A list of the top [maxWorstResults] completion results with the highest
267
+ /// (worst) ranks for completing to parameter references.
268
+ List <CompletionResult > paramRefWorstResults = [];
269
+
262
270
/// A list of the top [maxWorstResults] completion results with the highest
263
271
/// (worst) ranks for completing to top-level declarations.
264
272
List <CompletionResult > topLevelWorstResults = [];
@@ -279,6 +287,10 @@ class CompletionMetrics {
279
287
/// longest top compute for local references.
280
288
List <CompletionResult > localRefSlowestResults = [];
281
289
290
+ /// A list of the top [maxSlowestResults] completion results that took the
291
+ /// longest top compute for parameter references.
292
+ List <CompletionResult > paramRefSlowestResults = [];
293
+
282
294
/// A list of the top [maxSlowestResults] completion results that took the
283
295
/// longest top compute for top-level declarations.
284
296
List <CompletionResult > topLevelSlowestResults = [];
@@ -328,7 +340,9 @@ class CompletionMetrics {
328
340
case CompletionGroup .localReference:
329
341
localRefMrrComputer.addRank (rank);
330
342
break ;
331
-
343
+ case CompletionGroup .paramReference:
344
+ paramRefMrrComputer.addRank (rank);
345
+ break ;
332
346
case CompletionGroup .topLevel:
333
347
topLevelMrrComputer.addRank (rank);
334
348
break ;
@@ -355,6 +369,8 @@ class CompletionMetrics {
355
369
return typeRefSlowestResults;
356
370
case CompletionGroup .localReference:
357
371
return localRefSlowestResults;
372
+ case CompletionGroup .paramReference:
373
+ return paramRefSlowestResults;
358
374
case CompletionGroup .topLevel:
359
375
return topLevelSlowestResults;
360
376
}
@@ -389,6 +405,8 @@ class CompletionMetrics {
389
405
return typeRefWorstResults;
390
406
case CompletionGroup .localReference:
391
407
return localRefWorstResults;
408
+ case CompletionGroup .paramReference:
409
+ return paramRefWorstResults;
392
410
case CompletionGroup .topLevel:
393
411
return topLevelWorstResults;
394
412
}
@@ -563,6 +581,9 @@ class CompletionMetricsComputer {
563
581
metrics.localRefMrrComputer.printMean ();
564
582
print ('' );
565
583
584
+ metrics.paramRefMrrComputer.printMean ();
585
+ print ('' );
586
+
566
587
metrics.topLevelMrrComputer.printMean ();
567
588
print ('' );
568
589
@@ -639,6 +660,8 @@ class CompletionMetricsComputer {
639
660
_printSlowestResults ('Static members' , metrics.staticMemberSlowestResults);
640
661
_printSlowestResults ('Type references' , metrics.typeRefSlowestResults);
641
662
_printSlowestResults ('Local references' , metrics.localRefSlowestResults);
663
+ _printSlowestResults (
664
+ 'Parameter references' , metrics.paramRefSlowestResults);
642
665
_printSlowestResults ('Top level' , metrics.topLevelSlowestResults);
643
666
}
644
667
@@ -650,6 +673,7 @@ class CompletionMetricsComputer {
650
673
_printWorstResults ('Static members' , metrics.staticMemberWorstResults);
651
674
_printWorstResults ('Type references' , metrics.topLevelWorstResults);
652
675
_printWorstResults ('Local references' , metrics.localRefWorstResults);
676
+ _printWorstResults ('Parameter references' , metrics.paramRefWorstResults);
653
677
_printWorstResults ('Top level' , metrics.topLevelWorstResults);
654
678
}
655
679
@@ -1090,6 +1114,8 @@ class CompletionResult {
1090
1114
return CompletionGroup .typeReference;
1091
1115
} else if (expectedCompletion.elementKind == ElementKind .LOCAL_VARIABLE ) {
1092
1116
return CompletionGroup .localReference;
1117
+ } else if (expectedCompletion.elementKind == ElementKind .PARAMETER ) {
1118
+ return CompletionGroup .paramReference;
1093
1119
}
1094
1120
}
1095
1121
return CompletionGroup .topLevel;
0 commit comments