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

Class Compilation

An invocation of the compiler. Note that more than one file may be compiled per invocation. For example, this command compiles three source files:

javac Foo.java Bar.java Baz.java

Two things happen to each file during a compilation:

  1. The file is compiled by a real compiler, such as javac or kotlinc.
  2. The file is parsed by the CodeQL front-end.
  3. The parsed representation is converted to database tables by the CodeQL extractor.

This class provides CPU and elapsed time information for steps 2 and 3, but not for step 1.

Import path

import java

Direct supertypes

Predicates

extractionStarted

Holds if extraction for the compilation started.

extractionSuccessful

Holds if the extractor succeeded without error.

fileCompiledNonRecoverableErrors

Holds if the ith file during this invocation had non-recoverable extraction errors.

fileCompiledRecoverableErrors

Holds if the ith file during this invocation had recoverable extraction errors.

fileCompiledSuccessful

Holds if the ith file during this invocation was successfully extracted.

getAFileCompiled

Gets a file compiled during this invocation.

getAnArgument

Gets an argument passed to the extractor on this invocation.

getArgument

Gets the ith argument passed to the extractor on this invocation.

getCompilerCpuSeconds

Gets the total amount of CPU time spent processing all the files in the compiler.

getCompilerElapsedSeconds

Gets the total amount of elapsed time while processing all the files in the compiler.

getExtractorCpuSeconds

Gets the amount of CPU time spent processing file number i in the extractor.

getExtractorElapsedSeconds

Gets the amount of elapsed time while processing file number i in the extractor.

getFileCompiled

Gets the ith file compiled during this invocation.

getFrontendCpuSeconds

Gets the amount of CPU time spent processing file number i in the front-end.

getFrontendElapsedSeconds

Gets the amount of elapsed time while processing file number i in the front-end.

getTotalCpuSeconds

Gets the total amount of CPU time spent processing all the files in the front-end and extractor.

getTotalElapsedSeconds

Gets the total amount of elapsed time while processing all the files in the front-end and extractor.

isJava

Holds if this is a compilation of Java code.

isKotlin

Holds if this is a compilation of Kotlin code.

nonRecoverableErrors

Holds if the extractor encountered non-recoverable errors.

normalTermination

Holds if the extractor terminated normally. Terminating with an exit code indicating that an error occurred is considered normal termination, but crashing due to something like a segfault is not.

recoverableErrors

Holds if the extractor encountered recoverable errors.

toString

Gets a textual representation of this element.