178 private final Names names;
179 private final Enter enter;
180 private final Completer initialCompleter;
181 private final Check chk;
182
183 private final Context context;
184
185 /**
186 * Support for preview language features.
187 */
188 private final Preview preview;
189
190 /** Get the JavacProcessingEnvironment instance for this context. */
191 public static JavacProcessingEnvironment instance(Context context) {
192 JavacProcessingEnvironment instance = context.get(JavacProcessingEnvironment.class);
193 if (instance == null)
194 instance = new JavacProcessingEnvironment(context);
195 return instance;
196 }
197
198 protected JavacProcessingEnvironment(Context context) {
199 this.context = context;
200 context.put(JavacProcessingEnvironment.class, this);
201 log = Log.instance(context);
202 source = Source.instance(context);
203 diags = JCDiagnostic.Factory.instance(context);
204 options = Options.instance(context);
205 printProcessorInfo = options.isSet(Option.XPRINTPROCESSORINFO);
206 printRounds = options.isSet(Option.XPRINTROUNDS);
207 verbose = options.isSet(Option.VERBOSE);
208 compiler = JavaCompiler.instance(context);
209 if (options.isSet(Option.PROC, "only") || options.isSet(Option.XPRINT)) {
210 compiler.shouldStopPolicyIfNoError = CompileState.PROCESS;
211 }
212 fatalErrors = options.isSet("fatalEnterError");
213 showResolveErrors = options.isSet("showResolveErrors");
214 werror = compiler.isWerror(PROCESSING);
215 fileManager = context.get(JavaFileManager.class);
216 platformAnnotations = initPlatformAnnotations();
217
|
178 private final Names names;
179 private final Enter enter;
180 private final Completer initialCompleter;
181 private final Check chk;
182
183 private final Context context;
184
185 /**
186 * Support for preview language features.
187 */
188 private final Preview preview;
189
190 /** Get the JavacProcessingEnvironment instance for this context. */
191 public static JavacProcessingEnvironment instance(Context context) {
192 JavacProcessingEnvironment instance = context.get(JavacProcessingEnvironment.class);
193 if (instance == null)
194 instance = new JavacProcessingEnvironment(context);
195 return instance;
196 }
197
198 @SuppressWarnings("this-escape")
199 protected JavacProcessingEnvironment(Context context) {
200 this.context = context;
201 context.put(JavacProcessingEnvironment.class, this);
202 log = Log.instance(context);
203 source = Source.instance(context);
204 diags = JCDiagnostic.Factory.instance(context);
205 options = Options.instance(context);
206 printProcessorInfo = options.isSet(Option.XPRINTPROCESSORINFO);
207 printRounds = options.isSet(Option.XPRINTROUNDS);
208 verbose = options.isSet(Option.VERBOSE);
209 compiler = JavaCompiler.instance(context);
210 if (options.isSet(Option.PROC, "only") || options.isSet(Option.XPRINT)) {
211 compiler.shouldStopPolicyIfNoError = CompileState.PROCESS;
212 }
213 fatalErrors = options.isSet("fatalEnterError");
214 showResolveErrors = options.isSet("showResolveErrors");
215 werror = compiler.isWerror(PROCESSING);
216 fileManager = context.get(JavaFileManager.class);
217 platformAnnotations = initPlatformAnnotations();
218
|