39
40 import javax.annotation.processing.Processor;
41 import javax.lang.model.SourceVersion;
42 import javax.tools.DiagnosticListener;
43 import javax.tools.JavaFileManager;
44 import javax.tools.JavaFileObject;
45 import javax.tools.StandardLocation;
46
47 import com.sun.source.util.TaskEvent;
48 import com.sun.tools.javac.api.MultiTaskListener;
49 import com.sun.tools.javac.code.*;
50 import com.sun.tools.javac.code.Lint.LintCategory;
51 import com.sun.tools.javac.code.Symbol.ClassSymbol;
52 import com.sun.tools.javac.code.Symbol.CompletionFailure;
53 import com.sun.tools.javac.code.Symbol.PackageSymbol;
54 import com.sun.tools.javac.comp.*;
55 import com.sun.tools.javac.comp.CompileStates.CompileState;
56 import com.sun.tools.javac.file.JavacFileManager;
57 import com.sun.tools.javac.jvm.*;
58 import com.sun.tools.javac.parser.*;
59 import com.sun.tools.javac.processing.*;
60 import com.sun.tools.javac.tree.*;
61 import com.sun.tools.javac.tree.JCTree.JCClassDecl;
62 import com.sun.tools.javac.tree.JCTree.JCCompilationUnit;
63 import com.sun.tools.javac.tree.JCTree.JCExpression;
64 import com.sun.tools.javac.tree.JCTree.JCLambda;
65 import com.sun.tools.javac.tree.JCTree.JCMemberReference;
66 import com.sun.tools.javac.tree.JCTree.JCMethodDecl;
67 import com.sun.tools.javac.tree.JCTree.JCVariableDecl;
68 import com.sun.tools.javac.util.*;
69 import com.sun.tools.javac.util.Log.WriterKind;
70
71 import static com.sun.tools.javac.code.Kinds.Kind.*;
72 import static com.sun.tools.javac.code.TypeTag.CLASS;
73 import static com.sun.tools.javac.main.Option.*;
74 import static com.sun.tools.javac.util.JCDiagnostic.DiagnosticFlag.*;
75 import static javax.tools.StandardLocation.CLASS_OUTPUT;
76
77 /** This class could be the main entry point for GJC when GJC is used as a
78 * component in a larger software system. It provides operations to
412 implicitSourcePolicy = ImplicitSourcePolicy.decode(options.get("-implicit"));
413
414 completionFailureName =
415 options.isSet("failcomplete")
416 ? names.fromString(options.get("failcomplete"))
417 : null;
418
419 shouldStopPolicyIfError =
420 options.isSet("shouldStopPolicy") // backwards compatible
421 ? CompileState.valueOf(options.get("shouldStopPolicy"))
422 : options.isSet("shouldStopPolicyIfError")
423 ? CompileState.valueOf(options.get("shouldStopPolicyIfError"))
424 : CompileState.INIT;
425 shouldStopPolicyIfNoError =
426 options.isSet("shouldStopPolicyIfNoError")
427 ? CompileState.valueOf(options.get("shouldStopPolicyIfNoError"))
428 : CompileState.GENERATE;
429
430 if (options.isUnset("oldDiags"))
431 log.setDiagnosticFormatter(RichDiagnosticFormatter.instance(context));
432 }
433
434 /* Switches:
435 */
436
437 /** Verbose output.
438 */
439 public boolean verbose;
440
441 /** Emit plain Java source files rather than class files.
442 */
443 public boolean sourceOutput;
444
445 /** Emit stub source files rather than class files.
446 */
447 public boolean stubOutput;
448
449 /** Generate attributed parse tree only.
450 */
451 public boolean attrParseOnly;
|
39
40 import javax.annotation.processing.Processor;
41 import javax.lang.model.SourceVersion;
42 import javax.tools.DiagnosticListener;
43 import javax.tools.JavaFileManager;
44 import javax.tools.JavaFileObject;
45 import javax.tools.StandardLocation;
46
47 import com.sun.source.util.TaskEvent;
48 import com.sun.tools.javac.api.MultiTaskListener;
49 import com.sun.tools.javac.code.*;
50 import com.sun.tools.javac.code.Lint.LintCategory;
51 import com.sun.tools.javac.code.Symbol.ClassSymbol;
52 import com.sun.tools.javac.code.Symbol.CompletionFailure;
53 import com.sun.tools.javac.code.Symbol.PackageSymbol;
54 import com.sun.tools.javac.comp.*;
55 import com.sun.tools.javac.comp.CompileStates.CompileState;
56 import com.sun.tools.javac.file.JavacFileManager;
57 import com.sun.tools.javac.jvm.*;
58 import com.sun.tools.javac.parser.*;
59 import com.sun.tools.javac.platform.PlatformDescription;
60 import com.sun.tools.javac.processing.*;
61 import com.sun.tools.javac.tree.*;
62 import com.sun.tools.javac.tree.JCTree.JCClassDecl;
63 import com.sun.tools.javac.tree.JCTree.JCCompilationUnit;
64 import com.sun.tools.javac.tree.JCTree.JCExpression;
65 import com.sun.tools.javac.tree.JCTree.JCLambda;
66 import com.sun.tools.javac.tree.JCTree.JCMemberReference;
67 import com.sun.tools.javac.tree.JCTree.JCMethodDecl;
68 import com.sun.tools.javac.tree.JCTree.JCVariableDecl;
69 import com.sun.tools.javac.util.*;
70 import com.sun.tools.javac.util.Log.WriterKind;
71
72 import static com.sun.tools.javac.code.Kinds.Kind.*;
73 import static com.sun.tools.javac.code.TypeTag.CLASS;
74 import static com.sun.tools.javac.main.Option.*;
75 import static com.sun.tools.javac.util.JCDiagnostic.DiagnosticFlag.*;
76 import static javax.tools.StandardLocation.CLASS_OUTPUT;
77
78 /** This class could be the main entry point for GJC when GJC is used as a
79 * component in a larger software system. It provides operations to
413 implicitSourcePolicy = ImplicitSourcePolicy.decode(options.get("-implicit"));
414
415 completionFailureName =
416 options.isSet("failcomplete")
417 ? names.fromString(options.get("failcomplete"))
418 : null;
419
420 shouldStopPolicyIfError =
421 options.isSet("shouldStopPolicy") // backwards compatible
422 ? CompileState.valueOf(options.get("shouldStopPolicy"))
423 : options.isSet("shouldStopPolicyIfError")
424 ? CompileState.valueOf(options.get("shouldStopPolicyIfError"))
425 : CompileState.INIT;
426 shouldStopPolicyIfNoError =
427 options.isSet("shouldStopPolicyIfNoError")
428 ? CompileState.valueOf(options.get("shouldStopPolicyIfNoError"))
429 : CompileState.GENERATE;
430
431 if (options.isUnset("oldDiags"))
432 log.setDiagnosticFormatter(RichDiagnosticFormatter.instance(context));
433
434 PlatformDescription platformProvider = context.get(PlatformDescription.class);
435
436 if (platformProvider != null)
437 closeables = closeables.prepend(platformProvider);
438 }
439
440 /* Switches:
441 */
442
443 /** Verbose output.
444 */
445 public boolean verbose;
446
447 /** Emit plain Java source files rather than class files.
448 */
449 public boolean sourceOutput;
450
451 /** Emit stub source files rather than class files.
452 */
453 public boolean stubOutput;
454
455 /** Generate attributed parse tree only.
456 */
457 public boolean attrParseOnly;
|