@@ -260,7 +260,8 @@ private module Cached {
260
260
or
261
261
FlowSummaryImplSpecific:: ParsePositions:: isParsedKeywordParameterPosition ( _, name )
262
262
} or
263
- TAnyArgumentPosition ( )
263
+ TAnyArgumentPosition ( ) or
264
+ TAnyKeywordArgumentPosition ( )
264
265
265
266
cached
266
267
newtype TParameterPosition =
@@ -279,7 +280,8 @@ private module Cached {
279
280
or
280
281
FlowSummaryImplSpecific:: ParsePositions:: isParsedKeywordArgumentPosition ( _, name )
281
282
} or
282
- TAnyParameterPosition ( )
283
+ TAnyParameterPosition ( ) or
284
+ TAnyKeywordParameterPosition ( )
283
285
}
284
286
285
287
import Cached
@@ -483,6 +485,9 @@ class ParameterPosition extends TParameterPosition {
483
485
*/
484
486
predicate isAny ( ) { this = TAnyParameterPosition ( ) }
485
487
488
+ /** Holds if this position represents any positional parameter. */
489
+ predicate isAnyNamed ( ) { this = TAnyKeywordParameterPosition ( ) }
490
+
486
491
/** Gets a textual representation of this position. */
487
492
string toString ( ) {
488
493
this .isSelf ( ) and result = "self"
@@ -496,6 +501,8 @@ class ParameterPosition extends TParameterPosition {
496
501
exists ( string name | this .isKeyword ( name ) and result = "keyword " + name )
497
502
or
498
503
this .isAny ( ) and result = "any"
504
+ or
505
+ this .isAnyNamed ( ) and result = "any-named"
499
506
}
500
507
}
501
508
@@ -519,6 +526,9 @@ class ArgumentPosition extends TArgumentPosition {
519
526
*/
520
527
predicate isAny ( ) { this = TAnyArgumentPosition ( ) }
521
528
529
+ /** Holds if this position represents any positional parameter. */
530
+ predicate isAnyNamed ( ) { this = TAnyKeywordArgumentPosition ( ) }
531
+
522
532
/** Gets a textual representation of this position. */
523
533
string toString ( ) {
524
534
this .isSelf ( ) and result = "self"
@@ -530,6 +540,8 @@ class ArgumentPosition extends TArgumentPosition {
530
540
exists ( string name | this .isKeyword ( name ) and result = "keyword " + name )
531
541
or
532
542
this .isAny ( ) and result = "any"
543
+ or
544
+ this .isAnyNamed ( ) and result = "any-named"
533
545
}
534
546
}
535
547
@@ -551,4 +563,8 @@ predicate parameterMatch(ParameterPosition ppos, ArgumentPosition apos) {
551
563
ppos .isAny ( ) and not apos .isSelf ( )
552
564
or
553
565
apos .isAny ( ) and not ppos .isSelf ( )
566
+ or
567
+ ppos .isAnyNamed ( ) and apos .isKeyword ( _)
568
+ or
569
+ apos .isAnyNamed ( ) and ppos .isKeyword ( _)
554
570
}
0 commit comments