Module MakeImplCommon
Import path
import codeql.dataflow.internal.DataFlowImplCommon
Imports
Predicates
accessPathApproxCostLimits | The cost limits for the |
accessPathCostLimits | The cost limits for the |
argumentPositionMatch | Holds if |
compatibleTypesFilter | |
getNodeDataFlowType | Gets the type of |
getNodeEnclosingCallable | Gets the enclosing callable of |
typeStrongerThanFilter |
Classes
AccessPathFront | The front of an access path. This is either a head or a nil. |
AccessPathFrontHead | |
AccessPathFrontNil | |
AccessPathFrontOption | An optional access path front. |
ApproxAccessPathFront | The front of an approximated access path. This is either a head or a nil. |
ApproxAccessPathFrontHead | |
ApproxAccessPathFrontNil | |
ApproxAccessPathFrontOption | An optional approximated access path front. |
ArgNode | A data-flow node that represents a call argument. |
ArgNodeEx | |
BooleanOption | An optional Boolean value. |
CastingNode | A |
DataFlowCallOption | An optional |
LocalCallContext | A call context that is relevant for pruning local flow. |
LocalCallContextAny | |
LocalCallContextSpecificCall | |
NodeEx | |
OutNodeExt | A node to which data can flow from a call. Either an ordinary out node or a post-update node associated with a call argument. |
ParamNode | The value of a parameter at function entry, viewed as a node in a data flow graph. |
ParamNodeEx | |
ParamUpdateReturnKind | |
RetNodeEx | A node from which flow can return to the caller. This is either a regular |
ReturnCtx | A return context used to calculate flow summaries in reverse flow. |
ReturnKindExt | An extended return kind. A return kind describes how data can be returned from a callable. This can either be through a returned value or an updated parameter. |
ReturnPosition | A callable tagged with a relevant return kind. |
ValueReturnKind |
Modules
CallContextSensitivity | Provides predicates releated to call-context sensitivity. |
DataFlowImplCommonPublic | |
TypeFlow | Given a call graph for a set of flow paths, this module calculates the type flow between parameter and argument nodes in the cases where it is possible for a type to first be weakened and then strengthened again. When the stronger types at the end-points of such a type flow path are incompatible, the relevant call edges can be excluded as impossible. |
Module signatures
Aliases
SndLevelScopeOption | Constructs an |
SndLevelScopeOption | An option type. This is either a singleton |