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

Module Make::DataFlowIntegration

Constructs the type Node and associated value step relations, which are intended to be included in the DataFlow::Node type and local step relations.

Additionally, this module also provides a barrier guards implementation.

Import path

import codeql.ssa.Ssa

Predicates

localFlowStep

Holds if there is a local flow step from nodeFrom to nodeTo.

localMustFlowStep

Holds if the value of nodeTo is given by nodeFrom.

Classes

ExprNode

An expression node.

ExprNodePreOrPost

A (post-update) expression node.

ExprPostUpdateNode

A post-update expression node.

Node

A data flow node that we need to reference in the value step relation.

ParameterNode

A parameter node.

SsaDefinitionExtNode

An SSA definition, viewed as a node in a data flow graph.

SsaInputNode

A node that represents an input to an SSA phi (read) definition.

SsaNode

A synthesized SSA data flow node.

Modules

BarrierGuard

Provides a set of barrier nodes for a guard that validates an expression.

BarrierGuardWithState

Provides a set of barrier nodes for a guard that validates an expression.

Predicate signatures

guardChecksSig

Holds if the guard g validates the expression e upon evaluating to branch.

Type signatures

Parameters