CodeQL library for Swift
codeql/swift-all 2.0.4-dev (changelog, source)
Search

Module Flow

Constructs the type ClosureNode and associated step relations, which are intended to be included in the data-flow node and step relations.

Import path

import codeql.dataflow.VariableCapture

Predicates

capturePostUpdateNode

Holds if post is a PostUpdateNode for pre.

clearsContent

Holds if captured variable v is cleared at node.

heuristicAllowInstanceParameterReturnInSelf

Holds if this-to-this summaries are expected for c.

localFlowStep

Holds if there is a local flow step from node1 to node2.

readStep

Holds if there is a read step from node1 to node2.

storeStep

Holds if there is a store step from node1 to node2.

Classes

ClosureNode

A data flow node that we need to reference in the step relations for captured variables.

ExprNode

A data flow node for an expression.

ExprPostUpdateNode

A data flow node for the PostUpdateNode of an expression.

MallocNode

A data flow node for the instance parameter argument of a constructor call.

ParameterNode

A data flow node for a parameter.

SourceVariable

A storage location for a captured variable in a specific callable. This is either the variable itself (in its defining scope) or an instance variable this (in a capturing scope).

SynthesizedCaptureNode

A synthesized data flow node representing the storage of a captured variable.

ThisParameterNode

A data flow node for an instance parameter.

VariableWriteSourceNode

A node representing the incoming value about to be written at the given assignment.

Modules

Parameters