CodeQL library for C#
codeql/csharp-all 3.0.1 (changelog, source)
Search

Module DataFlow

Import path

import csharp

Imports

Predicates

assignableDefinitionNode

Gets a node corresponding to the definition def.

exprNode

Gets a node corresponding to expression e.

localExprFlow

Holds if data can flow from e1 to e2 in zero or more local (intra-procedural) steps.

localFlow

Holds if data flows from source to sink in zero or more local (intra-procedural) steps.

parameterNode

Gets the node corresponding to the value of parameter p at function entry.

Classes

AssignableDefinitionNode

A definition, viewed as a node in a data flow graph.

CapturedVariableContent

A captured variable.

Configuration

DEPRECATED: Use Global and GlobalWithState instead.

Content

A reference contained in an object. This is either a field, a property, or an element in a collection.

ContentSet

An entity that represents a set of Contents.

ElementContent

A reference to an element in a collection.

ExprNode

An expression, viewed as a node in a data flow graph.

FieldContent

A reference to a field.

Node

An element, viewed as a node in a data flow graph. Either an expression (ExprNode) or a parameter (ParameterNode).

NonLocalJumpNode

A data flow node that jumps between callables. This can be extended in framework code to add additional data flow steps.

ParameterNode

The value of a parameter at function entry, viewed as a node in a data flow graph.

PathNode

A Node augmented with a call context (except for sinks), an access path, and a configuration. Only those PathNodes that are reachable from a source, and which can reach a sink, are generated.

PrimaryConstructorParameterContent

A reference to a synthetic field corresponding to a primary constructor parameter.

PropertyContent

A reference to a property.

SyntheticFieldContent

A reference to a synthetic field.

Modules

BarrierGuard

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 v.

Aliases

PathGraph

Provides the query predicates needed to include a graph in a path-problem query.

flowsTo
localFlowStep

Holds if data flows from nodeFrom to nodeTo in exactly one local (intra-procedural) step.