CodeQL library for Python
codeql/python-all 1.0.5-dev (changelog, source)
Search

Module TypeTrackingInput

Import path

import semmle.python.dataflow.new.internal.TypeTrackingImpl

Predicates

callStep

Holds if nodeFrom steps to nodeTo by being passed as a parameter in a call.

compatibleContents

Holds if a value stored with storeContents can be read back with loadContents.

hasFeatureBacktrackStoreTarget

Holds if the target of store steps should be backtracked via simpleLocalSmallStep to a LocalSourceNode. If this flag is not set, then the targets of store steps are assumed to be LocalSourceNodes themselves.

jumpStep

Holds if data can flow from node1 to node2 in a way that discards call contexts.

levelStepCall

Holds if there is a level step from nodeFrom to nodeTo, which may depend on the call graph.

levelStepNoCall

Holds if there is a level step from nodeFrom to nodeTo, which does not depend on the call graph.

loadStep

Holds if nodeTo is the result of accessing the content content of nodeFrom.

loadStoreStep

Holds if the loadContent of nodeFrom is stored in the storeContent of nodeTo.

nonStandardFlowsTo

Holds if a non-standard flowsTo predicate is needed, i.e., one that is not simply simpleLocalSmallStep*(localSource, dst).

returnStep

Holds if nodeFrom steps to nodeTo by being returned from a call.

simpleLocalSmallStep

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

storeStep

Holds if nodeFrom is being written to the content content of the object in nodeTo.

withContentStep

Holds if type-tracking should step from nodeFrom to nodeTo if inside a content matched by filter.

withoutContentStep

Holds if type-tracking should step from nodeFrom to nodeTo but block flow of contents matched by filter through here.

Classes

Content

A type of content to be used with the store and read steps.

ContentFilter

A label to use for WithContent and WithoutContent steps, restricting which ContentSet may pass through.

Aliases

LocalSourceNode

A data flow node that is a source of local flow. This includes things like - Expressions - Function parameters

Node

An element, viewed as a node in a data flow graph. Either an SSA variable (EssaNode) or a control flow node (CfgNode).