@@ -552,7 +552,7 @@ Node selfTracker(Class classWithMethod) {
552
552
/**
553
553
* Gets a reference to the `cls` argument of a classmethod on class `classWithMethod`.
554
554
*/
555
- private TypeTrackingNode clsTracker ( TypeTracker t , Class classWithMethod ) {
555
+ private TypeTrackingNode clsArgumentTracker ( TypeTracker t , Class classWithMethod ) {
556
556
t .start ( ) and
557
557
(
558
558
exists ( Function func |
@@ -567,15 +567,15 @@ private TypeTrackingNode clsTracker(TypeTracker t, Class classWithMethod) {
567
567
result .( CallCfgNode ) .getArg ( 0 ) = selfTracker ( classWithMethod )
568
568
)
569
569
or
570
- exists ( TypeTracker t2 | result = clsTracker ( t2 , classWithMethod ) .track ( t2 , t ) ) and
570
+ exists ( TypeTracker t2 | result = clsArgumentTracker ( t2 , classWithMethod ) .track ( t2 , t ) ) and
571
571
not result .( ParameterNodeImpl ) .isParameterOf ( _, any ( ParameterPosition pp | pp .isSelf ( ) ) )
572
572
}
573
573
574
574
/**
575
575
* Gets a reference to the `cls` argument of a classmethod on class `classWithMethod`.
576
576
*/
577
- Node clsTracker ( Class classWithMethod ) {
578
- clsTracker ( TypeTracker:: end ( ) , classWithMethod ) .flowsTo ( result )
577
+ Node clsArgumentTracker ( Class classWithMethod ) {
578
+ clsArgumentTracker ( TypeTracker:: end ( ) , classWithMethod ) .flowsTo ( result )
579
579
}
580
580
581
581
/**
@@ -763,7 +763,7 @@ private TypeTrackingNode attrReadTracker(TypeTracker t, AttrRead attr) {
763
763
t .start ( ) and
764
764
result = attr and
765
765
attr .getObject ( ) in [
766
- classTracker ( _) , classInstanceTracker ( _) , selfTracker ( _) , clsTracker ( _) ,
766
+ classTracker ( _) , classInstanceTracker ( _) , selfTracker ( _) , clsArgumentTracker ( _) ,
767
767
superCallNoArgumentTracker ( _) , superCallTwoArgumentTracker ( _, _)
768
768
]
769
769
or
@@ -887,7 +887,7 @@ private module MethodCalls {
887
887
) {
888
888
call .getFunction ( ) = attrReadTracker ( attr ) .asCfgNode ( ) and
889
889
attr .accesses ( self , functionName ) and
890
- self in [ clsTracker ( classWithMethod ) , selfTracker ( classWithMethod ) ]
890
+ self in [ clsArgumentTracker ( classWithMethod ) , selfTracker ( classWithMethod ) ]
891
891
}
892
892
893
893
/**
@@ -897,7 +897,7 @@ private module MethodCalls {
897
897
*/
898
898
predicate fromSuperNewCall ( CallNode call , Class classUsedInSuper , AttrRead attr , Node self ) {
899
899
fromSuper_join ( call , "__new__" , classUsedInSuper , attr , self ) and
900
- self in [ classTracker ( _) , clsTracker ( _) ]
900
+ self in [ classTracker ( _) , clsArgumentTracker ( _) ]
901
901
}
902
902
903
903
/**
@@ -998,7 +998,7 @@ predicate resolveClassCall(CallNode call, Class cls) {
998
998
or
999
999
// `cls()` inside a classmethod (which also contains `type(self)()` inside a method)
1000
1000
exists ( Class classWithMethod |
1001
- call .getFunction ( ) = clsTracker ( classWithMethod ) .asCfgNode ( ) and
1001
+ call .getFunction ( ) = clsArgumentTracker ( classWithMethod ) .asCfgNode ( ) and
1002
1002
getADirectSuperclass * ( cls ) = classWithMethod
1003
1003
)
1004
1004
}
@@ -1149,7 +1149,7 @@ predicate getCallArg(
1149
1149
type instanceof CallTypeClassMethod and
1150
1150
apos .isSelf ( ) and
1151
1151
resolveMethodCall ( call , target , type , arg ) and
1152
- ( arg = classTracker ( _) or arg = clsTracker ( _) ) and
1152
+ ( arg = classTracker ( _) or arg = clsArgumentTracker ( _) ) and
1153
1153
// dataflow lib has requirement that arguments and calls are in same enclosing callable.
1154
1154
exists ( CfgNode cfgNode | cfgNode .getNode ( ) = call |
1155
1155
cfgNode .getEnclosingCallable ( ) = arg .getEnclosingCallable ( )
0 commit comments