CodeQL library for Java
codeql/java-all 0.4.0-dev (changelog, source)
Search

Module Private

Provides predicates for compiling flow summaries down to atomic local steps, read steps, and store steps.

Import path

import semmle.code.java.dataflow.internal.FlowSummaryImpl

Imports

AccessPathSyntax

Module for parsing access paths from CSV models, both the identifying access path used by dynamic languages, and the input/output specifications for summary steps.

Predicates

summaryAllowParameterReturnInSelf

Holds if flow is allowed to pass from parameter p, to a return node, and back out to p.

summaryArgumentNode

Holds if summary node arg is at position pos in the call c.

summaryCallbackRange

Holds if a call targeting receiver should be synthesized inside c.

summaryNodeRange

Holds if a synthesized summary node is needed for the state state in summarized callable c.

summaryNodeType

Gets the type of synthesized summary node n.

summaryOutNode

Holds if summary node out contains output of kind rk from call c.

summaryParameterNodeRange

Holds if a parameter node at position pos is required for c.

summaryPostUpdateNode

Holds if summary node post is a post-update node with pre-update node pre.

summaryReturnNode

Holds if summary node ret is a return node of kind rk.

Classes

SummaryNodeState

A state used to break up (complex) flow summaries into atomic flow steps. For a flow summary

Datatypes

Modules

External

Provides a means of translating externally (e.g., CSV) defined flow summaries into a SummarizedCallables.

RenderSummarizedCallable

Provides query predicates for rendering the generated data flow graph for a summarized callable.

Steps

Provides a compilation of flow summaries to atomic data-flow steps.

TestOutput

Provides a query predicate for outputting a set of relevant flow summaries.