@@ -44,22 +44,11 @@ private predicate hasDelegateArgumentPosition2(SourceDeclarationCallable c, int
4444class CallableFlowSource extends TCallableFlowSource {
4545 /** Gets a textual representation of this flow source specification. */
4646 string toString ( ) { none ( ) }
47-
48- /** Gets the source of flow for call `c`, if any. */
49- Expr getSource ( Call c ) { none ( ) }
50-
51- /**
52- * Gets the type of the source for call `c`. Unlike `getSource()`, this
53- * is defined for all flow source specifications.
54- */
55- Type getSourceType ( Call c ) { result = this .getSource ( c ) .getType ( ) }
5647}
5748
5849/** A flow source specification: (method call) qualifier. */
5950class CallableFlowSourceQualifier extends CallableFlowSource , TCallableFlowSourceQualifier {
6051 override string toString ( ) { result = "qualifier" }
61-
62- override Expr getSource ( Call c ) { result = c .getChild ( - 1 ) }
6352}
6453
6554/** A flow source specification: (method call) argument. */
@@ -68,12 +57,7 @@ class CallableFlowSourceArg extends CallableFlowSource, TCallableFlowSourceArg {
6857
6958 CallableFlowSourceArg ( ) { this = TCallableFlowSourceArg ( i ) }
7059
71- /** Gets the index of this argument. */
72- int getArgumentIndex ( ) { result = i }
73-
7460 override string toString ( ) { result = "argument " + i }
75-
76- override Expr getSource ( Call c ) { result = c .getArgument ( i ) }
7761}
7862
7963/** A flow source specification: output from delegate argument. */
@@ -82,14 +66,7 @@ class CallableFlowSourceDelegateArg extends CallableFlowSource, TCallableFlowSou
8266
8367 CallableFlowSourceDelegateArg ( ) { this = TCallableFlowSourceDelegateArg ( i ) }
8468
85- /** Gets the index of this delegate argument. */
86- int getArgumentIndex ( ) { result = i }
87-
8869 override string toString ( ) { result = "output from argument " + i }
89-
90- override Expr getSource ( Call c ) { none ( ) }
91-
92- override Type getSourceType ( Call c ) { result = c .getArgument ( i ) .getType ( ) }
9370}
9471
9572/** A specification of data flow for a library (non-source code) type. */
0 commit comments