CodeQL library for Java/Kotlin
codeql/java-all 0.8.12 (changelog, source)
Search

Module TypeFlow

Provides predicates for giving improved type bounds on expressions.

An inferred bound on the runtime type of an expression can be either exact or merely an upper bound. Bounds are only reported if they are likely to be better than the static bound, which can happen either if an inferred exact type has a subtype or if an inferred upper bound passed through at least one explicit or implicit cast that lost type information.

Import path

import semmle.code.java.dataflow.TypeFlow

Imports

TypeFlowBounds
java

Provides all default Java QL imports.

Predicates

arrayTypeTestGuarded

Holds if aa is an access to a value that is guarded by instanceof t or case e t.

Classes

Node

A Field, BaseSsaVariable, Expr, or Method.