File tree Expand file tree Collapse file tree
javascript/ql/src/semmle/javascript Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -15,6 +15,11 @@ module Closure {
1515 abstract string getClosureNamespace ( ) ;
1616 }
1717
18+ /**
19+ * A dataflow node that returns the value of a closure namespace.
20+ */
21+ abstract class ClosureNamespaceAccess extends ClosureNamespaceRef , DataFlow:: SourceNode { }
22+
1823 /**
1924 * A call to a method on the `goog.` namespace, as a closure reference.
2025 */
@@ -44,7 +49,7 @@ module Closure {
4449 /**
4550 * A call to `goog.require`.
4651 */
47- class ClosureRequireCall extends DefaultNamespaceRef {
52+ class ClosureRequireCall extends DefaultNamespaceRef , ClosureNamespaceAccess {
4853 ClosureRequireCall ( ) { getMethodName ( ) = "require" }
4954 }
5055
@@ -172,7 +177,7 @@ module Closure {
172177 result = getWrittenLibraryAccessPath ( write )
173178 )
174179 or
175- result = node .( ClosureRequireCall ) .getClosureNamespace ( )
180+ result = node .( ClosureNamespaceAccess ) .getClosureNamespace ( )
176181 }
177182
178183 /**
You can’t perform that action at this time.
0 commit comments