# Package org.eclipse.jdt.core.compiler

package org.eclipse.jdt.core.compiler
This package contains compiler associated infrastructure APIs.

## Package Specification

This package contains some compiler tooling APIs, allowing to perform operations at a lower-level than using the JavaModel.

Related Packages
Package
Description
org.eclipse.jdt.core
The Java model is the set of classes that model the objects associated with creating, editing, and building a Java program.
org.eclipse.jdt.core.compiler.batch
This package contains the batch compiler API.
Class
Description
BuildContext
The context of a build event that is notified to interested compilation participants when `a build is starting`, or to annotations processors when `a source file has annotations`.
CategorizedProblem
Richer description of a Java problem, as detected by the compiler or some of the underlying technology reusing the compiler.
CharOperation
This class is a collection of helper methods to manipulate char arrays.
CompilationParticipant
A compilation participant is notified of events occurring during the compilation process.
CompilationProgress
A compilation progress is used by the `BatchCompiler` to report progress during compilation.
InvalidInputException
Exception thrown by a scanner when encountering lexical errors.
IProblem
Description of a Java problem, as detected by the compiler or some of the underlying technology reusing the compiler.
IScanner
Caveat: With the introduction of "restricted keywords" in Java 9 it is impossible to classify a token without the help of a parser.
ITerminalSymbols
Maps each terminal symbol in the java-grammar into a unique integer.
ReconcileContext
The context of a reconcile event that is notified to interested compilation participants while a reconcile operation is running.