qtil
advanced-security/qtil-javascript 0.0.3
Search

Module DataFlow

Import path

import semmle.javascript.dataflow.DataFlow

Imports

Configuration

Provides a class for performing customized inter-procedural data flow.

FunctionWrapperSteps

Provides predicates for tracking functions through wrapper functions.

Nodes

Provides classes representing particular kinds of data flow nodes, such as nodes corresponding to function definitions or nodes corresponding to parameters.

Sources

Provides support for intra-procedural tracking of a customizable set of data flow nodes.

TypeInference

Provides classes implementing a simple intra-procedural flow analysis for inferring abstract values of nodes in the data-flow graph representation of the program.

TypeTracking

Provides the TypeTracker class for tracking types interprocedurally.

Predicates

capturedVariableNode

INTERNAL. DO NOT USE.

destructuredModuleImportNode

INTERNAL. DO NOT USE.

exceptionalFunctionReturnNode

INTERNAL: Use ExceptionalFunctionReturnNode instead.

exceptionalInvocationReturnNode

INTERNAL: Use ExceptionalInvocationReturnNode instead.

exprNode

Gets the data flow node corresponding to e.

fieldDeclarationNode

INTERNAL: Do not use outside standard library.

functionReturnNode

INTERNAL: Use FunctionReturnNode instead.

globalAccessPathRootPseudoNode

INTERNAL. DO NOT USE.

isIncomplete

Holds if the flow information for the node nd.

localFieldStep

Holds if there is a step from pred to succ through a field accessed through this in a class.

localFlowStep

Holds if data can flow from pred to succ in one local step.

lvalueNode

Gets the data flow node corresponding the given l-value expression, if such a node exists.

parameterNode

Gets the node corresponding to the initialization of parameter p.

parameterNode

INTERNAL: Use parameterNode(Parameter) instead.

reflectiveCallNode

Gets a data flow node representing the underlying call performed by the given call to Function.prototype.call or Function.prototype.apply.

ssaDefinitionNode

Gets the data flow node corresponding to ssa.

thisNode

Gets the node representing the receiver of the given function, or this in the given top-level.

thisNode

INTERNAL: Use thisNode(StmtContainer container) instead.

valueNode

Gets the data flow node corresponding to nd.

Classes

ExceptionalFunctionReturnNode

A data flow node representing the exceptions thrown by a function.

ExceptionalInvocationReturnNode

A data flow node representing the exceptions thrown by the callee of an invocation.

FunctionReturnNode

A data flow node representing the values returned by a function.

HtmlAttributeNode

A data flow node representing an HTML attribute.

Incompleteness

A classification of flows that are not modeled, or only modeled incompletely, by DataFlowNode:

Node

A node in the data flow graph.

PropRead

A data flow node that reads an object property.

PropRef

A data flow node that reads or writes an object property or class member.

PropWrite

A data flow node that writes to an object property.

ReflectiveParametersNode

A data flow node representing the arguments object given to a function.

SsaDefinitionNode

A node in the data flow graph which corresponds to an SSA variable definition.

TemplatePlaceholderTagNode

A data flow node representing the value plugged into a template tag.

ValueNode

A node in the data flow graph which corresponds to an expression, destructuring pattern, or declaration of a function, class, namespace, or enum.

XmlAttributeNode

A data flow node representing an XML attribute.

Modules

Impl

Provides classes representing various kinds of calls.

Aliases

argumentPassingStep

Holds if arg is passed as an argument into parameter parm through invocation invk of function f.