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

Member predicate Guard::appliesTypeTest

Holds if this guard tests whether testedExpr has type testedType.

restricted is true if the test applies additional restrictions on top of just testedType, and so this guard failing does not guarantee testedExpr is not a testedType– for example, matching record R(Object o) with case R(String s) is a guard with an additional restriction on the type of field o, so the guard passing guarantees testedExpr is an R, but it failing does not guarantee testedExpr is not an R.

predicate appliesTypeTest(Expr testedExpr, Type testedType, boolean restricted)