└── Compiler_javac ├── .classpath ├── .gitignore ├── .project ├── .settings ├── org.eclipse.core.resources.prefs ├── org.eclipse.jdt.core.prefs └── org.maven.ide.eclipse.prefs ├── pom.xml ├── src ├── main │ └── java │ │ └── com │ │ └── sun │ │ ├── javadoc │ │ ├── AnnotationDesc.java │ │ ├── AnnotationTypeDoc.java │ │ ├── AnnotationTypeElementDoc.java │ │ ├── AnnotationValue.java │ │ ├── ClassDoc.java │ │ ├── ConstructorDoc.java │ │ ├── Doc.java │ │ ├── DocErrorReporter.java │ │ ├── Doclet.java │ │ ├── ExecutableMemberDoc.java │ │ ├── FieldDoc.java │ │ ├── LanguageVersion.java │ │ ├── MemberDoc.java │ │ ├── MethodDoc.java │ │ ├── PackageDoc.java │ │ ├── ParamTag.java │ │ ├── Parameter.java │ │ ├── ParameterizedType.java │ │ ├── ProgramElementDoc.java │ │ ├── RootDoc.java │ │ ├── SeeTag.java │ │ ├── SerialFieldTag.java │ │ ├── SourcePosition.java │ │ ├── Tag.java │ │ ├── ThrowsTag.java │ │ ├── Type.java │ │ ├── TypeVariable.java │ │ ├── WildcardType.java │ │ └── package.html │ │ ├── mirror │ │ ├── apt │ │ │ ├── AnnotationProcessor.java │ │ │ ├── AnnotationProcessorEnvironment.java │ │ │ ├── AnnotationProcessorFactory.java │ │ │ ├── AnnotationProcessorListener.java │ │ │ ├── AnnotationProcessors.java │ │ │ ├── Filer.java │ │ │ ├── Messager.java │ │ │ ├── RoundCompleteEvent.java │ │ │ ├── RoundCompleteListener.java │ │ │ ├── RoundState.java │ │ │ └── package-info.java │ │ ├── declaration │ │ │ ├── AnnotationMirror.java │ │ │ ├── AnnotationTypeDeclaration.java │ │ │ ├── AnnotationTypeElementDeclaration.java │ │ │ ├── AnnotationValue.java │ │ │ ├── ClassDeclaration.java │ │ │ ├── ConstructorDeclaration.java │ │ │ ├── Declaration.java │ │ │ ├── EnumConstantDeclaration.java │ │ │ ├── EnumDeclaration.java │ │ │ ├── ExecutableDeclaration.java │ │ │ ├── FieldDeclaration.java │ │ │ ├── InterfaceDeclaration.java │ │ │ ├── MemberDeclaration.java │ │ │ ├── MethodDeclaration.java │ │ │ ├── Modifier.java │ │ │ ├── PackageDeclaration.java │ │ │ ├── ParameterDeclaration.java │ │ │ ├── TypeDeclaration.java │ │ │ ├── TypeParameterDeclaration.java │ │ │ └── package-info.java │ │ ├── overview.html │ │ ├── type │ │ │ ├── AnnotationType.java │ │ │ ├── ArrayType.java │ │ │ ├── ClassType.java │ │ │ ├── DeclaredType.java │ │ │ ├── EnumType.java │ │ │ ├── InterfaceType.java │ │ │ ├── MirroredTypeException.java │ │ │ ├── MirroredTypesException.java │ │ │ ├── PrimitiveType.java │ │ │ ├── ReferenceType.java │ │ │ ├── TypeMirror.java │ │ │ ├── TypeVariable.java │ │ │ ├── VoidType.java │ │ │ ├── WildcardType.java │ │ │ └── package-info.java │ │ └── util │ │ │ ├── DeclarationFilter.java │ │ │ ├── DeclarationScanner.java │ │ │ ├── DeclarationVisitor.java │ │ │ ├── DeclarationVisitors.java │ │ │ ├── Declarations.java │ │ │ ├── SimpleDeclarationVisitor.java │ │ │ ├── SimpleTypeVisitor.java │ │ │ ├── SourceOrderDeclScanner.java │ │ │ ├── SourcePosition.java │ │ │ ├── TypeVisitor.java │ │ │ ├── Types.java │ │ │ └── package-info.java │ │ ├── source │ │ ├── tree │ │ │ ├── AnnotationTree.java │ │ │ ├── ArrayAccessTree.java │ │ │ ├── ArrayTypeTree.java │ │ │ ├── AssertTree.java │ │ │ ├── AssignmentTree.java │ │ │ ├── BinaryTree.java │ │ │ ├── BlockTree.java │ │ │ ├── BreakTree.java │ │ │ ├── CaseTree.java │ │ │ ├── CatchTree.java │ │ │ ├── ClassTree.java │ │ │ ├── CompilationUnitTree.java │ │ │ ├── CompoundAssignmentTree.java │ │ │ ├── ConditionalExpressionTree.java │ │ │ ├── ContinueTree.java │ │ │ ├── DoWhileLoopTree.java │ │ │ ├── EmptyStatementTree.java │ │ │ ├── EnhancedForLoopTree.java │ │ │ ├── ErroneousTree.java │ │ │ ├── ExpressionStatementTree.java │ │ │ ├── ExpressionTree.java │ │ │ ├── ForLoopTree.java │ │ │ ├── IdentifierTree.java │ │ │ ├── IfTree.java │ │ │ ├── ImportTree.java │ │ │ ├── InstanceOfTree.java │ │ │ ├── LabeledStatementTree.java │ │ │ ├── LineMap.java │ │ │ ├── LiteralTree.java │ │ │ ├── MemberSelectTree.java │ │ │ ├── MethodInvocationTree.java │ │ │ ├── MethodTree.java │ │ │ ├── ModifiersTree.java │ │ │ ├── NewArrayTree.java │ │ │ ├── NewClassTree.java │ │ │ ├── ParameterizedTypeTree.java │ │ │ ├── ParenthesizedTree.java │ │ │ ├── PrimitiveTypeTree.java │ │ │ ├── ReturnTree.java │ │ │ ├── Scope.java │ │ │ ├── StatementTree.java │ │ │ ├── SwitchTree.java │ │ │ ├── SynchronizedTree.java │ │ │ ├── ThrowTree.java │ │ │ ├── Tree.java │ │ │ ├── TreeVisitor.java │ │ │ ├── TryTree.java │ │ │ ├── TypeCastTree.java │ │ │ ├── TypeParameterTree.java │ │ │ ├── UnaryTree.java │ │ │ ├── UnionTypeTree.java │ │ │ ├── VariableTree.java │ │ │ ├── WhileLoopTree.java │ │ │ ├── WildcardTree.java │ │ │ └── package-info.java │ │ └── util │ │ │ ├── JavacTask.java │ │ │ ├── SimpleTreeVisitor.java │ │ │ ├── SourcePositions.java │ │ │ ├── TaskEvent.java │ │ │ ├── TaskListener.java │ │ │ ├── TreePath.java │ │ │ ├── TreePathScanner.java │ │ │ ├── TreeScanner.java │ │ │ ├── Trees.java │ │ │ └── package-info.java │ │ └── tools │ │ ├── apt │ │ ├── Main.java │ │ ├── comp │ │ │ ├── AnnotationProcessingError.java │ │ │ ├── Apt.java │ │ │ ├── BootstrapAPF.java │ │ │ ├── PrintAP.java │ │ │ └── UsageMessageNeededException.java │ │ ├── main │ │ │ ├── AptJavaCompiler.java │ │ │ ├── CommandLine.java │ │ │ └── Main.java │ │ ├── mirror │ │ │ ├── AptEnv.java │ │ │ ├── apt │ │ │ │ ├── AnnotationProcessorEnvironmentImpl.java │ │ │ │ ├── FilerImpl.java │ │ │ │ ├── MessagerImpl.java │ │ │ │ ├── RoundCompleteEventImpl.java │ │ │ │ └── RoundStateImpl.java │ │ │ ├── declaration │ │ │ │ ├── AnnotationMirrorImpl.java │ │ │ │ ├── AnnotationProxyMaker.java │ │ │ │ ├── AnnotationTypeDeclarationImpl.java │ │ │ │ ├── AnnotationTypeElementDeclarationImpl.java │ │ │ │ ├── AnnotationValueImpl.java │ │ │ │ ├── ClassDeclarationImpl.java │ │ │ │ ├── Constants.java │ │ │ │ ├── ConstructorDeclarationImpl.java │ │ │ │ ├── DeclarationImpl.java │ │ │ │ ├── DeclarationMaker.java │ │ │ │ ├── EnumConstantDeclarationImpl.java │ │ │ │ ├── EnumDeclarationImpl.java │ │ │ │ ├── ExecutableDeclarationImpl.java │ │ │ │ ├── FieldDeclarationImpl.java │ │ │ │ ├── InterfaceDeclarationImpl.java │ │ │ │ ├── MemberDeclarationImpl.java │ │ │ │ ├── MethodDeclarationImpl.java │ │ │ │ ├── PackageDeclarationImpl.java │ │ │ │ ├── ParameterDeclarationImpl.java │ │ │ │ ├── TypeDeclarationImpl.java │ │ │ │ └── TypeParameterDeclarationImpl.java │ │ │ ├── type │ │ │ │ ├── AnnotationTypeImpl.java │ │ │ │ ├── ArrayTypeImpl.java │ │ │ │ ├── ClassTypeImpl.java │ │ │ │ ├── DeclaredTypeImpl.java │ │ │ │ ├── EnumTypeImpl.java │ │ │ │ ├── InterfaceTypeImpl.java │ │ │ │ ├── PrimitiveTypeImpl.java │ │ │ │ ├── TypeMaker.java │ │ │ │ ├── TypeMirrorImpl.java │ │ │ │ ├── TypeVariableImpl.java │ │ │ │ ├── VoidTypeImpl.java │ │ │ │ └── WildcardTypeImpl.java │ │ │ └── util │ │ │ │ ├── DeclarationsImpl.java │ │ │ │ ├── SourcePositionImpl.java │ │ │ │ └── TypesImpl.java │ │ ├── resources │ │ │ ├── apt.properties │ │ │ ├── apt_ja.properties │ │ │ └── apt_zh_CN.properties │ │ └── util │ │ │ └── Bark.java │ │ ├── classfile │ │ ├── AccessFlags.java │ │ ├── Annotation.java │ │ ├── AnnotationDefault_attribute.java │ │ ├── Attribute.java │ │ ├── AttributeException.java │ │ ├── Attributes.java │ │ ├── BootstrapMethods_attribute.java │ │ ├── CharacterRangeTable_attribute.java │ │ ├── ClassFile.java │ │ ├── ClassReader.java │ │ ├── ClassTranslator.java │ │ ├── ClassWriter.java │ │ ├── Code_attribute.java │ │ ├── CompilationID_attribute.java │ │ ├── ConstantPool.java │ │ ├── ConstantPoolException.java │ │ ├── ConstantValue_attribute.java │ │ ├── DefaultAttribute.java │ │ ├── Dependencies.java │ │ ├── Dependency.java │ │ ├── Deprecated_attribute.java │ │ ├── Descriptor.java │ │ ├── DescriptorException.java │ │ ├── EnclosingMethod_attribute.java │ │ ├── Exceptions_attribute.java │ │ ├── Field.java │ │ ├── InnerClasses_attribute.java │ │ ├── Instruction.java │ │ ├── LineNumberTable_attribute.java │ │ ├── LocalVariableTable_attribute.java │ │ ├── LocalVariableTypeTable_attribute.java │ │ ├── Method.java │ │ ├── Opcode.java │ │ ├── RuntimeAnnotations_attribute.java │ │ ├── RuntimeInvisibleAnnotations_attribute.java │ │ ├── RuntimeInvisibleParameterAnnotations_attribute.java │ │ ├── RuntimeParameterAnnotations_attribute.java │ │ ├── RuntimeVisibleAnnotations_attribute.java │ │ ├── RuntimeVisibleParameterAnnotations_attribute.java │ │ ├── Signature.java │ │ ├── Signature_attribute.java │ │ ├── SourceDebugExtension_attribute.java │ │ ├── SourceFile_attribute.java │ │ ├── SourceID_attribute.java │ │ ├── StackMapTable_attribute.java │ │ ├── StackMap_attribute.java │ │ ├── Synthetic_attribute.java │ │ ├── Type.java │ │ └── package.html │ │ ├── doclets │ │ ├── Taglet.java │ │ ├── formats │ │ │ └── html │ │ │ │ ├── AbstractExecutableMemberWriter.java │ │ │ │ ├── AbstractIndexWriter.java │ │ │ │ ├── AbstractMemberWriter.java │ │ │ │ ├── AbstractPackageIndexWriter.java │ │ │ │ ├── AbstractTreeWriter.java │ │ │ │ ├── AllClassesFrameWriter.java │ │ │ │ ├── AnnotationTypeOptionalMemberWriterImpl.java │ │ │ │ ├── AnnotationTypeRequiredMemberWriterImpl.java │ │ │ │ ├── AnnotationTypeWriterImpl.java │ │ │ │ ├── ClassUseWriter.java │ │ │ │ ├── ClassWriterImpl.java │ │ │ │ ├── ConfigurationImpl.java │ │ │ │ ├── ConstantsSummaryWriterImpl.java │ │ │ │ ├── ConstructorWriterImpl.java │ │ │ │ ├── DeprecatedListWriter.java │ │ │ │ ├── EnumConstantWriterImpl.java │ │ │ │ ├── FieldWriterImpl.java │ │ │ │ ├── FrameOutputWriter.java │ │ │ │ ├── HelpWriter.java │ │ │ │ ├── HtmlDoclet.java │ │ │ │ ├── HtmlDocletWriter.java │ │ │ │ ├── HtmlSerialFieldWriter.java │ │ │ │ ├── HtmlSerialMethodWriter.java │ │ │ │ ├── LinkFactoryImpl.java │ │ │ │ ├── LinkInfoImpl.java │ │ │ │ ├── LinkOutputImpl.java │ │ │ │ ├── MethodWriterImpl.java │ │ │ │ ├── NestedClassWriterImpl.java │ │ │ │ ├── PackageFrameWriter.java │ │ │ │ ├── PackageIndexFrameWriter.java │ │ │ │ ├── PackageIndexWriter.java │ │ │ │ ├── PackageTreeWriter.java │ │ │ │ ├── PackageUseWriter.java │ │ │ │ ├── PackageWriterImpl.java │ │ │ │ ├── SerializedFormWriterImpl.java │ │ │ │ ├── SingleIndexWriter.java │ │ │ │ ├── SourceToHTMLConverter.java │ │ │ │ ├── SplitIndexWriter.java │ │ │ │ ├── SubWriterHolderWriter.java │ │ │ │ ├── TagletOutputImpl.java │ │ │ │ ├── TagletWriterImpl.java │ │ │ │ ├── TreeWriter.java │ │ │ │ ├── WriterFactoryImpl.java │ │ │ │ ├── markup │ │ │ │ ├── Comment.java │ │ │ │ ├── DocType.java │ │ │ │ ├── HtmlAttr.java │ │ │ │ ├── HtmlConstants.java │ │ │ │ ├── HtmlDocWriter.java │ │ │ │ ├── HtmlDocument.java │ │ │ │ ├── HtmlStyle.java │ │ │ │ ├── HtmlTag.java │ │ │ │ ├── HtmlTree.java │ │ │ │ ├── HtmlWriter.java │ │ │ │ ├── RawHtml.java │ │ │ │ ├── StringContent.java │ │ │ │ └── package.html │ │ │ │ ├── package.html │ │ │ │ └── resources │ │ │ │ ├── standard.properties │ │ │ │ ├── standard_ja.properties │ │ │ │ └── standard_zh_CN.properties │ │ ├── internal │ │ │ └── toolkit │ │ │ │ ├── AbstractDoclet.java │ │ │ │ ├── AnnotationTypeOptionalMemberWriter.java │ │ │ │ ├── AnnotationTypeRequiredMemberWriter.java │ │ │ │ ├── AnnotationTypeWriter.java │ │ │ │ ├── ClassWriter.java │ │ │ │ ├── Configuration.java │ │ │ │ ├── ConstantsSummaryWriter.java │ │ │ │ ├── ConstructorWriter.java │ │ │ │ ├── Content.java │ │ │ │ ├── EnumConstantWriter.java │ │ │ │ ├── FieldWriter.java │ │ │ │ ├── MemberSummaryWriter.java │ │ │ │ ├── MethodWriter.java │ │ │ │ ├── NestedClassWriter.java │ │ │ │ ├── PackageSummaryWriter.java │ │ │ │ ├── SerializedFormWriter.java │ │ │ │ ├── WriterFactory.java │ │ │ │ ├── builders │ │ │ │ ├── AbstractBuilder.java │ │ │ │ ├── AbstractMemberBuilder.java │ │ │ │ ├── AnnotationTypeBuilder.java │ │ │ │ ├── AnnotationTypeOptionalMemberBuilder.java │ │ │ │ ├── AnnotationTypeRequiredMemberBuilder.java │ │ │ │ ├── BuilderFactory.java │ │ │ │ ├── ClassBuilder.java │ │ │ │ ├── ConstantsSummaryBuilder.java │ │ │ │ ├── ConstructorBuilder.java │ │ │ │ ├── EnumConstantBuilder.java │ │ │ │ ├── FieldBuilder.java │ │ │ │ ├── LayoutParser.java │ │ │ │ ├── MemberSummaryBuilder.java │ │ │ │ ├── MethodBuilder.java │ │ │ │ ├── PackageSummaryBuilder.java │ │ │ │ ├── SerializedFormBuilder.java │ │ │ │ ├── XMLNode.java │ │ │ │ └── package.html │ │ │ │ ├── package.html │ │ │ │ ├── resources │ │ │ │ ├── background.gif │ │ │ │ ├── doclet.xml │ │ │ │ ├── doclets.properties │ │ │ │ ├── doclets_ja.properties │ │ │ │ ├── doclets_zh_CN.properties │ │ │ │ ├── stylesheet.css │ │ │ │ ├── tab.gif │ │ │ │ ├── titlebar.gif │ │ │ │ └── titlebar_end.gif │ │ │ │ ├── taglets │ │ │ │ ├── BaseExecutableMemberTaglet.java │ │ │ │ ├── BaseInlineTaglet.java │ │ │ │ ├── BaseTaglet.java │ │ │ │ ├── CodeTaglet.java │ │ │ │ ├── DeprecatedTaglet.java │ │ │ │ ├── DocRootTaglet.java │ │ │ │ ├── InheritDocTaglet.java │ │ │ │ ├── InheritableTaglet.java │ │ │ │ ├── LegacyTaglet.java │ │ │ │ ├── LiteralTaglet.java │ │ │ │ ├── ParamTaglet.java │ │ │ │ ├── ReturnTaglet.java │ │ │ │ ├── SeeTaglet.java │ │ │ │ ├── SimpleTaglet.java │ │ │ │ ├── Taglet.java │ │ │ │ ├── TagletManager.java │ │ │ │ ├── TagletOutput.java │ │ │ │ ├── TagletWriter.java │ │ │ │ ├── ThrowsTaglet.java │ │ │ │ ├── ValueTaglet.java │ │ │ │ └── package.html │ │ │ │ └── util │ │ │ │ ├── ClassDocCatalog.java │ │ │ │ ├── ClassTree.java │ │ │ │ ├── ClassUseMapper.java │ │ │ │ ├── CommentedMethodFinder.java │ │ │ │ ├── DeprecatedAPIListBuilder.java │ │ │ │ ├── DirectoryManager.java │ │ │ │ ├── DocFinder.java │ │ │ │ ├── DocletAbortException.java │ │ │ │ ├── DocletConstants.java │ │ │ │ ├── Extern.java │ │ │ │ ├── Group.java │ │ │ │ ├── ImplementedMethods.java │ │ │ │ ├── IndexBuilder.java │ │ │ │ ├── MessageRetriever.java │ │ │ │ ├── MetaKeywords.java │ │ │ │ ├── MethodFinder.java │ │ │ │ ├── PackageListWriter.java │ │ │ │ ├── SourcePath.java │ │ │ │ ├── TaggedMethodFinder.java │ │ │ │ ├── TextTag.java │ │ │ │ ├── Util.java │ │ │ │ ├── VisibleMemberMap.java │ │ │ │ ├── links │ │ │ │ ├── LinkFactory.java │ │ │ │ ├── LinkInfo.java │ │ │ │ ├── LinkOutput.java │ │ │ │ └── package.html │ │ │ │ └── package.html │ │ ├── package.html │ │ └── standard │ │ │ └── Standard.java │ │ ├── javac │ │ ├── Launcher.java │ │ ├── Main.java │ │ ├── Server.java │ │ ├── api │ │ │ ├── ClientCodeWrapper.java │ │ │ ├── DiagnosticFormatter.java │ │ │ ├── Formattable.java │ │ │ ├── JavacScope.java │ │ │ ├── JavacTaskImpl.java │ │ │ ├── JavacTool.java │ │ │ ├── JavacTrees.java │ │ │ ├── Messages.java │ │ │ └── WrappingJavaFileManager.java │ │ ├── code │ │ │ ├── Attribute.java │ │ │ ├── BoundKind.java │ │ │ ├── DeferredLintHandler.java │ │ │ ├── Flags.java │ │ │ ├── Kinds.java │ │ │ ├── Lint.java │ │ │ ├── Printer.java │ │ │ ├── Scope.java │ │ │ ├── Source.java │ │ │ ├── Symbol.java │ │ │ ├── Symtab.java │ │ │ ├── TargetType.java │ │ │ ├── Type.java │ │ │ ├── TypeAnnotationPosition.java │ │ │ ├── TypeTags.java │ │ │ └── Types.java │ │ ├── comp │ │ │ ├── Annotate.java │ │ │ ├── Attr.java │ │ │ ├── AttrContext.java │ │ │ ├── AttrContextEnv.java │ │ │ ├── Check.java │ │ │ ├── ConstFold.java │ │ │ ├── Enter.java │ │ │ ├── Env.java │ │ │ ├── Flow.java │ │ │ ├── Infer.java │ │ │ ├── Lower.java │ │ │ ├── MemberEnter.java │ │ │ ├── Resolve.java │ │ │ ├── Todo.java │ │ │ └── TransTypes.java │ │ ├── file │ │ │ ├── BaseFileObject.java │ │ │ ├── CacheFSInfo.java │ │ │ ├── FSInfo.java │ │ │ ├── JavacFileManager.java │ │ │ ├── Paths.java │ │ │ ├── RegularFileObject.java │ │ │ ├── RelativePath.java │ │ │ ├── SymbolArchive.java │ │ │ ├── ZipArchive.java │ │ │ ├── ZipFileIndex.java │ │ │ ├── ZipFileIndexArchive.java │ │ │ └── ZipFileIndexCache.java │ │ ├── jvm │ │ │ ├── ByteCodes.java │ │ │ ├── CRTFlags.java │ │ │ ├── CRTable.java │ │ │ ├── ClassFile.java │ │ │ ├── ClassReader.java │ │ │ ├── ClassWriter.java │ │ │ ├── Code.java │ │ │ ├── Gen.java │ │ │ ├── Items.java │ │ │ ├── Pool.java │ │ │ ├── Target.java │ │ │ └── UninitializedType.java │ │ ├── main │ │ │ ├── CommandLine.java │ │ │ ├── JavaCompiler.java │ │ │ ├── JavacOption.java │ │ │ ├── Main.java │ │ │ ├── OptionName.java │ │ │ └── RecognizedOptions.java │ │ ├── model │ │ │ ├── AnnotationProxyMaker.java │ │ │ ├── FilteredMemberList.java │ │ │ ├── JavacElements.java │ │ │ ├── JavacSourcePosition.java │ │ │ └── JavacTypes.java │ │ ├── nio │ │ │ ├── JavacPathFileManager.java │ │ │ ├── PathFileManager.java │ │ │ └── PathFileObject.java │ │ ├── parser │ │ │ ├── DocCommentScanner.java │ │ │ ├── EndPosParser.java │ │ │ ├── JavacParser.java │ │ │ ├── Keywords.java │ │ │ ├── Lexer.java │ │ │ ├── Parser.java │ │ │ ├── ParserFactory.java │ │ │ ├── Scanner.java │ │ │ ├── ScannerFactory.java │ │ │ └── Token.java │ │ ├── processing │ │ │ ├── AnnotationProcessingError.java │ │ │ ├── JavacFiler.java │ │ │ ├── JavacMessager.java │ │ │ ├── JavacProcessingEnvironment.java │ │ │ ├── JavacRoundEnvironment.java │ │ │ ├── PrintingProcessor.java │ │ │ └── ServiceProxy.java │ │ ├── resources │ │ │ ├── compiler.properties │ │ │ ├── compiler_ja.properties │ │ │ ├── compiler_zh_CN.properties │ │ │ ├── javac.properties │ │ │ ├── javac_ja.properties │ │ │ ├── javac_zh_CN.properties │ │ │ ├── legacy.properties │ │ │ └── version.properties-template │ │ ├── services │ │ │ └── javax.tools.JavaCompilerTool │ │ ├── sym │ │ │ └── CreateSymbols.java │ │ ├── tree │ │ │ ├── JCTree.java │ │ │ ├── Pretty.java │ │ │ ├── TreeCopier.java │ │ │ ├── TreeInfo.java │ │ │ ├── TreeMaker.java │ │ │ ├── TreeScanner.java │ │ │ └── TreeTranslator.java │ │ └── util │ │ │ ├── Abort.java │ │ │ ├── AbstractDiagnosticFormatter.java │ │ │ ├── AbstractLog.java │ │ │ ├── Assert.java │ │ │ ├── BaseFileManager.java │ │ │ ├── BasicDiagnosticFormatter.java │ │ │ ├── Bits.java │ │ │ ├── ByteBuffer.java │ │ │ ├── ClientCodeException.java │ │ │ ├── CloseableURLClassLoader.java │ │ │ ├── Constants.java │ │ │ ├── Context.java │ │ │ ├── Convert.java │ │ │ ├── DiagnosticSource.java │ │ │ ├── FatalError.java │ │ │ ├── Filter.java │ │ │ ├── ForwardingDiagnosticFormatter.java │ │ │ ├── JCDiagnostic.java │ │ │ ├── JavacMessages.java │ │ │ ├── LayoutCharacters.java │ │ │ ├── List.java │ │ │ ├── ListBuffer.java │ │ │ ├── Log.java │ │ │ ├── MandatoryWarningHandler.java │ │ │ ├── Name.java │ │ │ ├── Names.java │ │ │ ├── Options.java │ │ │ ├── Pair.java │ │ │ ├── Position.java │ │ │ ├── PropagatedException.java │ │ │ ├── RawDiagnosticFormatter.java │ │ │ ├── RichDiagnosticFormatter.java │ │ │ ├── SharedNameTable.java │ │ │ ├── UnsharedNameTable.java │ │ │ └── Warner.java │ │ ├── javadoc │ │ ├── AbstractTypeImpl.java │ │ ├── AnnotationDescImpl.java │ │ ├── AnnotationTypeDocImpl.java │ │ ├── AnnotationTypeElementDocImpl.java │ │ ├── AnnotationValueImpl.java │ │ ├── ClassDocImpl.java │ │ ├── Comment.java │ │ ├── ConstructorDocImpl.java │ │ ├── DocEnv.java │ │ ├── DocImpl.java │ │ ├── DocLocale.java │ │ ├── DocletInvoker.java │ │ ├── ExecutableMemberDocImpl.java │ │ ├── FieldDocImpl.java │ │ ├── JavadocClassReader.java │ │ ├── JavadocEnter.java │ │ ├── JavadocMemberEnter.java │ │ ├── JavadocTodo.java │ │ ├── JavadocTool.java │ │ ├── Main.java │ │ ├── MemberDocImpl.java │ │ ├── Messager.java │ │ ├── MethodDocImpl.java │ │ ├── ModifierFilter.java │ │ ├── PackageDocImpl.java │ │ ├── ParamTagImpl.java │ │ ├── ParameterImpl.java │ │ ├── ParameterizedTypeImpl.java │ │ ├── PrimitiveType.java │ │ ├── ProgramElementDocImpl.java │ │ ├── RootDocImpl.java │ │ ├── SeeTagImpl.java │ │ ├── SerialFieldTagImpl.java │ │ ├── SerializedForm.java │ │ ├── SourcePositionImpl.java │ │ ├── Start.java │ │ ├── TagImpl.java │ │ ├── ThrowsTagImpl.java │ │ ├── TypeMaker.java │ │ ├── TypeVariableImpl.java │ │ ├── WildcardTypeImpl.java │ │ └── resources │ │ │ ├── javadoc.properties │ │ │ ├── javadoc_ja.properties │ │ │ └── javadoc_zh_CN.properties │ │ ├── javah │ │ ├── Gen.java │ │ ├── InternalError.java │ │ ├── JNI.java │ │ ├── JavahFileManager.java │ │ ├── JavahTask.java │ │ ├── JavahTool.java │ │ ├── LLNI.java │ │ ├── Main.java │ │ ├── Mangle.java │ │ ├── NativeHeaderTool.java │ │ ├── TypeSignature.java │ │ ├── Util.java │ │ └── resources │ │ │ ├── l10n.properties │ │ │ ├── l10n_ja.properties │ │ │ ├── l10n_zh_CN.properties │ │ │ └── version.properties-template │ │ └── javap │ │ ├── AnnotationWriter.java │ │ ├── AttributeWriter.java │ │ ├── BasicWriter.java │ │ ├── ClassWriter.java │ │ ├── CodeWriter.java │ │ ├── ConstantWriter.java │ │ ├── Context.java │ │ ├── DisassemblerTool.java │ │ ├── InstructionDetailWriter.java │ │ ├── InternalError.java │ │ ├── JavapFileManager.java │ │ ├── JavapTask.java │ │ ├── LocalVariableTableWriter.java │ │ ├── LocalVariableTypeTableWriter.java │ │ ├── Main.java │ │ ├── Messages.java │ │ ├── Options.java │ │ ├── SourceWriter.java │ │ ├── StackMapWriter.java │ │ ├── TryBlockWriter.java │ │ ├── overview.html │ │ ├── package.html │ │ └── resources │ │ ├── javap.properties │ │ └── version.properties-template └── test │ └── java │ └── com │ └── sun │ └── tools │ └── javac │ ├── JavacTestTool.java │ ├── LauncherTest.java │ ├── MainTest.java │ ├── api │ └── JavacTaskImplTest.java │ ├── main │ └── OptionNameTest.java │ ├── processing │ └── JavacProcessingEnvironmentTest.java │ └── tree │ └── JCTreeTest.java └── test-files ├── class-files ├── DynamicCompiler.class ├── ForLauncher_trace.class ├── Simple.class └── com │ ├── enter │ └── test │ │ ├── MyPackageAnnoation.class │ │ ├── MyPackageConst.class │ │ ├── MyPackageMethod.class │ │ ├── PkgInfoTest.class │ │ └── package-info.class │ └── jctree │ └── test │ └── JCTreeTest.class └── java-files ├── DynamicCompiler.java ├── ForLauncher_trace.java ├── Simple.java └── com ├── enter └── test │ ├── MyPackageAnnoation.java │ ├── PkgInfoTest.java │ └── package-info.java └── jctree └── test └── JCTreeTest.java /Compiler_javac/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Compiler_javac/.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | -------------------------------------------------------------------------------- /Compiler_javac/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Compiler_javac 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.maven.ide.eclipse.maven2Builder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.maven.ide.eclipse.maven2Nature 22 | 23 | 24 | -------------------------------------------------------------------------------- /Compiler_javac/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//src/main/java/com/sun/tools/javac/main/JavacOption.java=UTF-8 3 | encoding/=UTF-8 4 | -------------------------------------------------------------------------------- /Compiler_javac/.settings/org.maven.ide.eclipse.prefs: -------------------------------------------------------------------------------- 1 | #Sat May 12 12:33:18 CST 2012 2 | activeProfiles= 3 | eclipse.preferences.version=1 4 | fullBuildGoals=process-test-resources 5 | resolveWorkspaceProjects=true 6 | resourceFilterGoals=process-resources resources\:testResources 7 | skipCompilerPlugin=true 8 | version=1 9 | -------------------------------------------------------------------------------- /Compiler_javac/pom.xml: -------------------------------------------------------------------------------- 1 | 3 | 4.0.0 4 | 5 | javac 6 | Compiler_javac 7 | 0.0.1-SNAPSHOT 8 | jar 9 | 10 | Compiler_javac 11 | http://maven.apache.org 12 | 13 | 14 | UTF-8 15 | 16 | 17 | 18 | 19 | junit 20 | junit 21 | 4.8 22 | test 23 | 24 | 25 | 26 | 27 | 28 | org.apache.maven.plugins 29 | maven-compiler-plugin 30 | 31 | 1.6 32 | 1.6 33 | 34 | 35 | 36 | org.apache.maven.plugins 37 | maven-surefire-plugin 38 | 2.7.2 39 | 40 | once 41 | -Dfile.encoding=UTF-8 42 | 43 | 44 | net.sourceforge.cobertura.datafile 45 | target/cobertura/cobertura.ser 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/javadoc/AnnotationTypeDoc.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.javadoc; 27 | 28 | 29 | /** 30 | * Represents an annotation type. 31 | * 32 | * @author Scott Seligman 33 | * @since 1.5 34 | */ 35 | public interface AnnotationTypeDoc extends ClassDoc { 36 | 37 | /** 38 | * Returns the elements of this annotation type. 39 | * Returns an empty array if there are none. 40 | * 41 | * @return the elements of this annotation type. 42 | */ 43 | AnnotationTypeElementDoc[] elements(); 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/javadoc/AnnotationTypeElementDoc.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.javadoc; 27 | 28 | 29 | /** 30 | * Represents an element of an annotation type. 31 | * 32 | * @author Scott Seligman 33 | * @since 1.5 34 | */ 35 | public interface AnnotationTypeElementDoc extends MethodDoc { 36 | 37 | /** 38 | * Returns the default value of this element. 39 | * Returns null if this element has no default. 40 | * 41 | * @return the default value of this element. 42 | */ 43 | AnnotationValue defaultValue(); 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/javadoc/ConstructorDoc.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.javadoc; 27 | 28 | /** 29 | * Represents a constructor of a java class. 30 | * 31 | * @since 1.2 32 | * @author Robert Field 33 | */ 34 | public interface ConstructorDoc extends ExecutableMemberDoc { 35 | } 36 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/javadoc/LanguageVersion.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.javadoc; 27 | 28 | 29 | /** 30 | * Java Programming Language version. The constants of this enum 31 | * identify the JDK and J2SE releases containing language changes 32 | * relevant to doclets. 33 | *

