Module DataFlow
Import path
import semmle.code.java.dataflow.DataFlow
Predicates
exprNode |
Gets the node corresponding to |
getFieldQualifier |
Gets the node that occurs as the qualifier of |
getInstanceArgument |
Gets the instance argument of a non-static call. |
hasNonlocalValue |
Holds if the |
localExprFlow |
Holds if data can flow from |
localFlow |
Holds if data can flow from |
localFlowStep |
Holds if data can flow from |
parameterNode |
Gets the node corresponding to |
simpleLocalFlowStep |
INTERNAL: do not use. |
Classes
ArrayContent |
A reference through an array. |
BarrierGuard |
DEPRECATED: Use |
CollectionContent |
A reference through the contents of some collection-like container. |
Configuration |
A configuration of interprocedural data flow analysis. This defines sources, sinks, and any other configurable aspect of the analysis. Each use of the global data flow library must define its own unique extension of this abstract class. To create a configuration, extend this class with a subclass whose characteristic predicate is a unique singleton string. For example, write |
Content |
A description of the way data may be stored inside an object. Examples include instance fields, the contents of a collection object, or the contents of an array. |
ContentSet |
An entity that represents a set of |
ExplicitParameterNode |
A parameter, viewed as a node in a data flow graph. |
ExprNode |
An expression, viewed as a node in a data flow graph. |
FeatureEqualSourceSinkCallContext |
A flow configuration feature that implies that source-sink pairs have some shared existing call context. |
FeatureHasSinkCallContext |
A flow configuration feature that implies that sinks have some existing call context. |
FeatureHasSourceCallContext |
A flow configuration feature that implies that sources have some existing call context. |
FieldContent |
A reference through an instance field. |
FieldValueNode |
A node representing the value of a field. |
FlowFeature |
A flow configuration feature for use in |
FlowStateEmpty |
The default state, which is used when the state is unspecified for a source or a sink. |
ImplicitInstanceAccess |
An implicit read of |
ImplicitVarargsArray |
An implicit varargs array creation expression. |
InstanceAccessNode |
A node representing an |
InstanceParameterNode |
An instance parameter for an instance method or constructor. |
MapKeyContent |
A reference through a map key. |
MapValueContent |
A reference through a map value. |
Node |
An element, viewed as a node in a data flow graph. Either an expression, a parameter, or an implicit varargs array creation. |
ParameterNode |
An explicit or implicit parameter. |
PathNode |
A |
PostUpdateNode |
A node associated with an object after an operation that might have changed its state. |
SyntheticFieldContent |
A reference through a synthetic instance field. |
Modules
BarrierGuard |
Provides a set of barrier nodes for a guard that validates an expression. |
FlowStateString |
Provides |
Make |
Constructs a standard data flow computation. |
MakeWithState |
Constructs a data flow computation using flow state. |
MergePathGraph |
Constructs a |
Predicate signatures
explorationLimitSig |
Gets the exploration limit for |
guardChecksSig |
Holds if the guard |
Type signatures
Module signatures
ConfigSig |
An input configuration for data flow. |
DataFlowSig |
The output of a data flow computation. |
PathGraphSig | |
StateConfigSig |
An input configuration for data flow using flow state. |