34 | * All doclets support at least the 1.1 language version. 35 | * The first release subsequent to this with language changes 36 | * affecting doclets is 1.5. 37 | * 38 | * @since 1.5 39 | */ 40 | public enum LanguageVersion { 41 | 42 | /** 1.1 added nested classes and interfaces. */ 43 | JAVA_1_1, 44 | 45 | /** 1.5 added generic types, annotations, enums, and varArgs. */ 46 | JAVA_1_5 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/javadoc/MemberDoc.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1998, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.javadoc; 27 | 28 | /** 29 | * Represents a member of a java class: field, constructor, or method. 30 | * This is an abstract class dealing with information common to 31 | * method, constructor and field members. Class members of a class 32 | * (innerclasses) are represented instead by ClassDoc. 33 | * 34 | * @see MethodDoc 35 | * @see FieldDoc 36 | * @see ClassDoc 37 | * 38 | * @author Kaiyang Liu (original) 39 | * @author Robert Field (rewrite) 40 | */ 41 | public interface MemberDoc extends ProgramElementDoc { 42 | 43 | /** 44 | * Returns true if this member was synthesized by the compiler. 45 | */ 46 | boolean isSynthetic(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/apt/AnnotationProcessorListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.apt; 27 | 28 | /** 29 | * Superinterface for all annotation processor event listeners. 30 | * 31 | * @deprecated All components of this API have been superseded by the 32 | * standardized annotation processing API. This interface has no 33 | * direct analog in the standardized API because the different round 34 | * model renders it unnecessary. 35 | * 36 | * @author Joseph D. Darcy 37 | * @author Scott Seligman 38 | * @since 1.5 39 | */ 40 | @Deprecated 41 | public interface AnnotationProcessorListener extends java.util.EventListener {} 42 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/apt/RoundCompleteListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.apt; 27 | 28 | /** 29 | * Listener for the completion of a round of annotation processing. 30 | * 31 | * @deprecated All components of this API have been superseded by the 32 | * standardized annotation processing API. This interface has no 33 | * direct analog in the standardized API because the different round 34 | * model renders it unnecessary. 35 | * 36 | * @author Joseph D. Darcy 37 | * @author Scott Seligman 38 | * @since 1.5 39 | */ 40 | @Deprecated 41 | public interface RoundCompleteListener extends AnnotationProcessorListener { 42 | /** 43 | * Invoked after all processors for a round have run to completion. 44 | * 45 | * @param event An event for round completion 46 | */ 47 | void roundComplete(RoundCompleteEvent event); 48 | } 49 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/apt/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | /** 27 | * Classes used to communicate information between {@linkplain 28 | * com.sun.mirror.apt.AnnotationProcessor annotation processors} and 29 | * an annotation processing tool. 30 | * 31 | *

The {@code apt} tool and its associated API have been superseded 32 | * by the standardized annotation processing API. The replacement for 33 | * the functionality in this package is {@link 34 | * javax.annotation.processing}. 35 | * 36 | * @since 1.5 37 | */ 38 | package com.sun.mirror.apt; 39 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/declaration/ConstructorDeclaration.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.declaration; 27 | 28 | 29 | /** 30 | * Represents a constructor of a class or interface. 31 | * 32 | * @deprecated All components of this API have been superseded by the 33 | * standardized annotation processing API. The replacement for the 34 | * functionality of this interface is included in {@link 35 | * javax.lang.model.element.ExecutableElement}. 36 | * 37 | * @author Joe Darcy 38 | * @author Scott Seligman 39 | * @since 1.5 40 | */ 41 | @Deprecated 42 | public interface ConstructorDeclaration extends ExecutableDeclaration { 43 | } 44 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/declaration/EnumConstantDeclaration.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.declaration; 27 | 28 | 29 | /** 30 | * Represents an enum constant declaration. 31 | * 32 | * @deprecated All components of this API have been superseded by the 33 | * standardized annotation processing API. The replacement for the 34 | * functionality of this interface is included in {@link 35 | * javax.lang.model.element.VariableElement}. 36 | * 37 | * @author Joseph D. Darcy 38 | * @author Scott Seligman 39 | * @since 1.5 40 | */ 41 | @Deprecated 42 | public interface EnumConstantDeclaration extends FieldDeclaration { 43 | /** 44 | * {@inheritDoc} 45 | */ 46 | EnumDeclaration getDeclaringType(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/declaration/ParameterDeclaration.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.declaration; 27 | 28 | 29 | import com.sun.mirror.type.TypeMirror; 30 | 31 | 32 | /** 33 | * Represents a formal parameter of a method or constructor. 34 | * 35 | * @deprecated All components of this API have been superseded by the 36 | * standardized annotation processing API. The replacement for the 37 | * functionality of this interface is included in {@link 38 | * javax.lang.model.element.VariableElement}. 39 | * 40 | * @author Joseph D. Darcy 41 | * @author Scott Seligman 42 | * @since 1.5 43 | */ 44 | @Deprecated 45 | public interface ParameterDeclaration extends Declaration { 46 | 47 | /** 48 | * Returns the type of this parameter. 49 | * 50 | * @return the type of this parameter 51 | */ 52 | TypeMirror getType(); 53 | } 54 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/declaration/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | /** 27 | * Interfaces used to model program element declarations. A 28 | * declaration is represented by the appropriate subinterface of 29 | * {@link com.sun.mirror.declaration.Declaration}, and an annotation 30 | * is represented as an {@link 31 | * com.sun.mirror.declaration.AnnotationMirror}. 32 | * 33 | *

The {@code apt} tool and its associated API have been superseded 34 | * by the standardized annotation processing API. The replacement for 35 | * the functionality in this package is {@link 36 | * javax.lang.model.element}. 37 | * 38 | * @since 1.5 39 | */ 40 | package com.sun.mirror.declaration; 41 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/type/AnnotationType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.type; 27 | 28 | 29 | import com.sun.mirror.declaration.AnnotationTypeDeclaration; 30 | 31 | 32 | /** 33 | * Represents an annotation type. 34 | * 35 | * @deprecated All components of this API have been superseded by the 36 | * standardized annotation processing API. The replacement for the 37 | * functionality of this interface is included in {@link 38 | * javax.lang.model.type.DeclaredType}. 39 | * 40 | * @author Joseph D. Darcy 41 | * @author Scott Seligman 42 | * @since 1.5 43 | */ 44 | @Deprecated 45 | public interface AnnotationType extends InterfaceType { 46 | 47 | /** 48 | * {@inheritDoc} 49 | */ 50 | AnnotationTypeDeclaration getDeclaration(); 51 | } 52 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/type/ArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.type; 27 | 28 | 29 | /** 30 | * Represents an array type. 31 | * A multidimensional array type is represented as an array type 32 | * whose component type is also an array type. 33 | * 34 | * @deprecated All components of this API have been superseded by the 35 | * standardized annotation processing API. The replacement for the 36 | * functionality of this interface is {@link 37 | * javax.lang.model.type.ArrayType}. 38 | * 39 | * @author Joseph D. Darcy 40 | * @author Scott Seligman 41 | * @since 1.5 42 | */ 43 | @Deprecated 44 | public interface ArrayType extends ReferenceType { 45 | 46 | /** 47 | * Returns the component type of this array type. 48 | * 49 | * @return the component type of this array type 50 | */ 51 | TypeMirror getComponentType(); 52 | } 53 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/type/EnumType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.type; 27 | 28 | 29 | import com.sun.mirror.declaration.EnumDeclaration; 30 | 31 | 32 | /** 33 | * Represents an enum type. 34 | * 35 | * @deprecated All components of this API have been superseded by the 36 | * standardized annotation processing API. The replacement for the 37 | * functionality of this interface is included in {@link 38 | * javax.lang.model.type.DeclaredType}. 39 | * 40 | * @author Joseph D. Darcy 41 | * @author Scott Seligman 42 | * @since 1.5 43 | */ 44 | @Deprecated 45 | public interface EnumType extends ClassType { 46 | 47 | /** 48 | * {@inheritDoc} 49 | */ 50 | EnumDeclaration getDeclaration(); 51 | } 52 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/type/ReferenceType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.type; 27 | 28 | 29 | /** 30 | * Represents a reference type. 31 | * These include class and interface types, array types, and type variables. 32 | * 33 | * @deprecated All components of this API have been superseded by the 34 | * standardized annotation processing API. The replacement for the 35 | * functionality of this interface is {@link 36 | * javax.lang.model.type.ReferenceType}. 37 | * 38 | * @author Joseph D. Darcy 39 | * @author Scott Seligman 40 | * @since 1.5 41 | */ 42 | @Deprecated 43 | public interface ReferenceType extends TypeMirror { 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/type/VoidType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.mirror.type; 27 | 28 | 29 | import com.sun.mirror.declaration.MethodDeclaration; 30 | 31 | 32 | /** 33 | * A pseudo-type representing the type of void. 34 | * 35 | * @author Joseph D. Darcy 36 | * @author Scott Seligman 37 | * 38 | * @deprecated All components of this API have been superseded by the 39 | * standardized annotation processing API. The replacement for the 40 | * functionality of this interface is included in {@link 41 | * javax.lang.model.type.NoType}. 42 | * 43 | * @see MethodDeclaration#getReturnType() 44 | * @since 1.5 45 | */ 46 | @Deprecated 47 | public interface VoidType extends TypeMirror { 48 | } 49 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/type/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | /** 27 | * Interfaces used to model types. A type is represented by the 28 | * appropriate subinterface of {@link com.sun.mirror.type.TypeMirror}. 29 | * 30 | *

The {@code apt} tool and its associated API have been 31 | * superseded by the standardized annotation processing API. The 32 | * replacement for the functionality in this package is {@link 33 | * javax.lang.model.type}. 34 | * 35 | * @since 1.5 36 | */ 37 | package com.sun.mirror.type; 38 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/mirror/util/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | /** 27 | * Utilities to assist in the processing of {@linkplain 28 | * com.sun.mirror.declaration declarations} and {@linkplain 29 | * com.sun.mirror.type types}. 30 | * 31 | *

The {@code apt} tool and its associated API have been superseded 32 | * by the standardized annotation processing API. The replacement for 33 | * the functionality in this package is {@link javax.lang.model.util}. 34 | * 35 | * @since 1.5 36 | */ 37 | package com.sun.mirror.util; 38 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/AnnotationTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an annotation. 32 | * 33 | * For example: 34 | *

35 |  *    {@code @}annotationType
36 |  *    {@code @}annotationType ( arguments )
37 |  * 
38 | * 39 | * @jls section 9.7 40 | * 41 | * @author Peter von der Ahé 42 | * @author Jonathan Gibbons 43 | * @since 1.6 44 | */ 45 | public interface AnnotationTree extends ExpressionTree { 46 | Tree getAnnotationType(); 47 | List getArguments(); 48 | } 49 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ArrayAccessTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an array access expression. 30 | * 31 | * For example: 32 | *
33 |  *   expression [ index ]
34 |  * 
35 | * 36 | * @jls section 15.13 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ArrayAccessTree extends ExpressionTree { 43 | ExpressionTree getExpression(); 44 | ExpressionTree getIndex(); 45 | } 46 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ArrayTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an array type. 30 | * 31 | * For example: 32 | *
33 |  *   type []
34 |  * 
35 | * 36 | * @jls section 10.1 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ArrayTypeTree extends Tree { 43 | Tree getType(); 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/AssertTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an 'assert' statement. 30 | * 31 | * For example: 32 | *
33 |  *   assert condition ;
34 |  *
35 |  *   assert condition : detail ;
36 |  * 
37 | * 38 | * @jls section 14.10 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface AssertTree extends StatementTree { 45 | ExpressionTree getCondition(); 46 | ExpressionTree getDetail(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/AssignmentTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an assignment expression. 30 | * 31 | * For example: 32 | *
33 |  *   variable = expression
34 |  * 
35 | * 36 | * @jls section 15.26.1 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface AssignmentTree extends ExpressionTree { 43 | ExpressionTree getVariable(); 44 | ExpressionTree getExpression(); 45 | } 46 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/BinaryTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a binary expression. 30 | * Use {@link #getKind getKind} to determine the kind of operator. 31 | * 32 | * For example: 33 | *
34 |  *   leftOperand operator rightOperand
35 |  * 
36 | * 37 | * @jls sections 15.17 to 15.24 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface BinaryTree extends ExpressionTree { 44 | ExpressionTree getLeftOperand(); 45 | ExpressionTree getRightOperand(); 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/BlockTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a statement block. 32 | * 33 | * For example: 34 | *
35 |  *   { }
36 |  *
37 |  *   { statements }
38 |  *
39 |  *   static { statements }
40 |  * 
41 | * 42 | * @jls section 14.2 43 | * 44 | * @author Peter von der Ahé 45 | * @author Jonathan Gibbons 46 | * @since 1.6 47 | */ 48 | public interface BlockTree extends StatementTree { 49 | boolean isStatic(); 50 | List getStatements(); 51 | } 52 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/BreakTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import javax.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for a 'break' statement. 32 | * 33 | * For example: 34 | *
35 |  *   break;
36 |  *
37 |  *   break label ;
38 |  * 
39 | * 40 | * @jls section 14.15 41 | * 42 | * @author Peter von der Ahé 43 | * @author Jonathan Gibbons 44 | * @since 1.6 45 | */ 46 | public interface BreakTree extends StatementTree { 47 | Name getLabel(); 48 | } 49 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/CaseTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a 'case' in a 'switch' statement. 32 | * 33 | * For example: 34 | *
35 |  *   case expression :
36 |  *       statements
37 |  *
38 |  *   default :
39 |  *       statements
40 |  * 
41 | * 42 | * @jls section 14.11 43 | * 44 | * @author Peter von der Ahé 45 | * @author Jonathan Gibbons 46 | * @since 1.6 47 | */ 48 | public interface CaseTree extends Tree { 49 | /** 50 | * @return null if and only if this Case is {@code default:} 51 | */ 52 | ExpressionTree getExpression(); 53 | List getStatements(); 54 | } 55 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/CatchTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a 'catch' block in a 'try' statement. 30 | * 31 | * For example: 32 | *
33 |  *   catch ( parameter )
34 |  *       block
35 |  * 
36 | * 37 | * @jls section 14.20 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface CatchTree extends Tree { 44 | VariableTree getParameter(); 45 | BlockTree getBlock(); 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/CompoundAssignmentTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for compound assignment operator. 30 | * Use {@link #getKind getKind} to determine the kind of operator. 31 | * 32 | * For example: 33 | *
34 |  *   variable operator expression
35 |  * 
36 | * 37 | * @jls section 15.26.2 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface CompoundAssignmentTree extends ExpressionTree { 44 | ExpressionTree getVariable(); 45 | ExpressionTree getExpression(); 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ConditionalExpressionTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for the conditional operator ? :. 30 | * 31 | * For example: 32 | *
33 |  *   condition ? trueExpression : falseExpression
34 |  * 
35 | * 36 | * @jls section 15.25 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ConditionalExpressionTree extends ExpressionTree { 43 | ExpressionTree getCondition(); 44 | ExpressionTree getTrueExpression(); 45 | ExpressionTree getFalseExpression(); 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ContinueTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import javax.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for a 'continue' statement. 32 | * 33 | * For example: 34 | *
35 |  *   continue;
36 |  *   continue label ;
37 |  * 
38 | * 39 | * @jls section 14.16 40 | * 41 | * @author Peter von der Ahé 42 | * @author Jonathan Gibbons 43 | * @since 1.6 44 | */ 45 | public interface ContinueTree extends StatementTree { 46 | Name getLabel(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/DoWhileLoopTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a 'do' statement. 30 | * 31 | * For example: 32 | *
33 |  *   do
34 |  *       statement
35 |  *   while ( expression );
36 |  * 
37 | * 38 | * @jls section 14.13 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface DoWhileLoopTree extends StatementTree { 45 | ExpressionTree getCondition(); 46 | StatementTree getStatement(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/EmptyStatementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an empty (skip) statement. 30 | * 31 | * For example: 32 | *
33 |  *    ;
34 |  * 
35 | * 36 | * @jls section 14.6 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface EmptyStatementTree extends StatementTree {} 43 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/EnhancedForLoopTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an "enhanced" 'for' loop statement. 30 | * 31 | * For example: 32 | *
33 |  *   for ( variable : expression )
34 |  *       statement
35 |  * 
36 | * 37 | * @jls section 14.14.2 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface EnhancedForLoopTree extends StatementTree { 44 | VariableTree getVariable(); 45 | ExpressionTree getExpression(); 46 | StatementTree getStatement(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ErroneousTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node to stand in for a malformed expression. 32 | * 33 | * @author Peter von der Ahé 34 | * @author Jonathan Gibbons 35 | * @since 1.6 36 | */ 37 | public interface ErroneousTree extends ExpressionTree { 38 | List getErrorTrees(); 39 | } 40 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ExpressionStatementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an expression statement. 30 | * 31 | * For example: 32 | *
33 |  *   expression ;
34 |  * 
35 | * 36 | * @jls section 14.8 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ExpressionStatementTree extends StatementTree { 43 | ExpressionTree getExpression(); 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ExpressionTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node used as the base class for the different types of 30 | * expressions. 31 | * 32 | * @jls chapter 15 33 | * 34 | * @author Peter von der Ahé 35 | * @author Jonathan Gibbons 36 | * @since 1.6 37 | */ 38 | public interface ExpressionTree extends Tree {} 39 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ForLoopTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a basic 'for' loop statement. 32 | * 33 | * For example: 34 | *
35 |  *   for ( initializer ; condition ; update )
36 |  *       statement
37 |  * 
38 | * 39 | * @jls section 14.14.1 40 | * 41 | * @author Peter von der Ahé 42 | * @author Jonathan Gibbons 43 | * @since 1.6 44 | */ 45 | public interface ForLoopTree extends StatementTree { 46 | List getInitializer(); 47 | ExpressionTree getCondition(); 48 | List getUpdate(); 49 | StatementTree getStatement(); 50 | } 51 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/IdentifierTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import javax.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for an identifier expression. 32 | * 33 | * For example: 34 | *
35 |  *   name
36 |  * 
37 | * 38 | * @jls section 6.5.6.1 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface IdentifierTree extends ExpressionTree { 45 | Name getName(); 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/IfTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an 'if' statement. 30 | * 31 | * For example: 32 | *
33 |  *   if ( condition )
34 |  *      thenStatement
35 |  *
36 |  *   if ( condition )
37 |  *       thenStatement
38 |  *   else
39 |  *       elseStatement
40 |  * 
41 | * 42 | * @jls section 14.9 43 | * 44 | * @author Peter von der Ahé 45 | * @author Jonathan Gibbons 46 | * @since 1.6 47 | */ 48 | public interface IfTree extends StatementTree { 49 | ExpressionTree getCondition(); 50 | StatementTree getThenStatement(); 51 | /** 52 | * @return null if this if statement has no else branch. 53 | */ 54 | StatementTree getElseStatement(); 55 | } 56 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ImportTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an import statement. 30 | * 31 | * For example: 32 | *
33 |  *   import qualifiedIdentifier ;
34 |  *
35 |  *   static import qualifiedIdentifier ;
36 |  * 
37 | * 38 | * @jls section 7.5 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface ImportTree extends Tree { 45 | boolean isStatic(); 46 | /** 47 | * @return a qualified identifier ending in "*" if and only if 48 | * this is an import-on-demand. 49 | */ 50 | Tree getQualifiedIdentifier(); 51 | } 52 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/InstanceOfTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for an 'instanceof' expression. 30 | * 31 | * For example: 32 | *
33 |  *   expression instanceof type
34 |  * 
35 | * 36 | * @jls section 15.20.2 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface InstanceOfTree extends ExpressionTree { 43 | ExpressionTree getExpression(); 44 | Tree getType(); 45 | } 46 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/LabeledStatementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import javax.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for a labeled statement. 32 | * 33 | * For example: 34 | *
35 |  *   label : statement
36 |  * 
37 | * 38 | * @jls section 14.7 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface LabeledStatementTree extends StatementTree { 45 | Name getLabel(); 46 | StatementTree getStatement(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/LiteralTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a literal expression. 30 | * Use {@link #getKind getKind} to determine the kind of literal. 31 | * 32 | * For example: 33 | *
34 |  *   value
35 |  * 
36 | * 37 | * @jls section 15.28 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface LiteralTree extends ExpressionTree { 44 | Object getValue(); 45 | } 46 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/MemberSelectTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import javax.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for a member access expression. 32 | * 33 | * For example: 34 | *
35 |  *   expression . identifier
36 |  * 
37 | * 38 | * @jls sections 6.5, 15.11,and 15.12 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface MemberSelectTree extends ExpressionTree { 45 | ExpressionTree getExpression(); 46 | Name getIdentifier(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/MethodInvocationTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a method invocation expression. 32 | * 33 | * For example: 34 | *
35 |  *   identifier ( arguments )
36 |  *
37 |  *   this . typeArguments identifier ( arguments )
38 |  * 
39 | * 40 | * @jls section 15.12 41 | * 42 | * @author Peter von der Ahé 43 | * @author Jonathan Gibbons 44 | * @since 1.6 45 | */ 46 | public interface MethodInvocationTree extends ExpressionTree { 47 | List getTypeArguments(); 48 | ExpressionTree getMethodSelect(); 49 | List getArguments(); 50 | } 51 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ModifiersTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | import java.util.Set; 30 | import javax.lang.model.element.Modifier; 31 | 32 | /** 33 | * A tree node for the modifiers, including annotations, for a declaration. 34 | * 35 | * For example: 36 | *
37 |  *   flags
38 |  *
39 |  *   flags annotations
40 |  * 
41 | * 42 | * @jls sections 8.1.1, 8.3.1, 8.4.3, 8.5.1, 8.8.3, 9.1.1, and 9.7 43 | * 44 | * @author Peter von der Ahé 45 | * @author Jonathan Gibbons 46 | * @since 1.6 47 | */ 48 | public interface ModifiersTree extends Tree { 49 | Set getFlags(); 50 | List getAnnotations(); 51 | } 52 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/NewArrayTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an expression to create a new instance of an array. 32 | * 33 | * For example: 34 | *
35 |  *   new type dimensions initializers
36 |  *
37 |  *   new type dimensions [ ] initializers
38 |  * 
39 | * 40 | * @jls section 15.10 41 | * 42 | * @author Peter von der Ahé 43 | * @author Jonathan Gibbons 44 | * @since 1.6 45 | */ 46 | public interface NewArrayTree extends ExpressionTree { 47 | Tree getType(); 48 | List getDimensions(); 49 | List getInitializers(); 50 | } 51 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ParameterizedTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a type expression involving type parameters. 32 | * 33 | * For example: 34 | *
35 |  *   type < typeArguments >
36 |  * 
37 | * 38 | * @jls section 4.5.1 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface ParameterizedTypeTree extends Tree { 45 | Tree getType(); 46 | List getTypeArguments(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ParenthesizedTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a parenthesized expression. Note: parentheses 30 | * not be preserved by the parser. 31 | * 32 | * For example: 33 | *
34 |  *   ( expression )
35 |  * 
36 | * 37 | * @jls section 15.8.5 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface ParenthesizedTree extends ExpressionTree { 44 | ExpressionTree getExpression(); 45 | } 46 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/PrimitiveTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import javax.lang.model.type.TypeKind; 29 | 30 | /** 31 | * A tree node for a primitive type. 32 | * 33 | * For example: 34 | *
35 |  *   primitiveTypeKind
36 |  * 
37 | * 38 | * @jls section 4.2 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface PrimitiveTypeTree extends Tree { 45 | TypeKind getPrimitiveTypeKind(); 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ReturnTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a 'return' statement. 30 | * 31 | * For example: 32 | *
33 |  *   return;
34 |  *   return expression;
35 |  * 
36 | * 37 | * @jls section 14.17 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface ReturnTree extends StatementTree { 44 | ExpressionTree getExpression(); 45 | } 46 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/StatementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node used as the base class for the different kinds of 30 | * statements. 31 | * 32 | * @jls chapter 14 33 | * 34 | * @author Peter von der Ahé 35 | * @author Jonathan Gibbons 36 | * @since 1.6 37 | */ 38 | public interface StatementTree extends Tree {} 39 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/SwitchTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a 'switch' statement. 32 | * 33 | * For example: 34 | *
35 |  *   switch ( expression ) {
36 |  *     cases
37 |  *   }
38 |  * 
39 | * 40 | * @jls section 14.11 41 | * 42 | * @author Peter von der Ahé 43 | * @author Jonathan Gibbons 44 | * @since 1.6 45 | */ 46 | public interface SwitchTree extends StatementTree { 47 | ExpressionTree getExpression(); 48 | List getCases(); 49 | } 50 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/SynchronizedTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a 'synchronized' statement. 30 | * 31 | * For example: 32 | *
33 |  *   synchronized ( expression )
34 |  *       block
35 |  * 
36 | * 37 | * @jls section 14.19 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface SynchronizedTree extends StatementTree { 44 | ExpressionTree getExpression(); 45 | BlockTree getBlock(); 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/ThrowTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a 'throw' statement. 30 | * 31 | * For example: 32 | *
33 |  *   throw expression;
34 |  * 
35 | * 36 | * @jls section 14.18 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ThrowTree extends StatementTree { 43 | ExpressionTree getExpression(); 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/TryTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a 'try' statement. 32 | * 33 | * For example: 34 | *
35 |  *   try
36 |  *       block
37 |  *   catches
38 |  *   finally
39 |  *       finallyBlock
40 |  * 
41 | * 42 | * @jls section 14.20 43 | * 44 | * @author Peter von der Ahé 45 | * @author Jonathan Gibbons 46 | * @since 1.6 47 | */ 48 | public interface TryTree extends StatementTree { 49 | BlockTree getBlock(); 50 | List getCatches(); 51 | BlockTree getFinallyBlock(); 52 | List getResources(); 53 | } 54 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/TypeCastTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a type cast expression. 30 | * 31 | * For example: 32 | *
33 |  *   ( type ) expression
34 |  * 
35 | * 36 | * @jls section 15.16 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface TypeCastTree extends ExpressionTree { 43 | Tree getType(); 44 | ExpressionTree getExpression(); 45 | } 46 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/TypeParameterTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | import javax.lang.model.element.Name; 30 | 31 | /** 32 | * A tree node for a type parameter. 33 | * 34 | * For example: 35 | *
36 |  *   name
37 |  *
38 |  *   name extends bounds
39 |  * 
40 | * 41 | * @jls section 4.4 42 | * 43 | * @author Peter von der Ahé 44 | * @author Jonathan Gibbons 45 | * @since 1.6 46 | */ 47 | public interface TypeParameterTree extends Tree { 48 | Name getName(); 49 | List getBounds(); 50 | } 51 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/UnaryTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for postfix and unary expressions. 30 | * Use {@link #getKind getKind} to determine the kind of operator. 31 | * 32 | * For example: 33 | *
34 |  *   operator expression
35 |  *
36 |  *   expression operator
37 |  * 
38 | * 39 | * @jls sections 15.14 and 15.15 40 | * 41 | * @author Peter von der Ahé 42 | * @author Jonathan Gibbons 43 | * @since 1.6 44 | */ 45 | public interface UnaryTree extends ExpressionTree { 46 | ExpressionTree getExpression(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/UnionTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a union type expression in a multicatch var declaration. 32 | * 33 | * @author Maurizio Cimadamore 34 | * 35 | * @since 1.7 36 | */ 37 | public interface UnionTypeTree extends Tree { 38 | List getTypeAlternatives(); 39 | } 40 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/VariableTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | import javax.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for a variable declaration. 32 | * 33 | * For example: 34 | *
35 |  *   modifiers type name initializer ;
36 |  * 
37 | * 38 | * @jls sections 8.3 and 14.4 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface VariableTree extends StatementTree { 45 | ModifiersTree getModifiers(); 46 | Name getName(); 47 | Tree getType(); 48 | ExpressionTree getInitializer(); 49 | } 50 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/WhileLoopTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a 'while' loop statement. 30 | * 31 | * For example: 32 | *
33 |  *   while ( condition )
34 |  *     statement
35 |  * 
36 | * 37 | * 38 | * @jls section 14.12 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface WhileLoopTree extends StatementTree { 45 | ExpressionTree getCondition(); 46 | StatementTree getStatement(); 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/WildcardTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.tree; 27 | 28 | /** 29 | * A tree node for a wildcard type argument. 30 | * Use {@link #getKind getKind} to determine the kind of bound. 31 | * 32 | * For example: 33 | *
34 |  *   ?
35 |  *
36 |  *   ? extends bound
37 |  *
38 |  *   ? super bound
39 |  * 
40 | * 41 | * @jls section 4.5.1 42 | * 43 | * @author Peter von der Ahé 44 | * @author Jonathan Gibbons 45 | * @since 1.6 46 | */ 47 | public interface WildcardTree extends Tree { 48 | Tree getBound(); 49 | } 50 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/tree/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | /** 27 | * Provides interfaces to represent source code as abstract syntax 28 | * trees (AST). 29 | * 30 | * @author Peter von der Ahé 31 | * @author Jonathan Gibbons 32 | * @since 1.6 33 | */ 34 | package com.sun.source.tree; 35 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/util/TaskListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.source.util; 27 | 28 | 29 | /** 30 | * Provides a listener to monitor the activity of the JDK Java Compiler, javac. 31 | * 32 | * @author Jonathan Gibbons 33 | * @since 1.6 34 | */ 35 | public interface TaskListener 36 | { 37 | public void started(TaskEvent e); 38 | 39 | public void finished(TaskEvent e); 40 | } 41 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/source/util/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | /** 27 | * Provides utilities for operations on abstract syntax trees (AST). 28 | * 29 | * @author Peter von der Ahé 30 | * @author Jonathan Gibbons 31 | * @since 1.6 32 | */ 33 | package com.sun.source.util; 34 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/apt/comp/AnnotationProcessingError.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.apt.comp; 27 | 28 | public class AnnotationProcessingError extends Error { 29 | private static final long serialVersionUID = 3279196183341719287L; 30 | AnnotationProcessingError(Throwable cause) { 31 | super(cause); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/apt/comp/UsageMessageNeededException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.apt.comp; 27 | 28 | 29 | public class UsageMessageNeededException extends RuntimeException { 30 | private static final long serialVersionUID = -3265159608992825840L; 31 | } 32 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/apt/mirror/apt/RoundCompleteEventImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.apt.mirror.apt; 27 | 28 | import com.sun.mirror.apt.AnnotationProcessorEnvironment; 29 | import com.sun.mirror.apt.RoundCompleteEvent; 30 | import com.sun.mirror.apt.RoundState; 31 | 32 | @SuppressWarnings("deprecation") 33 | public class RoundCompleteEventImpl extends RoundCompleteEvent { 34 | private static final long serialVersionUID = 7067621446720784300L; 35 | 36 | public RoundCompleteEventImpl(AnnotationProcessorEnvironment source, 37 | RoundState rs) { 38 | super(source, rs); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/apt/mirror/declaration/InterfaceDeclarationImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.apt.mirror.declaration; 27 | 28 | 29 | import com.sun.mirror.declaration.*; 30 | import com.sun.mirror.util.DeclarationVisitor; 31 | import com.sun.tools.apt.mirror.AptEnv; 32 | import com.sun.tools.javac.code.Symbol.*; 33 | 34 | 35 | /** 36 | * Implementation of InterfaceDeclaration 37 | */ 38 | @SuppressWarnings("deprecation") 39 | public class InterfaceDeclarationImpl extends TypeDeclarationImpl 40 | implements InterfaceDeclaration { 41 | 42 | InterfaceDeclarationImpl(AptEnv env, ClassSymbol sym) { 43 | super(env, sym); 44 | } 45 | 46 | /** 47 | * {@inheritDoc} 48 | */ 49 | public void accept(DeclarationVisitor v) { 50 | v.visitInterfaceDeclaration(this); 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/apt/mirror/type/EnumTypeImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.apt.mirror.type; 27 | 28 | 29 | import com.sun.mirror.declaration.*; 30 | import com.sun.mirror.type.*; 31 | import com.sun.mirror.util.TypeVisitor; 32 | import com.sun.tools.apt.mirror.AptEnv; 33 | import com.sun.tools.javac.code.Type; 34 | 35 | 36 | /** 37 | * Implementation of EnumType 38 | */ 39 | @SuppressWarnings("deprecation") 40 | public class EnumTypeImpl extends ClassTypeImpl implements EnumType { 41 | 42 | EnumTypeImpl(AptEnv env, Type.ClassType type) { 43 | super(env, type); 44 | } 45 | 46 | 47 | /** 48 | * {@inheritDoc} 49 | */ 50 | public EnumDeclaration getDeclaration() { 51 | return (EnumDeclaration) super.getDeclaration(); 52 | } 53 | 54 | /** 55 | * {@inheritDoc} 56 | */ 57 | public void accept(TypeVisitor v) { 58 | v.visitEnumType(this); 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/apt/mirror/type/VoidTypeImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.apt.mirror.type; 27 | 28 | 29 | import com.sun.mirror.type.VoidType; 30 | import com.sun.mirror.util.TypeVisitor; 31 | import com.sun.tools.apt.mirror.AptEnv; 32 | 33 | 34 | /** 35 | * Implementation of VoidType. 36 | */ 37 | @SuppressWarnings("deprecation") 38 | class VoidTypeImpl extends TypeMirrorImpl implements VoidType { 39 | 40 | VoidTypeImpl(AptEnv env) { 41 | super(env, env.symtab.voidType); 42 | } 43 | 44 | /** 45 | * {@inheritDoc} 46 | */ 47 | public void accept(TypeVisitor v) { 48 | v.visitVoidType(this); 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/classfile/AttributeException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.classfile; 27 | 28 | /* 29 | *

This is NOT part of any supported API. 30 | * If you write code that depends on this, you do so at your own risk. 31 | * This code and its internal interfaces are subject to change or 32 | * deletion without notice. 33 | */ 34 | public class AttributeException extends Exception { 35 | private static final long serialVersionUID = -4231486387714867770L; 36 | AttributeException() { } 37 | 38 | AttributeException(String msg) { 39 | super(msg); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/classfile/ConstantPoolException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | 27 | package com.sun.tools.classfile; 28 | 29 | /* 30 | *

This is NOT part of any supported API. 31 | * If you write code that depends on this, you do so at your own risk. 32 | * This code and its internal interfaces are subject to change or 33 | * deletion without notice. 34 | */ 35 | public class ConstantPoolException extends Exception { 36 | private static final long serialVersionUID = -2324397349644754565L; 37 | ConstantPoolException(int index) { 38 | this.index = index; 39 | } 40 | 41 | public final int index; 42 | } 43 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/classfile/DefaultAttribute.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.classfile; 27 | 28 | /* 29 | *

This is NOT part of any supported API. 30 | * If you write code that depends on this, you do so at your own risk. 31 | * This code and its internal interfaces are subject to change or 32 | * deletion without notice. 33 | */ 34 | public class DefaultAttribute extends Attribute { 35 | DefaultAttribute(ClassReader cr, int name_index, byte[] data) { 36 | super(name_index, data.length); 37 | info = data; 38 | } 39 | 40 | public DefaultAttribute(ConstantPool constant_pool, int name_index, byte[] info) { 41 | super(name_index, info.length); 42 | this.info = info; 43 | } 44 | 45 | public R accept(Visitor visitor, P p) { 46 | return visitor.visitDefault(this, p); 47 | } 48 | 49 | public final byte[] info; 50 | } 51 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/classfile/DescriptorException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | 27 | package com.sun.tools.classfile; 28 | 29 | /* 30 | *

This is NOT part of any supported API. 31 | * If you write code that depends on this, you do so at your own risk. 32 | * This code and its internal interfaces are subject to change or 33 | * deletion without notice. 34 | */ 35 | public class DescriptorException extends Exception { 36 | private static final long serialVersionUID = 2411890273788901032L; 37 | } 38 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/classfile/package.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | A minimalist library to read and write class files into objects closely 9 | based on the corresponding definitions in 10 | The Java™ Virtual Machine Specification (JVMS). 11 | 12 | 13 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/formats/html/markup/package.html: -------------------------------------------------------------------------------- 1 | 25 | 26 | 27 | 28 | com.sun.tools.doclets.formats.html.markup package 29 | 30 | This package contains classes that write HTML markup tags. 31 | 32 | 33 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/formats/html/package.html: -------------------------------------------------------------------------------- 1 | 25 | 26 | 27 | 28 | com.sun.tools.doclets.formats.html package 29 | 30 | 31 | This is the default doclet provided with JDK that produces Javadoc's 32 | default HTML-formatted API output. For more documentation 33 | on this doclet, please refer to the link below. 34 | 35 | @see 36 | http://www.java.sun.com/javadoc/standard-doclet.html 37 | 38 | 39 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/NestedClassWriter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit; 27 | 28 | import java.io.*; 29 | 30 | /** 31 | * The interface for writing class output. 32 | * 33 | * This code is not part of an API. 34 | * It is implementation that is subject to change. 35 | * Do not use it as an API 36 | * 37 | * @author Jamie Ho 38 | * @author Bhavesh Patel (Modified) 39 | * @since 1.5 40 | */ 41 | 42 | public interface NestedClassWriter { 43 | 44 | /** 45 | * Close the writer. 46 | */ 47 | public void close() throws IOException; 48 | } 49 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/builders/package.html: -------------------------------------------------------------------------------- 1 | 25 | 26 | 27 | 28 | com.sun.tools.doclets.internal.toolkit.builders package 29 | 30 | 31 | This doclet-independent package has a set of classes and 32 | interfaces that are the building blocks for doclets. They 33 | define the basic structure of doclets and make doclet 34 | writing much easier because they provide the content generation 35 | code to be shared among different doclets. Builders only provide 36 | the structure and content of API documentation. 37 | They will not provide any style markup. 38 |

39 | This code is not part of an API. 40 | It is implementation that is subject to change. 41 | Do not use it as an API. 42 | 43 | 44 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/background.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/background.gif -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/tab.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/tab.gif -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/titlebar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/titlebar.gif -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/titlebar_end.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/resources/titlebar_end.gif -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/taglets/BaseInlineTaglet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2001, 2003, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit.taglets; 27 | 28 | /** 29 | * An abstract inline taglet that outputs HTML. 30 | * 31 | * This code is not part of an API. 32 | * It is implementation that is subject to change. 33 | * Do not use it as an API 34 | * 35 | * @author Jamie Ho 36 | * @since 1.4 37 | */ 38 | 39 | public abstract class BaseInlineTaglet extends BaseTaglet { 40 | 41 | /** 42 | * Will return true since this is an inline tag. 43 | * @return true since this is an inline tag. 44 | */ 45 | public boolean isInlineTag() { 46 | return true; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/taglets/DeprecatedTaglet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit.taglets; 27 | 28 | import com.sun.javadoc.*; 29 | 30 | /** 31 | * A taglet that represents the @deprecated tag. 32 | * 33 | * This code is not part of an API. 34 | * It is implementation that is subject to change. 35 | * Do not use it as an API 36 | * 37 | * @author Jamie Ho 38 | * @since 1.5 39 | */ 40 | 41 | public class DeprecatedTaglet extends BaseTaglet{ 42 | 43 | public DeprecatedTaglet() { 44 | name = "deprecated"; 45 | } 46 | 47 | /** 48 | * {@inheritDoc} 49 | */ 50 | public TagletOutput getTagletOutput(Doc holder, TagletWriter writer) { 51 | return writer.deprecatedTagOutput(holder); 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/taglets/InheritableTaglet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit.taglets; 27 | 28 | import com.sun.tools.doclets.internal.toolkit.util.DocFinder; 29 | 30 | /** 31 | * A taglet should implement this interface if it supports the inheritDoc 32 | * tag or is automatically inherited if it is missing. 33 | * 34 | * @author Jamie Ho 35 | * @since 1.5 36 | */ 37 | public interface InheritableTaglet extends Taglet { 38 | 39 | /** 40 | * Given an {@link com.sun.tools.doclets.internal.toolkit.util.DocFinder.Output} 41 | * object, set its values with the appropriate information to inherit 42 | * documentation. 43 | * 44 | * @param input the input for documentation search. 45 | * @param output the output for documentation search. 46 | */ 47 | void inherit(DocFinder.Input input, DocFinder.Output output); 48 | } 49 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/util/CommentedMethodFinder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit.util; 27 | 28 | import com.sun.javadoc.*; 29 | 30 | /** 31 | * Find a commented method. 32 | * 33 | * This code is not part of an API. 34 | * It is implementation that is subject to change. 35 | * Do not use it as an API 36 | * 37 | */ 38 | public class CommentedMethodFinder extends MethodFinder { 39 | public boolean isCorrectMethod(MethodDoc method) { 40 | return method.inlineTags().length > 0; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/util/DocletAbortException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1997, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit.util; 27 | 28 | public class DocletAbortException extends RuntimeException { 29 | private static final long serialVersionUID = -9131058909576418984L; 30 | 31 | public DocletAbortException() { 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/util/TaggedMethodFinder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit.util; 27 | 28 | import com.sun.javadoc.*; 29 | 30 | /** 31 | * Find a tagged method. 32 | * 33 | * This code is not part of an API. 34 | * It is implementation that is subject to change. 35 | * Do not use it as an API 36 | * 37 | * @author Atul M Dambalkar 38 | */ 39 | public class TaggedMethodFinder extends MethodFinder { 40 | public boolean isCorrectMethod(MethodDoc method) { 41 | return method.paramTags().length + method.tags("return").length + 42 | method.throwsTags().length + method.seeTags().length > 0; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/util/links/LinkOutput.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.internal.toolkit.util.links; 27 | 28 | /** 29 | * Stores output of a link. 30 | * 31 | * @author Jamie Ho 32 | * @since 1.5 33 | */ 34 | public interface LinkOutput { 35 | 36 | /** 37 | * Append the given object to the output. 38 | * 39 | * @param o the object to append. 40 | */ 41 | public void append(Object o); 42 | } 43 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/util/links/package.html: -------------------------------------------------------------------------------- 1 | 25 | 26 | 27 | 28 | com.sun.tools.doclets.interal.toolkit.util.links package 29 | 30 | 31 | Provides a factory for constructing links. 32 | 33 | 34 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/internal/toolkit/util/package.html: -------------------------------------------------------------------------------- 1 | 25 | 26 | 27 | 28 | com.sun.tools.doclets.internal.toolkit.util package 29 | 30 | 31 | This package has utility classes that perform common services required 32 | for API documentation generation. 33 |

34 | This code is not part of an API. 35 | It is implementation that is subject to change. 36 | Do not use it as an API. 37 | 38 | 39 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/package.html: -------------------------------------------------------------------------------- 1 | 25 | 26 | 27 | 28 | com.sun.tools/doclets package 29 | 30 | 31 | As of JDK version 1.5, replaced by 32 | {@link com.sun.tools.doclets.internal.toolkit.util}. 33 | 34 | 35 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/doclets/standard/Standard.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.doclets.standard; 27 | 28 | import com.sun.javadoc.*; 29 | import com.sun.tools.doclets.formats.html.*; 30 | 31 | 32 | public class Standard { 33 | 34 | public static int optionLength(String option) { 35 | return HtmlDoclet.optionLength(option); 36 | } 37 | 38 | public static boolean start(RootDoc root) { 39 | return HtmlDoclet.start(root); 40 | } 41 | 42 | public static boolean validOptions(String[][] options, 43 | DocErrorReporter reporter) { 44 | return HtmlDoclet.validOptions(options, reporter); 45 | } 46 | 47 | public static LanguageVersion languageVersion() { 48 | return HtmlDoclet.languageVersion(); 49 | } 50 | 51 | } 52 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/code/BoundKind.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javac.code; 27 | 28 | /** 29 | * 30 | *

This is NOT part of any supported API. 31 | * If you write code that depends on this, you do so at your own risk. 32 | * This code and its internal interfaces are subject to change or 33 | * deletion without notice. 34 | */ 35 | public enum BoundKind { 36 | EXTENDS("? extends "), 37 | SUPER("? super "), 38 | UNBOUND("?"); 39 | 40 | private final String name; 41 | 42 | BoundKind(String name) { 43 | this.name = name; 44 | } 45 | 46 | public String toString() { return name; } 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/comp/AttrContextEnv.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2000, 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javac.comp; 27 | 28 | import com.sun.tools.javac.tree.JCTree; 29 | 30 | 31 | /** {@code Env} specialized as {@code Env} 32 | * 33 | *

This is NOT part of any supported API. 34 | * If you write code that depends on this, you do so at your own risk. 35 | * This code and its internal interfaces are subject to change or 36 | * deletion without notice. 37 | */ 38 | public class AttrContextEnv extends Env { 39 | 40 | /** Create an outermost environment for a given (toplevel)tree, 41 | * with a given info field. 42 | */ 43 | public AttrContextEnv(JCTree tree, AttrContext info) { 44 | super(tree, info); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/processing/AnnotationProcessingError.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javac.processing; 27 | 28 | 29 | /** 30 | * Error thrown for problems encountered during annotation processing. 31 | * 32 | *

This is NOT part of any supported API. 33 | * If you write code that depends on this, you do so at your own risk. 34 | * This code and its internal interfaces are subject to change or 35 | * deletion without notice. 36 | */ 37 | public class AnnotationProcessingError extends Error { 38 | static final long serialVersionUID = 305337707019230790L; 39 | AnnotationProcessingError(Throwable cause) { 40 | super(cause); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/resources/version.properties-template: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | # 5 | # This code is free software; you can redistribute it and/or modify it 6 | # under the terms of the GNU General Public License version 2 only, as 7 | # published by the Free Software Foundation. Oracle designates this 8 | # particular file as subject to the "Classpath" exception as provided 9 | # by Oracle in the LICENSE file that accompanied this code. 10 | # 11 | # This code is distributed in the hope that it will be useful, but WITHOUT 12 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | # version 2 for more details (a copy is included in the LICENSE file that 15 | # accompanied this code). 16 | # 17 | # You should have received a copy of the GNU General Public License version 18 | # 2 along with this work; if not, write to the Free Software Foundation, 19 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | # 21 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | # or visit www.oracle.com if you need additional information or have any 23 | # questions. 24 | # 25 | 26 | jdk=$(JDK_VERSION) 27 | full=$(FULL_VERSION) 28 | release=$(RELEASE) 29 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/services/javax.tools.JavaCompilerTool: -------------------------------------------------------------------------------- 1 | com.sun.tools.javac.api.Tool 2 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/util/Abort.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999, 2005, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javac.util; 27 | 28 | /** Throwing an instance of 29 | * this class causes (silent) termination of the main compiler method. 30 | * 31 | *

This is NOT part of any supported API. 32 | * If you write code that depends on this, you do so at your own risk. 33 | * This code and its internal interfaces are subject to change or 34 | * deletion without notice. 35 | */ 36 | public class Abort extends Error { 37 | private static final long serialVersionUID = 0; 38 | 39 | public Abort(Throwable cause) { 40 | super(cause); 41 | } 42 | 43 | public Abort() { 44 | super(); 45 | } 46 | 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/util/ClientCodeException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javac.util; 27 | 28 | /** 29 | * An exception used for propogating exceptions found in client code 30 | * invoked from javac. 31 | * 32 | *

This is NOT part of any supported API. 33 | * If you write code that depends on this, you do so at your own risk. 34 | * This code and its internal interfaces are subject to change or 35 | * deletion without notice. 36 | */ 37 | public class ClientCodeException extends RuntimeException { 38 | 39 | static final long serialVersionUID = -5674494409392415163L; 40 | 41 | public ClientCodeException(Throwable cause) { 42 | super(cause); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/util/Filter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javac.util; 27 | 28 | /** 29 | * Simple filter acting as a boolean predicate. Method accepts return true if 30 | * the supplied element matches against the filter. 31 | */ 32 | public interface Filter { 33 | /** 34 | * Does this element match against the filter? 35 | * @param t element to be checked 36 | * @return true if the element satisfy constraints imposed by filter 37 | */ 38 | boolean accepts(T t); 39 | } 40 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javac/util/PropagatedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javac.util; 27 | 28 | /** 29 | * Used to propagate exceptions through to the user. 30 | * 31 | *

This is NOT part of any supported API. 32 | * If you write code that depends on this, you do so at your own 33 | * risk. This code and its internal interfaces are subject to change 34 | * or deletion without notice.

35 | * 36 | * @author Peter von der Ah\u00e9 37 | */ 38 | public class PropagatedException extends RuntimeException { 39 | 40 | static final long serialVersionUID = -6065309339888775367L; 41 | 42 | public PropagatedException(RuntimeException cause) { 43 | super(cause); 44 | } 45 | 46 | @Override 47 | public RuntimeException getCause() { 48 | return (RuntimeException)super.getCause(); 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javah/InternalError.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javah; 27 | 28 | /** 29 | *

This is NOT part of any supported API. 30 | * If you write code that depends on this, you do so at your own risk. 31 | * This code and its internal interfaces are subject to change or 32 | * deletion without notice. 33 | */ 34 | public class InternalError extends Error { 35 | private static final long serialVersionUID = 8411861562497165022L; 36 | InternalError(String msg, Throwable cause) { 37 | super("Internal error: " + msg); 38 | initCause(cause); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javah/resources/version.properties-template: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | # 5 | # This code is free software; you can redistribute it and/or modify it 6 | # under the terms of the GNU General Public License version 2 only, as 7 | # published by the Free Software Foundation. Oracle designates this 8 | # particular file as subject to the "Classpath" exception as provided 9 | # by Oracle in the LICENSE file that accompanied this code. 10 | # 11 | # This code is distributed in the hope that it will be useful, but WITHOUT 12 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | # version 2 for more details (a copy is included in the LICENSE file that 15 | # accompanied this code). 16 | # 17 | # You should have received a copy of the GNU General Public License version 18 | # 2 along with this work; if not, write to the Free Software Foundation, 19 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | # 21 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | # or visit www.oracle.com if you need additional information or have any 23 | # questions. 24 | # 25 | 26 | jdk=$(JDK_VERSION) 27 | full=$(FULL_VERSION) 28 | release=$(RELEASE) 29 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javap/Context.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javap; 27 | 28 | import java.util.HashMap; 29 | import java.util.Map; 30 | 31 | /* 32 | * Class from which to put/get shared resources. 33 | * 34 | *

This is NOT part of any supported API. 35 | * If you write code that depends on this, you do so at your own risk. 36 | * This code and its internal interfaces are subject to change or 37 | * deletion without notice. 38 | */ 39 | public class Context { 40 | public Context() { 41 | map = new HashMap, Object>(); 42 | } 43 | 44 | @SuppressWarnings("unchecked") 45 | public T get(Class key) { 46 | return (T) map.get(key); 47 | } 48 | 49 | @SuppressWarnings("unchecked") 50 | public T put(Class key, T value) { 51 | return (T) map.put(key, value); 52 | } 53 | 54 | Map, Object> map; 55 | } 56 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javap/InternalError.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2007, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javap; 27 | 28 | /** 29 | *

This is NOT part of any supported API. 30 | * If you write code that depends on this, you do so at your own risk. 31 | * This code and its internal interfaces are subject to change or 32 | * deletion without notice. 33 | */ 34 | public class InternalError extends Error { 35 | private static final long serialVersionUID = 8114054446416187030L; 36 | InternalError(Throwable t, Object... args) { 37 | super("Internal error", t); 38 | this.args = args; 39 | } 40 | 41 | InternalError(Object... args) { 42 | super("Internal error"); 43 | this.args = args; 44 | } 45 | 46 | public final Object[] args; 47 | } 48 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javap/Messages.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2007, 2009, Oracle and/or its affiliates. All rights reserved. 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | * 5 | * This code is free software; you can redistribute it and/or modify it 6 | * under the terms of the GNU General Public License version 2 only, as 7 | * published by the Free Software Foundation. Oracle designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Oracle in the LICENSE file that accompanied this code. 10 | * 11 | * This code is distributed in the hope that it will be useful, but WITHOUT 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | * version 2 for more details (a copy is included in the LICENSE file that 15 | * accompanied this code). 16 | * 17 | * You should have received a copy of the GNU General Public License version 18 | * 2 along with this work; if not, write to the Free Software Foundation, 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | * 21 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | * or visit www.oracle.com if you need additional information or have any 23 | * questions. 24 | */ 25 | 26 | package com.sun.tools.javap; 27 | 28 | import java.util.Locale; 29 | 30 | /** 31 | * Access to javap messages. 32 | * 33 | *

This is NOT part of any supported API. 34 | * If you write code that depends on this, you do so at your own risk. 35 | * This code and its internal interfaces are subject to change or 36 | * deletion without notice. 37 | */ 38 | public interface Messages { 39 | String getMessage(String key, Object... args); 40 | 41 | String getMessage(Locale locale, String key, Object... args); 42 | } 43 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javap/overview.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | javap: class file disassembler 5 | 6 | 7 | 8 | Javap is a class file disassembler. 9 | 10 | 11 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javap/package.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Classes to dump class files in text format. 9 | 10 | 11 | -------------------------------------------------------------------------------- /Compiler_javac/src/main/java/com/sun/tools/javap/resources/version.properties-template: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved. 3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 | # 5 | # This code is free software; you can redistribute it and/or modify it 6 | # under the terms of the GNU General Public License version 2 only, as 7 | # published by the Free Software Foundation. Oracle designates this 8 | # particular file as subject to the "Classpath" exception as provided 9 | # by Oracle in the LICENSE file that accompanied this code. 10 | # 11 | # This code is distributed in the hope that it will be useful, but WITHOUT 12 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 | # version 2 for more details (a copy is included in the LICENSE file that 15 | # accompanied this code). 16 | # 17 | # You should have received a copy of the GNU General Public License version 18 | # 2 along with this work; if not, write to the Free Software Foundation, 19 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 | # 21 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 | # or visit www.oracle.com if you need additional information or have any 23 | # questions. 24 | # 25 | 26 | jdk=$(JDK_VERSION) 27 | full=$(FULL_VERSION) 28 | release=$(RELEASE) 29 | -------------------------------------------------------------------------------- /Compiler_javac/src/test/java/com/sun/tools/javac/LauncherTest.java: -------------------------------------------------------------------------------- 1 | package com.sun.tools.javac; 2 | 3 | import org.junit.Test; 4 | 5 | public class LauncherTest { 6 | 7 | /** 8 | * 测试fileChooser 9 | */ 10 | @Test public void testLauncher_fileChooser() { 11 | String[] args = {"D:/Workspace/JSE/workspace/Compiler_javac"}; 12 | Launcher.main(args); 13 | } 14 | 15 | /** 16 | * 主要测试一下Preferences在注册表中缓存路径 17 | */ 18 | @Test public void testLauncher_noArgs() { 19 | String[] args = {}; 20 | Launcher.main(args); 21 | } 22 | /** 23 | * -Xprint 24 | * @throws Exception 25 | */ 26 | @Test public void testLauncher_Xprint() throws Exception { 27 | String[] args = { 28 | "-Xprint", 29 | "java.lang.String"}; 30 | Launcher.main(args); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Compiler_javac/src/test/java/com/sun/tools/javac/main/OptionNameTest.java: -------------------------------------------------------------------------------- 1 | package com.sun.tools.javac.main; 2 | 3 | import org.junit.Test; 4 | 5 | import com.sun.tools.javac.Main; 6 | 7 | public class OptionNameTest { 8 | 9 | /** 10 | * -Xprint 输出指定类型的文本表示 11 | * 相关注解处理器:com.sun.tools.javac.processing.PrintingProcessor 12 | * @throws Exception 13 | */ 14 | @Test public void XPRINT() throws Exception { 15 | String[] args = {"-Xprint", "java.lang.String"}; 16 | Main.main(args); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Compiler_javac/src/test/java/com/sun/tools/javac/processing/JavacProcessingEnvironmentTest.java: -------------------------------------------------------------------------------- 1 | package com.sun.tools.javac.processing; 2 | 3 | import org.junit.Test; 4 | 5 | import com.sun.tools.javac.JavacTestTool; 6 | import com.sun.tools.javac.Main; 7 | import com.sun.tools.javac.MainTest; 8 | 9 | /** 10 | * 测试注解处理器相关 11 | * @author FengJc 12 | * 13 | * 2012-5-27 下午9:59:28 14 | */ 15 | public class JavacProcessingEnvironmentTest { 16 | 17 | /** 18 | * 一些注解处理器方面的参数设置 19 | */ 20 | @Test public void test_ProcessingEnvironment() { 21 | String [] args = { 22 | JavacTestTool.JAVAFILES_PATH + "Simple.java", 23 | "-d", // 指定生成的类文件的位置 24 | JavacTestTool.CLASSFILES_PATH, 25 | "-verbose", // 输出有关编译器正在执行的操作消息 26 | "-XprintProcessorInfo", // 输出有关请求处理程序处理那些注解的信息 27 | "-XprintRounds", // 输出有关注解处理循环的信息 28 | }; 29 | try { 30 | Main.main(args); 31 | } catch (Exception e) { 32 | e.printStackTrace(); 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/DynamicCompiler.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/DynamicCompiler.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/ForLauncher_trace.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/ForLauncher_trace.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/Simple.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/Simple.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/com/enter/test/MyPackageAnnoation.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/com/enter/test/MyPackageAnnoation.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/com/enter/test/MyPackageConst.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/com/enter/test/MyPackageConst.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/com/enter/test/MyPackageMethod.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/com/enter/test/MyPackageMethod.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/com/enter/test/PkgInfoTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/com/enter/test/PkgInfoTest.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/com/enter/test/package-info.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/com/enter/test/package-info.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/class-files/com/jctree/test/JCTreeTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fengjiachun/javac/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/test-files/class-files/com/jctree/test/JCTreeTest.class -------------------------------------------------------------------------------- /Compiler_javac/test-files/java-files/DynamicCompiler.java: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * 测试动态编译 4 | * @author FengJc 5 | * 6 | * 2012-5-23 下午6:13:12 7 | */ 8 | public class DynamicCompiler { 9 | public void sayHello() { 10 | System.out.println("Hello"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Compiler_javac/test-files/java-files/ForLauncher_trace.java: -------------------------------------------------------------------------------- 1 | 2 | public class ForLauncher_trace { 3 | public Integer i = 0; 4 | } 5 | -------------------------------------------------------------------------------- /Compiler_javac/test-files/java-files/Simple.java: -------------------------------------------------------------------------------- 1 | 2 | public class Simple { 3 | public Integer i = 0; 4 | 5 | public String methodTest() { 6 | String str = i.toString(); 7 | return str; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Compiler_javac/test-files/java-files/com/enter/test/MyPackageAnnoation.java: -------------------------------------------------------------------------------- 1 | package com.enter.test; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | /** 9 | * Package declaration 10 | */ 11 | @Target(ElementType.PACKAGE) 12 | @Retention(RetentionPolicy.RUNTIME) 13 | public @interface MyPackageAnnoation { 14 | 15 | } 16 | -------------------------------------------------------------------------------- /Compiler_javac/test-files/java-files/com/enter/test/PkgInfoTest.java: -------------------------------------------------------------------------------- 1 | package com.enter.test; 2 | 3 | import java.lang.annotation.Annotation; 4 | 5 | public class PkgInfoTest { 6 | 7 | public static void main(String[] args) { 8 | // ===========================友好类和包内访问常量============== 9 | new MyPackageMethod().myPackageMethod(); 10 | System.out.println(MyPackageConst.PACKAGE_STRING); 11 | 12 | // ===========================包上注解========================= 13 | Package pkg = Package.getPackage("com.enter.test"); 14 | for (Annotation annotation : pkg.getAnnotations()) 15 | System.out.println(annotation.annotationType().getName()); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Compiler_javac/test-files/java-files/com/enter/test/package-info.java: -------------------------------------------------------------------------------- 1 | @MyPackageAnnoation // 包上注解 2 | package com.enter.test; 3 | 4 | /** 5 | * 包内方法 6 | */ 7 | class MyPackageMethod { 8 | public void myPackageMethod() { 9 | System.out.println("MyPackageMethod..."); 10 | } 11 | } 12 | 13 | /** 14 | * 包内常量 15 | */ 16 | class MyPackageConst { 17 | static final java.lang.String PACKAGE_STRING = "myPackageConst"; 18 | } -------------------------------------------------------------------------------- /Compiler_javac/test-files/java-files/com/jctree/test/JCTreeTest.java: -------------------------------------------------------------------------------- 1 | /** 2 | * 测试1 3 | */ 4 | package com.jctree.test; 5 | 6 | import java.util.ArrayList; 7 | import java.util.Collection; 8 | import java.util.List; // JCImport 9 | import java.util.Map; 10 | 11 | import com.sun.tools.classfile.Annotation; 12 | 13 | /** 14 | * 测试2 15 | * @author FengJc 16 | * 17 | * 2012-6-6 下午9:08:00 18 | */ 19 | public class JCTreeTest & Collection, K extends Map> { // 泛型参数的测试 20 | public final static String JAVAFILES_PATH = "D:\\Workspace\\JSE\\workspace\\Compiler_javac\\test-files\\java-files"; 21 | /** 22 | * 测试3 23 | */ 24 | private String stringTest = "stringTest"; 25 | private List>>>> listGen; // 测试那些泛型>>>>> Token中最多>>> 26 | private List listStrings; 27 | private List list; 28 | public int count = 987432; // 整数测试 29 | public float f = 12.56f; // 浮点测试 30 | public int[] arr = new int[10]; // 数组测试 31 | 32 | /** 33 | * 测试4 34 | * @return 35 | */ 36 | public List getList(String... strs) { 37 | for (int i = 0; i < strs.length; ++i) { 38 | System.out.println(strs[i]); 39 | } 40 | 41 | for (String string : strs) 42 | System.out.println(string); 43 | // 测试5 44 | listStrings = new ArrayList(); 45 | listStrings.add(stringTest); 46 | return listStrings; // 测试6 47 | } 48 | } 49 | --------------------------------------------------------------------------------