├── .github └── workflows │ └── main.yml ├── .gitignore ├── .jcheck └── conf ├── .travis.yml.backup ├── CONTRIBUTING.md ├── LICENSE.txt ├── README.md ├── SECURITY.md ├── build.sh ├── make ├── ide │ └── idea │ │ └── langtools │ │ └── template │ │ ├── ant.xml │ │ ├── codeStyleSettings.xml │ │ ├── compiler.xml │ │ ├── copyright │ │ ├── langtools.xml │ │ └── profiles_settings.xml │ │ ├── inspectionProfiles │ │ ├── langtools.xml │ │ └── profiles_settings.xml │ │ ├── langtools.iml │ │ ├── misc.xml │ │ ├── modules.xml │ │ ├── runConfigurations │ │ ├── javac.xml │ │ ├── javadoc.xml │ │ ├── javap.xml │ │ ├── jshell.xml │ │ └── sjavac.xml │ │ ├── src │ │ └── idea │ │ │ ├── IdeaLoggerWrapper.java │ │ │ └── LangtoolsIdeaAntLogger.java │ │ ├── vcs.xml │ │ └── workspace.xml └── langtools │ ├── build.properties │ ├── build.xml │ ├── launcher.sh-template │ ├── netbeans │ └── nb-javac │ │ ├── build.xml │ │ ├── manifest.mf │ │ ├── nbproject │ │ ├── build-impl.xml │ │ ├── genfiles.properties │ │ ├── project.properties │ │ └── project.xml │ │ ├── pom-nb-javac.xml │ │ └── test │ │ ├── com │ │ └── sun │ │ │ ├── source │ │ │ ├── tree │ │ │ │ ├── CompilationUnitTreeTest.java │ │ │ │ └── TreeTest.java │ │ │ └── util │ │ │ │ └── TreesTest.java │ │ │ └── tools │ │ │ └── javac │ │ │ ├── code │ │ │ ├── FlagsTest.java │ │ │ ├── LintTest.java │ │ │ └── TypesTest.java │ │ │ ├── comp │ │ │ ├── AnnotateTest.java │ │ │ ├── AttrTest.java │ │ │ ├── CheckTest.java │ │ │ ├── FlowTest.java │ │ │ ├── LowerTest.java │ │ │ └── MemberEnterTest.java │ │ │ ├── jvm │ │ │ ├── ClassReaderTest.java │ │ │ ├── Test1.class │ │ │ ├── Test2.class │ │ │ └── V48gen.class │ │ │ └── parser │ │ │ ├── DocCommentParserTest.java │ │ │ └── JavacParserTest.java │ │ └── global │ │ ├── AP208917Test.java │ │ ├── AnnotationProcessingTest.java │ │ ├── DuplicateClassTest.java │ │ ├── ErrorToleranceTest.java │ │ ├── MethodInvocationAttributionTest.java │ │ ├── PackageInfoTest.java │ │ ├── ScopeTest.java │ │ ├── Test116436.java │ │ ├── Test122900.java │ │ ├── Test144555.java │ │ ├── TestAnnotationPackageInfo.java │ │ ├── TestNPEFromSymbolHasOutterInstances.java │ │ └── ap1 │ │ ├── AP.java │ │ ├── Ann.java │ │ ├── ClassBasedAP.java │ │ └── ErrorProducingAP.java │ └── tools │ ├── anttasks │ ├── CompilePropertiesTask.java │ ├── DumpClassesTask.java │ ├── GenStubsTask.java │ ├── PropertiesParserTask.java │ └── SelectToolTask.java │ ├── compileproperties │ └── CompileProperties.java │ ├── crules │ ├── AbstractCodingRulesAnalyzer.java │ ├── AssertCheckAnalyzer.java │ ├── CodingRulesAnalyzerPlugin.java │ ├── DefinedByAnalyzer.java │ ├── LegacyLogMethodAnalyzer.java │ ├── MutableFieldsAnalyzer.java │ └── resources │ │ └── crules.properties │ ├── genstubs │ └── GenStubs.java │ └── propertiesparser │ ├── PropertiesParser.java │ ├── gen │ ├── ClassGenerator.java │ └── GPL-2-CPE-license │ ├── parser │ ├── Message.java │ ├── MessageFile.java │ ├── MessageInfo.java │ ├── MessageLine.java │ └── MessageType.java │ └── resources │ └── templates.properties ├── setup.sh ├── setup_base.sh ├── src ├── java.compiler │ └── share │ │ └── classes │ │ ├── com │ │ └── itsaky │ │ │ └── androidide │ │ │ ├── config │ │ │ └── JavacConfigProvider.java │ │ │ └── zipfs2 │ │ │ ├── AndroidFsProvider.java │ │ │ ├── ByteArrayChannel.java │ │ │ ├── Collections2.java │ │ │ ├── JarFileSystemProvider.java │ │ │ ├── JarPackageProvider.java │ │ │ ├── ZipCoder.java │ │ │ ├── ZipConstants.java │ │ │ ├── ZipDirectoryStream.java │ │ │ ├── ZipFileAttributeView.java │ │ │ ├── ZipFileAttributes.java │ │ │ ├── ZipFileStore.java │ │ │ ├── ZipFileSystem.java │ │ │ ├── ZipFileSystemProvider.java │ │ │ ├── ZipInfo.java │ │ │ ├── ZipPath.java │ │ │ └── ZipUtils.java │ │ ├── java │ │ └── lang │ │ │ └── annotation │ │ │ └── ElementType.java │ │ ├── javac │ │ └── internal │ │ │ ├── PreviewFeature.java │ │ │ ├── jimage │ │ │ ├── BasicImageReader.java │ │ │ ├── ImageBufferCache.java │ │ │ ├── ImageHeader.java │ │ │ ├── ImageLocation.java │ │ │ ├── ImageReader.java │ │ │ ├── ImageReaderFactory.java │ │ │ ├── ImageStream.java │ │ │ ├── ImageStrings.java │ │ │ ├── ImageStringsReader.java │ │ │ ├── NativeImageBuffer.java │ │ │ └── decompressor │ │ │ │ ├── CompressIndexes.java │ │ │ │ ├── CompressedResourceHeader.java │ │ │ │ ├── Decompressor.java │ │ │ │ ├── ResourceDecompressor.java │ │ │ │ ├── ResourceDecompressorFactory.java │ │ │ │ ├── ResourceDecompressorRepository.java │ │ │ │ ├── SignatureParser.java │ │ │ │ ├── StringSharingDecompressor.java │ │ │ │ ├── StringSharingDecompressorFactory.java │ │ │ │ ├── ZipDecompressor.java │ │ │ │ └── ZipDecompressorFactory.java │ │ │ ├── jmod │ │ │ └── JmodFile.java │ │ │ └── jrtfs │ │ │ ├── ExplodedImage.java │ │ │ ├── JrtDirectoryStream.java │ │ │ ├── JrtFileAttributeView.java │ │ │ ├── JrtFileAttributes.java │ │ │ ├── JrtFileStore.java │ │ │ ├── JrtFileSystem.java │ │ │ ├── JrtFileSystemProvider.java │ │ │ ├── JrtPath.java │ │ │ ├── JrtUtils.java │ │ │ └── SystemImage.java │ │ ├── jdkx │ │ ├── annotation │ │ │ └── processing │ │ │ │ ├── AbstractProcessor.java │ │ │ │ ├── Completion.java │ │ │ │ ├── Completions.java │ │ │ │ ├── Filer.java │ │ │ │ ├── FilerException.java │ │ │ │ ├── Generated.java │ │ │ │ ├── Messager.java │ │ │ │ ├── ProcessingEnvironment.java │ │ │ │ ├── Processor.java │ │ │ │ ├── RoundEnvironment.java │ │ │ │ ├── SupportedAnnotationTypes.java │ │ │ │ ├── SupportedOptions.java │ │ │ │ ├── SupportedSourceVersion.java │ │ │ │ └── package-info.java │ │ ├── lang │ │ │ └── model │ │ │ │ ├── AnnotatedConstruct.java │ │ │ │ ├── SourceVersion.java │ │ │ │ ├── UnknownEntityException.java │ │ │ │ ├── element │ │ │ │ ├── AnnotationMirror.java │ │ │ │ ├── AnnotationValue.java │ │ │ │ ├── AnnotationValueVisitor.java │ │ │ │ ├── Element.java │ │ │ │ ├── ElementKind.java │ │ │ │ ├── ElementVisitor.java │ │ │ │ ├── ExecutableElement.java │ │ │ │ ├── Modifier.java │ │ │ │ ├── ModuleElement.java │ │ │ │ ├── Name.java │ │ │ │ ├── NestingKind.java │ │ │ │ ├── PackageElement.java │ │ │ │ ├── Parameterizable.java │ │ │ │ ├── QualifiedNameable.java │ │ │ │ ├── RecordComponentElement.java │ │ │ │ ├── TypeElement.java │ │ │ │ ├── TypeParameterElement.java │ │ │ │ ├── UnknownAnnotationValueException.java │ │ │ │ ├── UnknownDirectiveException.java │ │ │ │ ├── UnknownElementException.java │ │ │ │ ├── VariableElement.java │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ ├── type │ │ │ │ ├── ArrayType.java │ │ │ │ ├── DeclaredType.java │ │ │ │ ├── ErrorType.java │ │ │ │ ├── ExecutableType.java │ │ │ │ ├── IntersectionType.java │ │ │ │ ├── MirroredTypeException.java │ │ │ │ ├── MirroredTypesException.java │ │ │ │ ├── NoType.java │ │ │ │ ├── NullType.java │ │ │ │ ├── PrimitiveType.java │ │ │ │ ├── ReferenceType.java │ │ │ │ ├── TypeKind.java │ │ │ │ ├── TypeMirror.java │ │ │ │ ├── TypeVariable.java │ │ │ │ ├── TypeVisitor.java │ │ │ │ ├── UnionType.java │ │ │ │ ├── UnknownTypeException.java │ │ │ │ ├── WildcardType.java │ │ │ │ └── package-info.java │ │ │ │ └── util │ │ │ │ ├── AbstractAnnotationValueVisitor14.java │ │ │ │ ├── AbstractAnnotationValueVisitor6.java │ │ │ │ ├── AbstractAnnotationValueVisitor7.java │ │ │ │ ├── AbstractAnnotationValueVisitor8.java │ │ │ │ ├── AbstractAnnotationValueVisitor9.java │ │ │ │ ├── AbstractElementVisitor14.java │ │ │ │ ├── AbstractElementVisitor6.java │ │ │ │ ├── AbstractElementVisitor7.java │ │ │ │ ├── AbstractElementVisitor8.java │ │ │ │ ├── AbstractElementVisitor9.java │ │ │ │ ├── AbstractTypeVisitor14.java │ │ │ │ ├── AbstractTypeVisitor6.java │ │ │ │ ├── AbstractTypeVisitor7.java │ │ │ │ ├── AbstractTypeVisitor8.java │ │ │ │ ├── AbstractTypeVisitor9.java │ │ │ │ ├── ElementFilter.java │ │ │ │ ├── ElementKindVisitor14.java │ │ │ │ ├── ElementKindVisitor6.java │ │ │ │ ├── ElementKindVisitor7.java │ │ │ │ ├── ElementKindVisitor8.java │ │ │ │ ├── ElementKindVisitor9.java │ │ │ │ ├── ElementScanner14.java │ │ │ │ ├── ElementScanner6.java │ │ │ │ ├── ElementScanner7.java │ │ │ │ ├── ElementScanner8.java │ │ │ │ ├── ElementScanner9.java │ │ │ │ ├── Elements.java │ │ │ │ ├── SimpleAnnotationValueVisitor14.java │ │ │ │ ├── SimpleAnnotationValueVisitor6.java │ │ │ │ ├── SimpleAnnotationValueVisitor7.java │ │ │ │ ├── SimpleAnnotationValueVisitor8.java │ │ │ │ ├── SimpleAnnotationValueVisitor9.java │ │ │ │ ├── SimpleElementVisitor14.java │ │ │ │ ├── SimpleElementVisitor6.java │ │ │ │ ├── SimpleElementVisitor7.java │ │ │ │ ├── SimpleElementVisitor8.java │ │ │ │ ├── SimpleElementVisitor9.java │ │ │ │ ├── SimpleTypeVisitor14.java │ │ │ │ ├── SimpleTypeVisitor6.java │ │ │ │ ├── SimpleTypeVisitor7.java │ │ │ │ ├── SimpleTypeVisitor8.java │ │ │ │ ├── SimpleTypeVisitor9.java │ │ │ │ ├── TypeKindVisitor14.java │ │ │ │ ├── TypeKindVisitor6.java │ │ │ │ ├── TypeKindVisitor7.java │ │ │ │ ├── TypeKindVisitor8.java │ │ │ │ ├── TypeKindVisitor9.java │ │ │ │ ├── Types.java │ │ │ │ └── package-info.java │ │ └── tools │ │ │ ├── Diagnostic.java │ │ │ ├── DiagnosticCollector.java │ │ │ ├── DiagnosticListener.java │ │ │ ├── DocumentationTool.java │ │ │ ├── FileObject.java │ │ │ ├── ForwardingFileObject.java │ │ │ ├── ForwardingJavaFileManager.java │ │ │ ├── ForwardingJavaFileObject.java │ │ │ ├── JavaCompiler.java │ │ │ ├── JavaFileManager.java │ │ │ ├── JavaFileObject.java │ │ │ ├── OptionChecker.java │ │ │ ├── SimpleJavaFileObject.java │ │ │ ├── StandardJavaFileManager.java │ │ │ ├── StandardLocation.java │ │ │ ├── Tool.java │ │ │ ├── ToolProvider.java │ │ │ └── package-info.java │ │ └── module-info.java ├── jdk.compiler │ └── share │ │ ├── classes │ │ ├── javac │ │ │ └── internal │ │ │ │ └── shellsupport │ │ │ │ └── doc │ │ │ │ ├── JavadocFormatter.java │ │ │ │ ├── JavadocHelper.java │ │ │ │ └── resources │ │ │ │ └── javadocformatter.properties │ │ ├── module-info.java │ │ ├── openjdk │ │ │ ├── source │ │ │ │ ├── doctree │ │ │ │ │ ├── AttributeTree.java │ │ │ │ │ ├── AuthorTree.java │ │ │ │ │ ├── BlockTagTree.java │ │ │ │ │ ├── CommentTree.java │ │ │ │ │ ├── DeprecatedTree.java │ │ │ │ │ ├── DocCommentTree.java │ │ │ │ │ ├── DocRootTree.java │ │ │ │ │ ├── DocTree.java │ │ │ │ │ ├── DocTreeVisitor.java │ │ │ │ │ ├── DocTypeTree.java │ │ │ │ │ ├── EndElementTree.java │ │ │ │ │ ├── EntityTree.java │ │ │ │ │ ├── ErroneousTree.java │ │ │ │ │ ├── HiddenTree.java │ │ │ │ │ ├── IdentifierTree.java │ │ │ │ │ ├── IndexTree.java │ │ │ │ │ ├── InheritDocTree.java │ │ │ │ │ ├── InlineTagTree.java │ │ │ │ │ ├── LinkTree.java │ │ │ │ │ ├── LiteralTree.java │ │ │ │ │ ├── ParamTree.java │ │ │ │ │ ├── ProvidesTree.java │ │ │ │ │ ├── ReferenceTree.java │ │ │ │ │ ├── ReturnTree.java │ │ │ │ │ ├── SeeTree.java │ │ │ │ │ ├── SerialDataTree.java │ │ │ │ │ ├── SerialFieldTree.java │ │ │ │ │ ├── SerialTree.java │ │ │ │ │ ├── SinceTree.java │ │ │ │ │ ├── StartElementTree.java │ │ │ │ │ ├── SummaryTree.java │ │ │ │ │ ├── SystemPropertyTree.java │ │ │ │ │ ├── TextTree.java │ │ │ │ │ ├── ThrowsTree.java │ │ │ │ │ ├── UnknownBlockTagTree.java │ │ │ │ │ ├── UnknownInlineTagTree.java │ │ │ │ │ ├── UsesTree.java │ │ │ │ │ ├── ValueTree.java │ │ │ │ │ ├── VersionTree.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── tree │ │ │ │ │ ├── AnnotatedTypeTree.java │ │ │ │ │ ├── AnnotationTree.java │ │ │ │ │ ├── ArrayAccessTree.java │ │ │ │ │ ├── ArrayTypeTree.java │ │ │ │ │ ├── AssertTree.java │ │ │ │ │ ├── AssignmentTree.java │ │ │ │ │ ├── BinaryTree.java │ │ │ │ │ ├── BindingPatternTree.java │ │ │ │ │ ├── BlockTree.java │ │ │ │ │ ├── BreakTree.java │ │ │ │ │ ├── CaseLabelTree.java │ │ │ │ │ ├── CaseTree.java │ │ │ │ │ ├── CatchTree.java │ │ │ │ │ ├── ClassTree.java │ │ │ │ │ ├── CompilationUnitTree.java │ │ │ │ │ ├── CompoundAssignmentTree.java │ │ │ │ │ ├── ConditionalExpressionTree.java │ │ │ │ │ ├── ContinueTree.java │ │ │ │ │ ├── DefaultCaseLabelTree.java │ │ │ │ │ ├── DirectiveTree.java │ │ │ │ │ ├── DoWhileLoopTree.java │ │ │ │ │ ├── EmptyStatementTree.java │ │ │ │ │ ├── EnhancedForLoopTree.java │ │ │ │ │ ├── ErroneousTree.java │ │ │ │ │ ├── ExportsTree.java │ │ │ │ │ ├── ExpressionStatementTree.java │ │ │ │ │ ├── ExpressionTree.java │ │ │ │ │ ├── ForLoopTree.java │ │ │ │ │ ├── GuardedPatternTree.java │ │ │ │ │ ├── IdentifierTree.java │ │ │ │ │ ├── IfTree.java │ │ │ │ │ ├── ImportTree.java │ │ │ │ │ ├── InstanceOfTree.java │ │ │ │ │ ├── IntersectionTypeTree.java │ │ │ │ │ ├── LabeledStatementTree.java │ │ │ │ │ ├── LambdaExpressionTree.java │ │ │ │ │ ├── LineMap.java │ │ │ │ │ ├── LiteralTree.java │ │ │ │ │ ├── MemberReferenceTree.java │ │ │ │ │ ├── MemberSelectTree.java │ │ │ │ │ ├── MethodInvocationTree.java │ │ │ │ │ ├── MethodTree.java │ │ │ │ │ ├── ModifiersTree.java │ │ │ │ │ ├── ModuleTree.java │ │ │ │ │ ├── NewArrayTree.java │ │ │ │ │ ├── NewClassTree.java │ │ │ │ │ ├── OpensTree.java │ │ │ │ │ ├── PackageTree.java │ │ │ │ │ ├── ParameterizedTypeTree.java │ │ │ │ │ ├── ParenthesizedPatternTree.java │ │ │ │ │ ├── ParenthesizedTree.java │ │ │ │ │ ├── PatternTree.java │ │ │ │ │ ├── PrimitiveTypeTree.java │ │ │ │ │ ├── ProvidesTree.java │ │ │ │ │ ├── RequiresTree.java │ │ │ │ │ ├── ReturnTree.java │ │ │ │ │ ├── Scope.java │ │ │ │ │ ├── StatementTree.java │ │ │ │ │ ├── SwitchExpressionTree.java │ │ │ │ │ ├── SwitchTree.java │ │ │ │ │ ├── SynchronizedTree.java │ │ │ │ │ ├── ThrowTree.java │ │ │ │ │ ├── Tree.java │ │ │ │ │ ├── TreeVisitor.java │ │ │ │ │ ├── TryTree.java │ │ │ │ │ ├── TypeCastTree.java │ │ │ │ │ ├── TypeParameterTree.java │ │ │ │ │ ├── UnaryTree.java │ │ │ │ │ ├── UnionTypeTree.java │ │ │ │ │ ├── UsesTree.java │ │ │ │ │ ├── VariableTree.java │ │ │ │ │ ├── WhileLoopTree.java │ │ │ │ │ ├── WildcardTree.java │ │ │ │ │ ├── YieldTree.java │ │ │ │ │ └── package-info.java │ │ │ │ └── util │ │ │ │ │ ├── DocSourcePositions.java │ │ │ │ │ ├── DocTreeFactory.java │ │ │ │ │ ├── DocTreePath.java │ │ │ │ │ ├── DocTreePathScanner.java │ │ │ │ │ ├── DocTreeScanner.java │ │ │ │ │ ├── DocTrees.java │ │ │ │ │ ├── JavacTask.java │ │ │ │ │ ├── ParameterNameProvider.java │ │ │ │ │ ├── Plugin.java │ │ │ │ │ ├── SimpleDocTreeVisitor.java │ │ │ │ │ ├── SimpleTreeVisitor.java │ │ │ │ │ ├── SourcePositions.java │ │ │ │ │ ├── TaskEvent.java │ │ │ │ │ ├── TaskListener.java │ │ │ │ │ ├── TreePath.java │ │ │ │ │ ├── TreePathScanner.java │ │ │ │ │ ├── TreeScanner.java │ │ │ │ │ ├── Trees.java │ │ │ │ │ └── package-info.java │ │ │ └── tools │ │ │ │ ├── doclint │ │ │ │ ├── Checker.java │ │ │ │ ├── DocLint.java │ │ │ │ ├── Entity.java │ │ │ │ ├── Env.java │ │ │ │ ├── HtmlTag.java │ │ │ │ ├── HtmlVersion.java │ │ │ │ ├── Messages.java │ │ │ │ └── resources │ │ │ │ │ ├── doclint.properties │ │ │ │ │ ├── doclint_ja.properties │ │ │ │ │ └── doclint_zh_CN.properties │ │ │ │ ├── javac │ │ │ │ ├── Main.java │ │ │ │ ├── api │ │ │ │ │ ├── BasicJavacTask.java │ │ │ │ │ ├── ClassNamesForFileOraculum.java │ │ │ │ │ ├── ClientCodeWrapper.java │ │ │ │ │ ├── DiagnosticFormatter.java │ │ │ │ │ ├── DuplicateClassChecker.java │ │ │ │ │ ├── Entity.java │ │ │ │ │ ├── Formattable.java │ │ │ │ │ ├── JavacScope.java │ │ │ │ │ ├── JavacTaskImpl.java │ │ │ │ │ ├── JavacTaskPool.java │ │ │ │ │ ├── JavacTool.java │ │ │ │ │ ├── JavacTrees.java │ │ │ │ │ ├── Messages.java │ │ │ │ │ ├── MultiTaskListener.java │ │ │ │ │ └── WrappingJavaFileManager.java │ │ │ │ ├── code │ │ │ │ │ ├── AnnoConstruct.java │ │ │ │ │ ├── Attribute.java │ │ │ │ │ ├── BoundKind.java │ │ │ │ │ ├── ClassFinder.java │ │ │ │ │ ├── DeferredCompletionFailureHandler.java │ │ │ │ │ ├── DeferredLintHandler.java │ │ │ │ │ ├── Directive.java │ │ │ │ │ ├── Flags.java │ │ │ │ │ ├── Kinds.java │ │ │ │ │ ├── Lint.java │ │ │ │ │ ├── MissingInfoHandler.java │ │ │ │ │ ├── ModuleFinder.java │ │ │ │ │ ├── Preview.java │ │ │ │ │ ├── Printer.java │ │ │ │ │ ├── Scope.java │ │ │ │ │ ├── Source.java │ │ │ │ │ ├── Symbol.java │ │ │ │ │ ├── SymbolMetadata.java │ │ │ │ │ ├── Symtab.java │ │ │ │ │ ├── TargetType.java │ │ │ │ │ ├── Type.java │ │ │ │ │ ├── TypeAnnotationPosition.java │ │ │ │ │ ├── TypeAnnotations.java │ │ │ │ │ ├── TypeMetadata.java │ │ │ │ │ ├── TypeTag.java │ │ │ │ │ └── Types.java │ │ │ │ ├── comp │ │ │ │ │ ├── Analyzer.java │ │ │ │ │ ├── Annotate.java │ │ │ │ │ ├── ArgumentAttr.java │ │ │ │ │ ├── Attr.java │ │ │ │ │ ├── AttrContext.java │ │ │ │ │ ├── AttrContextEnv.java │ │ │ │ │ ├── AttrRecover.java │ │ │ │ │ ├── Check.java │ │ │ │ │ ├── CompileStates.java │ │ │ │ │ ├── ConstFold.java │ │ │ │ │ ├── DeferredAttr.java │ │ │ │ │ ├── Enter.java │ │ │ │ │ ├── Env.java │ │ │ │ │ ├── Flow.java │ │ │ │ │ ├── Infer.java │ │ │ │ │ ├── InferenceContext.java │ │ │ │ │ ├── LambdaToMethod.java │ │ │ │ │ ├── Lower.java │ │ │ │ │ ├── MatchBindingsComputer.java │ │ │ │ │ ├── MemberEnter.java │ │ │ │ │ ├── Modules.java │ │ │ │ │ ├── Operators.java │ │ │ │ │ ├── Repair.java │ │ │ │ │ ├── Resolve.java │ │ │ │ │ ├── Todo.java │ │ │ │ │ ├── TransPatterns.java │ │ │ │ │ ├── TransTypes.java │ │ │ │ │ ├── TreeDiffer.java │ │ │ │ │ ├── TreeHasher.java │ │ │ │ │ ├── TypeEnter.java │ │ │ │ │ └── TypeEnvs.java │ │ │ │ ├── file │ │ │ │ │ ├── BaseFileManager.java │ │ │ │ │ ├── CacheFSInfo.java │ │ │ │ │ ├── FSInfo.java │ │ │ │ │ ├── JRTIndex.java │ │ │ │ │ ├── JavacFileManager.java │ │ │ │ │ ├── Locations.java │ │ │ │ │ ├── PathFileObject.java │ │ │ │ │ └── RelativePath.java │ │ │ │ ├── jvm │ │ │ │ │ ├── ByteCodes.java │ │ │ │ │ ├── CRTFlags.java │ │ │ │ │ ├── CRTable.java │ │ │ │ │ ├── ClassFile.java │ │ │ │ │ ├── ClassReader.java │ │ │ │ │ ├── ClassWriter.java │ │ │ │ │ ├── Code.java │ │ │ │ │ ├── Gen.java │ │ │ │ │ ├── Items.java │ │ │ │ │ ├── JNIWriter.java │ │ │ │ │ ├── ModuleNameReader.java │ │ │ │ │ ├── PoolConstant.java │ │ │ │ │ ├── PoolReader.java │ │ │ │ │ ├── PoolWriter.java │ │ │ │ │ ├── Profile.java │ │ │ │ │ ├── StringConcat.java │ │ │ │ │ ├── Target.java │ │ │ │ │ └── UninitializedType.java │ │ │ │ ├── launcher │ │ │ │ │ └── Main.java │ │ │ │ ├── main │ │ │ │ │ ├── Arguments.java │ │ │ │ │ ├── CommandLine.java │ │ │ │ │ ├── DelegatingJavaFileManager.java │ │ │ │ │ ├── JavaCompiler.java │ │ │ │ │ ├── JavacToolProvider.java │ │ │ │ │ ├── Main.java │ │ │ │ │ ├── Option.java │ │ │ │ │ └── OptionHelper.java │ │ │ │ ├── model │ │ │ │ │ ├── AnnotationProxyMaker.java │ │ │ │ │ ├── FilteredMemberList.java │ │ │ │ │ ├── JavacElements.java │ │ │ │ │ ├── JavacTypes.java │ │ │ │ │ └── LazyTreeLoader.java │ │ │ │ ├── package-info.java │ │ │ │ ├── parser │ │ │ │ │ ├── DocCommentParser.java │ │ │ │ │ ├── JavaTokenizer.java │ │ │ │ │ ├── JavacParser.java │ │ │ │ │ ├── JavadocTokenizer.java │ │ │ │ │ ├── LazyDocCommentTable.java │ │ │ │ │ ├── Lexer.java │ │ │ │ │ ├── Parser.java │ │ │ │ │ ├── ParserFactory.java │ │ │ │ │ ├── ReferenceParser.java │ │ │ │ │ ├── Scanner.java │ │ │ │ │ ├── ScannerFactory.java │ │ │ │ │ ├── TextBlockSupport.java │ │ │ │ │ ├── Tokens.java │ │ │ │ │ └── UnicodeReader.java │ │ │ │ ├── platform │ │ │ │ │ ├── JDKPlatformProvider.java │ │ │ │ │ ├── PlatformDescription.java │ │ │ │ │ ├── PlatformProvider.java │ │ │ │ │ ├── PlatformUtils.java │ │ │ │ │ └── package-info.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 │ │ │ │ │ ├── ct.properties │ │ │ │ │ ├── javac.properties │ │ │ │ │ ├── javac_ja.properties │ │ │ │ │ ├── javac_zh_CN.properties │ │ │ │ │ ├── launcher.properties │ │ │ │ │ ├── launcher_ja.properties │ │ │ │ │ ├── launcher_zh_CN.properties │ │ │ │ │ ├── legacy.properties │ │ │ │ │ └── version.properties-template │ │ │ │ ├── tree │ │ │ │ │ ├── DCTree.java │ │ │ │ │ ├── DocCommentTable.java │ │ │ │ │ ├── DocPretty.java │ │ │ │ │ ├── DocTreeMaker.java │ │ │ │ │ ├── EndPosTable.java │ │ │ │ │ ├── JCTree.java │ │ │ │ │ ├── Pretty.java │ │ │ │ │ ├── TreeCopier.java │ │ │ │ │ ├── TreeInfo.java │ │ │ │ │ ├── TreeMaker.java │ │ │ │ │ ├── TreeScanner.java │ │ │ │ │ └── TreeTranslator.java │ │ │ │ └── util │ │ │ │ │ ├── Abort.java │ │ │ │ │ ├── AbstractDiagnosticFormatter.java │ │ │ │ │ ├── AbstractLog.java │ │ │ │ │ ├── ArrayUtils.java │ │ │ │ │ ├── Assert.java │ │ │ │ │ ├── BasicDiagnosticFormatter.java │ │ │ │ │ ├── Bits.java │ │ │ │ │ ├── ByteBuffer.java │ │ │ │ │ ├── ClientCodeException.java │ │ │ │ │ ├── Constants.java │ │ │ │ │ ├── Context.java │ │ │ │ │ ├── Convert.java │ │ │ │ │ ├── CouplingAbort.java │ │ │ │ │ ├── DefinedBy.java │ │ │ │ │ ├── Dependencies.java │ │ │ │ │ ├── DiagnosticSource.java │ │ │ │ │ ├── FatalError.java │ │ │ │ │ ├── Filter.java │ │ │ │ │ ├── ForwardingDiagnosticFormatter.java │ │ │ │ │ ├── GraphUtils.java │ │ │ │ │ ├── IntHashTable.java │ │ │ │ │ ├── Iterators.java │ │ │ │ │ ├── JCDiagnostic.java │ │ │ │ │ ├── JavacMessages.java │ │ │ │ │ ├── LayoutCharacters.java │ │ │ │ │ ├── List.java │ │ │ │ │ ├── ListBuffer.java │ │ │ │ │ ├── Log.java │ │ │ │ │ ├── MandatoryWarningHandler.java │ │ │ │ │ ├── MatchingUtils.java │ │ │ │ │ ├── MemoryLowAbort.java │ │ │ │ │ ├── MissingPlatformError.java │ │ │ │ │ ├── ModuleHelper.java │ │ │ │ │ ├── Name.java │ │ │ │ │ ├── Names.java │ │ │ │ │ ├── Options.java │ │ │ │ │ ├── Pair.java │ │ │ │ │ ├── PlatformUtils.java │ │ │ │ │ ├── Position.java │ │ │ │ │ ├── PropagatedException.java │ │ │ │ │ ├── RawDiagnosticFormatter.java │ │ │ │ │ ├── RichDiagnosticFormatter.java │ │ │ │ │ ├── SharedNameTable.java │ │ │ │ │ ├── StringUtils.java │ │ │ │ │ ├── UnsharedNameTable.java │ │ │ │ │ └── Warner.java │ │ │ │ └── sjavac │ │ │ │ ├── AutoFlushWriter.java │ │ │ │ ├── BuildState.java │ │ │ │ ├── CleanProperties.java │ │ │ │ ├── CompileChunk.java │ │ │ │ ├── CompileJavaPackages.java │ │ │ │ ├── CompileProperties.java │ │ │ │ ├── CopyFile.java │ │ │ │ ├── JavacState.java │ │ │ │ ├── Log.java │ │ │ │ ├── Main.java │ │ │ │ ├── Module.java │ │ │ │ ├── Package.java │ │ │ │ ├── ProblemException.java │ │ │ │ ├── PubApiExtractor.java │ │ │ │ ├── Source.java │ │ │ │ ├── Transformer.java │ │ │ │ ├── Util.java │ │ │ │ ├── client │ │ │ │ ├── ClientMain.java │ │ │ │ ├── PortFileInaccessibleException.java │ │ │ │ └── SjavacClient.java │ │ │ │ ├── comp │ │ │ │ ├── CompilationService.java │ │ │ │ ├── FileObjectWithLocation.java │ │ │ │ ├── JavaFileObjectWithLocation.java │ │ │ │ ├── PathAndPackageVerifier.java │ │ │ │ ├── PooledSjavac.java │ │ │ │ ├── PubAPIs.java │ │ │ │ ├── PubapiVisitor.java │ │ │ │ ├── SjavacImpl.java │ │ │ │ ├── SmartFileManager.java │ │ │ │ ├── SmartFileObject.java │ │ │ │ ├── SmartWriter.java │ │ │ │ └── dependencies │ │ │ │ │ ├── NewDependencyCollector.java │ │ │ │ │ └── PublicApiCollector.java │ │ │ │ ├── options │ │ │ │ ├── ArgumentIterator.java │ │ │ │ ├── Option.java │ │ │ │ ├── OptionHelper.java │ │ │ │ ├── Options.java │ │ │ │ └── SourceLocation.java │ │ │ │ ├── pubapi │ │ │ │ ├── ArrayTypeDesc.java │ │ │ │ ├── PrimitiveTypeDesc.java │ │ │ │ ├── PubApi.java │ │ │ │ ├── PubApiTypeParam.java │ │ │ │ ├── PubMethod.java │ │ │ │ ├── PubType.java │ │ │ │ ├── PubVar.java │ │ │ │ ├── ReferenceTypeDesc.java │ │ │ │ ├── TypeDesc.java │ │ │ │ └── TypeVarTypeDesc.java │ │ │ │ └── server │ │ │ │ ├── CompilationSubResult.java │ │ │ │ ├── IdleResetSjavac.java │ │ │ │ ├── PortFile.java │ │ │ │ ├── PortFileMonitor.java │ │ │ │ ├── RequestHandler.java │ │ │ │ ├── ServerMain.java │ │ │ │ ├── Sjavac.java │ │ │ │ ├── SjavacServer.java │ │ │ │ ├── SysInfo.java │ │ │ │ ├── Terminable.java │ │ │ │ └── log │ │ │ │ ├── LazyInitFileLog.java │ │ │ │ └── LoggingOutputStream.java │ │ └── sun │ │ │ └── tools │ │ │ └── serialver │ │ │ ├── SerialVer.java │ │ │ └── resources │ │ │ ├── serialver.properties │ │ │ ├── serialver_ja.properties │ │ │ └── serialver_zh_CN.properties │ │ └── man │ │ ├── javac.1 │ │ └── serialver.1 └── jdk.jdeps │ └── share │ ├── classes │ ├── module-info.java │ └── openjdk │ │ └── tools │ │ ├── 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 │ │ ├── FatalError.java │ │ ├── Field.java │ │ ├── InnerClasses_attribute.java │ │ ├── Instruction.java │ │ ├── LineNumberTable_attribute.java │ │ ├── LocalVariableTable_attribute.java │ │ ├── LocalVariableTypeTable_attribute.java │ │ ├── Method.java │ │ ├── MethodParameters_attribute.java │ │ ├── ModuleHashes_attribute.java │ │ ├── ModuleMainClass_attribute.java │ │ ├── ModulePackages_attribute.java │ │ ├── ModuleResolution_attribute.java │ │ ├── ModuleTarget_attribute.java │ │ ├── Module_attribute.java │ │ ├── NestHost_attribute.java │ │ ├── NestMembers_attribute.java │ │ ├── Opcode.java │ │ ├── PermittedSubclasses_attribute.java │ │ ├── Record_attribute.java │ │ ├── ReferenceFinder.java │ │ ├── RuntimeAnnotations_attribute.java │ │ ├── RuntimeInvisibleAnnotations_attribute.java │ │ ├── RuntimeInvisibleParameterAnnotations_attribute.java │ │ ├── RuntimeInvisibleTypeAnnotations_attribute.java │ │ ├── RuntimeParameterAnnotations_attribute.java │ │ ├── RuntimeTypeAnnotations_attribute.java │ │ ├── RuntimeVisibleAnnotations_attribute.java │ │ ├── RuntimeVisibleParameterAnnotations_attribute.java │ │ ├── RuntimeVisibleTypeAnnotations_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 │ │ ├── TypeAnnotation.java │ │ └── package-info.java │ │ ├── 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 │ │ ├── TypeAnnotationWriter.java │ │ ├── package-info.java │ │ └── resources │ │ │ ├── javap.properties │ │ │ ├── javap_ja.properties │ │ │ ├── javap_zh_CN.properties │ │ │ └── version.properties-template │ │ ├── jdeprscan │ │ ├── CSV.java │ │ ├── CSVParseException.java │ │ ├── DeprDB.java │ │ ├── DeprData.java │ │ ├── LoadProc.java │ │ ├── Main.java │ │ ├── Messages.java │ │ ├── Pretty.java │ │ ├── TraverseProc.java │ │ ├── internals.md │ │ ├── readme.md │ │ ├── resources │ │ │ ├── jdeprscan.properties │ │ │ ├── jdeprscan_ja.properties │ │ │ └── jdeprscan_zh_CN.properties │ │ └── scan │ │ │ ├── CPEntries.java │ │ │ ├── CPSelector.java │ │ │ ├── ClassFinder.java │ │ │ ├── MethodSig.java │ │ │ └── Scan.java │ │ └── jdeps │ │ ├── Analyzer.java │ │ ├── Archive.java │ │ ├── ClassFileReader.java │ │ ├── DependencyFinder.java │ │ ├── DepsAnalyzer.java │ │ ├── Graph.java │ │ ├── InverseDepsAnalyzer.java │ │ ├── JdepsConfiguration.java │ │ ├── JdepsFilter.java │ │ ├── JdepsTask.java │ │ ├── JdepsWriter.java │ │ ├── Main.java │ │ ├── Module.java │ │ ├── ModuleAnalyzer.java │ │ ├── ModuleDotGraph.java │ │ ├── ModuleExportsAnalyzer.java │ │ ├── ModuleGraphBuilder.java │ │ ├── ModuleInfoBuilder.java │ │ ├── MultiReleaseException.java │ │ ├── Profile.java │ │ ├── VersionHelper.java │ │ └── resources │ │ ├── jdeps.properties │ │ ├── jdeps_ja.properties │ │ ├── jdeps_zh_CN.properties │ │ ├── jdk8_internals.txt │ │ ├── jdkinternals.properties │ │ └── version.properties-template │ └── man │ ├── javap.1 │ ├── jdeprscan.1 │ └── jdeps.1 └── test.sh /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | # Controls when the action will run. Triggers the workflow on push or pull request 4 | # events but only for the master branch 5 | on: 6 | push: 7 | branches: [ main ] 8 | jobs: 9 | build : 10 | name: "Linux Build" 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/checkout@v2 14 | - name: Set up JDK 8 15 | uses: actions/setup-java@v3 16 | with: 17 | distribution: 'temurin' 18 | java-version: '8' 19 | - run: echo "JAVA_8=$JAVA_HOME" >> $GITHUB_ENV 20 | - name: Set up JDK 17 21 | uses: actions/setup-java@v3 22 | with: 23 | distribution: 'temurin' 24 | java-version: '17' 25 | - name: "Build nb-javac-android" 26 | run: "./build.sh clean jar" 27 | - name: "Unit Test nb-javac-android" 28 | run: "./test.sh" 29 | - name: Upload JAR 30 | uses: actions/upload-artifact@v2 31 | if: ${{ !github.head_ref }} 32 | with: 33 | name: nb-javac-android 34 | path: ./make/langtools/netbeans/nb-javac/dist/nb-javac-*-android.jar -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /build/ 2 | /dist/ 3 | /.idea/ 4 | /.vscode/ 5 | nbproject/private/ 6 | /webrev 7 | /.src-rev 8 | /.jib/ 9 | .DS_Store 10 | .metadata/ 11 | .recommenders/ 12 | test/nashorn/script/external 13 | test/nashorn/lib 14 | NashornProfile.txt 15 | **/JTreport/** 16 | **/JTwork/** 17 | /make/langtools/netbeans/nb-javac/build/ 18 | /make/langtools/netbeans/nb-javac/dist/ 19 | /make/langtools/netbeans/nb-javac/nbproject/private/ 20 | -------------------------------------------------------------------------------- /.jcheck/conf: -------------------------------------------------------------------------------- 1 | project=jdk 2 | bugids=dup 3 | -------------------------------------------------------------------------------- /.travis.yml.backup: -------------------------------------------------------------------------------- 1 | --- 2 | addons: 3 | apt: 4 | packages: 5 | - ant 6 | language: java 7 | matrix: 8 | include: 9 | - 10 | jdk: openjdk8 11 | name: "Simple Build" 12 | script: 13 | - "ant -f ./make/langtools/netbeans/nb-javac clean jar" 14 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Reporting Security Vulnerabilities 2 | Oracle values the independent security research community and believes that responsible disclosure of security vulnerabilities helps us ensure the security and privacy of all our users. 3 | Please do NOT raise a GitHub Issue to report a security vulnerability. If you believe you have found a security vulnerability, please submit a report to secalert_us@oracle.com preferably with a proof of concept. We provide additional information on how to report security vulnerabilities to Oracle which includes public encryption keys for secure email. 4 | We ask that you do not use other channels or contact project contributors directly. 5 | Non-vulnerability related security issues such as great new ideas for security features are welcome on GitHub Issues. 6 | 7 | # Security Updates, Alerts and Bulletins 8 | Security updates will be released on a regular cadence. Many of our projects will typically release security fixes in conjunction with the Oracle Critical Patch Update program. Security updates are released on the Tuesday closest to the 17th day of January, April, July and October. A pre-release announcement will be published on the Thursday preceding each release. Additional information, including past advisories, is available on our Security Alerts page. 9 | 10 | # Security-Related Information 11 | We will provide security related information such as a threat model, considerations for secure use, or any known security issues in our documentation. Please note sample code (if any) are intended to demonstrate a concept and may not be sufficiently hardened for production use. 12 | -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | source $(dirname $0)/setup_base.sh 6 | 7 | # Build langtools 8 | cd make/langtools 9 | ant build 10 | cd - 11 | 12 | source $(dirname $0)/setup.sh 13 | 14 | ant -f $ant_dir -Dmaven.groupId=io.github.itsaky "$@" 15 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/ant.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/codeStyleSettings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/copyright/langtools.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/inspectionProfiles/langtools.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 30 | 31 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | @IDEA_JTREG_HOME@ 8 | build 9 | 10 | @XPATCH@ 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/runConfigurations/javac.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 23 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/runConfigurations/javadoc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 23 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/runConfigurations/javap.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 23 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/runConfigurations/jshell.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 20 | 21 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/runConfigurations/sjavac.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 23 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/src/idea/IdeaLoggerWrapper.java: -------------------------------------------------------------------------------- 1 | package idea; 2 | 3 | import org.apache.tools.ant.Task; 4 | 5 | /** 6 | * This class implements a custom Ant task which replaces the standard Intellij IDEA Ant logger 7 | * with a custom one which generates tighter output. 8 | */ 9 | public class IdeaLoggerWrapper extends Task { 10 | public void execute() { 11 | new LangtoolsIdeaAntLogger(getProject()); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /make/ide/idea/langtools/template/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 22 | 23 | -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/manifest.mf: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | X-COMMENT: Main-Class will be added automatically by build 3 | 4 | -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/nbproject/genfiles.properties: -------------------------------------------------------------------------------- 1 | build.xml.data.CRC32=9cf381a1 2 | build.xml.script.CRC32=5a882d8f 3 | build.xml.stylesheet.CRC32=be360661 4 | # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. 5 | # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. 6 | nbproject/build-impl.xml.data.CRC32=da9507ce 7 | nbproject/build-impl.xml.script.CRC32=bf036ecf 8 | nbproject/build-impl.xml.stylesheet.CRC32=f89f7d21@1.95.0.48 9 | -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/nbproject/project.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.netbeans.modules.java.j2seproject 4 | 5 | 6 | nb-javac 7 | 1.6.5 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/pom-nb-javac.xml: -------------------------------------------------------------------------------- 1 | 5 | 4.0.0 6 | 7 | TEMPLATE 8 | nb-javac-android 9 | TEMPLATE 10 | jar 11 | 12 | nb-javac-android 13 | "nb-javac-android" (a fork of nb-javac) is patched to work in Android Runtime (ART). 14 | https://github.com/itsaky/nb-javac-android 15 | 16 | 17 | 18 | GPLv2-CPE 19 | https://openjdk.java.net/legal/gplv2+ce.html 20 | repo 21 | 22 | 23 | 24 | 25 | scm:git:https://github.com/itsaky/nb-javac-android.git 26 | scm:git:git@github.com:itsaky/nb-javac-android.git 27 | https://github.com/itsaky/nb-javac-android 28 | 29 | 30 | 31 | 32 | akhilesh.s.singh@oracle.com 33 | Akhilesh Singh 34 | https://github.com/singh-akhilesh 35 | 36 | Developer 37 | 38 | 39 | 40 | akshay.ag.gupta@oracle.com 41 | Akshay Gupta 42 | https://github.com/Akshay-Gupta-Oracle 43 | 44 | Developer 45 | 46 | 47 | 48 | itsaky01@gmail.com 49 | Akash Yadav 50 | https://github.com/itsaky 51 | 52 | Developer 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/test/com/sun/tools/javac/jvm/Test1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AndroidIDEOfficial/nb-javac-android/94f20d453838279d91f827395a58000c58d32f62/make/langtools/netbeans/nb-javac/test/com/sun/tools/javac/jvm/Test1.class -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/test/com/sun/tools/javac/jvm/Test2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AndroidIDEOfficial/nb-javac-android/94f20d453838279d91f827395a58000c58d32f62/make/langtools/netbeans/nb-javac/test/com/sun/tools/javac/jvm/Test2.class -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/test/com/sun/tools/javac/jvm/V48gen.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AndroidIDEOfficial/nb-javac-android/94f20d453838279d91f827395a58000c58d32f62/make/langtools/netbeans/nb-javac/test/com/sun/tools/javac/jvm/V48gen.class -------------------------------------------------------------------------------- /make/langtools/netbeans/nb-javac/test/global/ap1/Ann.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2003-2004 Sun Microsystems, Inc. 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. Sun designates this 8 | * particular file as subject to the "Classpath" exception as provided 9 | * by Sun 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 22 | * CA 95054 USA or visit www.sun.com if you need additional information or 23 | * have any questions. 24 | */ 25 | 26 | package global.ap1; 27 | 28 | /** 29 | * 30 | * @author lahvac 31 | */ 32 | public @interface Ann { 33 | public String fqnToGenerate(); 34 | public String content(); 35 | } 36 | -------------------------------------------------------------------------------- /make/langtools/tools/propertiesparser/gen/GPL-2-CPE-license: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999, 2020, 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 | -------------------------------------------------------------------------------- /setup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [ -d "$JDK_8" ]; then 4 | export JAVA_HOME=$JDK_8 5 | fi 6 | 7 | echo "Using JAVA_HOME: $JAVA_HOME" -------------------------------------------------------------------------------- /setup_base.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | export ant_dir=./make/langtools/netbeans/nb-javac 6 | 7 | # Build nb-javac-android 8 | JDK_8="/usr/lib/jvm/java-8-openjdk-amd64" 9 | 10 | if [[ ! -z "$CI" ]]; then 11 | JDK_8=$JAVA_8 12 | echo "langtools.jdk.home=${JAVA_HOME}" >> make/langtools/build.properties 13 | fi -------------------------------------------------------------------------------- /src/java.compiler/share/classes/com/itsaky/androidide/zipfs2/AndroidFsProvider.java: -------------------------------------------------------------------------------- 1 | package com.itsaky.androidide.zipfs2; 2 | 3 | import java.io.IOException; 4 | import java.net.URI; 5 | import java.nio.file.FileSystem; 6 | import java.nio.file.spi.FileSystemProvider; 7 | import java.util.HashMap; 8 | 9 | import javac.internal.jrtfs.JrtFileSystemProvider; 10 | 11 | public class AndroidFsProvider { 12 | 13 | // Can be overridden to provide custom implementation 14 | public static AndroidFsProvider INSTANCE = new AndroidFsProvider(); 15 | 16 | public FileSystemProvider zipFsProvider() { 17 | return new ZipFileSystemProvider(); 18 | } 19 | 20 | public FileSystem jrtFileSystem () { 21 | try { 22 | return new JrtFileSystemProvider().newFileSystem(URI.create("jrt:/"), new HashMap<>(0)); 23 | } catch (IOException e) { 24 | throw new RuntimeException ("Unable to create instance of JRTFileSystem", e); 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /src/java.compiler/share/classes/com/itsaky/androidide/zipfs2/Collections2.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license 3 | * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template 4 | */ 5 | package com.itsaky.androidide.zipfs2; 6 | 7 | import java.util.ArrayList; 8 | import java.util.Arrays; 9 | import java.util.HashSet; 10 | import java.util.List; 11 | import java.util.Set; 12 | 13 | /** 14 | * 15 | * @author itsaky 16 | */ 17 | public class Collections2 { 18 | 19 | public static List listOf(T... values) { 20 | final List result = new ArrayList<>(); 21 | if (values == null) { 22 | return result; 23 | } 24 | result.addAll(Arrays.asList(values)); 25 | return result; 26 | } 27 | 28 | public static Set setOf(T... values) { 29 | final Set result = new HashSet<>(); 30 | if (values == null) { 31 | return result; 32 | } 33 | result.addAll(Arrays.asList(values)); 34 | return result; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/com/itsaky/androidide/zipfs2/JarPackageProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license 3 | * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Interface.java to edit this template 4 | */ 5 | package com.itsaky.androidide.zipfs2; 6 | 7 | import java.nio.file.Path; 8 | import java.util.Map; 9 | 10 | /** 11 | * @author itsaky 12 | */ 13 | public interface JarPackageProvider { 14 | 15 | /** 16 | * Get the package map from the given archive path. 17 | * @return The cached package entries. Should return null or empty map to walk the archive file tree instead. 18 | * The keys must be openjdk.tools.javac.file.RelativePath.RelativeDirectory 19 | */ 20 | public Map getPackages(Path archivePath); 21 | } 22 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/com/itsaky/androidide/zipfs2/ZipFileAttributes.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009, 2018, 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.itsaky.androidide.zipfs2; 27 | 28 | import java.nio.file.attribute.BasicFileAttributes; 29 | 30 | /** 31 | * The attributes of a file stored in a zip file. 32 | * 33 | * @author Xueming Shen, Rajendra Gutupalli,Jaya Hangal 34 | */ 35 | public interface ZipFileAttributes extends BasicFileAttributes { 36 | public long compressedSize(); 37 | public long crc(); 38 | public int method(); 39 | public byte[] extra(); 40 | public byte[] comment(); 41 | public String toString(); 42 | } 43 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/annotation/processing/Completion.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2006, 2020, 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 jdkx.annotation.processing; 27 | 28 | /** 29 | * A suggested {@linkplain Processor#getCompletions completion} for an 30 | * annotation. A completion is text meant to be inserted into a 31 | * program as part of an annotation. 32 | * 33 | * @author Joseph D. Darcy 34 | * @author Scott Seligman 35 | * @author Peter von der Ahé 36 | * @since 1.6 37 | */ 38 | public interface Completion { 39 | 40 | /** 41 | * {@return the text of the suggested completion} 42 | */ 43 | String getValue(); 44 | 45 | /** 46 | * {@return an informative message about the completion} 47 | */ 48 | String getMessage(); 49 | } 50 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/element/Parameterizable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009, 2017, 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 jdkx.lang.model.element; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A mixin interface for an element that has type parameters. 32 | * 33 | * @author Joseph D. Darcy 34 | * @since 1.7 35 | */ 36 | public interface Parameterizable extends Element { 37 | /** 38 | * Returns the formal type parameters of an element in 39 | * declaration order. 40 | * 41 | * @return the formal type parameters, or an empty list 42 | * if there are none 43 | */ 44 | List getTypeParameters(); 45 | } 46 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/element/QualifiedNameable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009, 2020, 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 jdkx.lang.model.element; 27 | 28 | /** 29 | * A mixin interface for an element that has a qualified name. 30 | * 31 | * @author Joseph D. Darcy 32 | * @since 1.7 33 | */ 34 | public interface QualifiedNameable extends Element { 35 | /** 36 | * {@return the fully qualified name of an element} 37 | */ 38 | Name getQualifiedName(); 39 | } 40 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/type/ArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2020, 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 jdkx.lang.model.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 | * @author Joseph D. Darcy 35 | * @author Scott Seligman 36 | * @author Peter von der Ahé 37 | * @since 1.6 38 | */ 39 | public interface ArrayType extends ReferenceType { 40 | 41 | /** 42 | * {@return the component type of this array type} 43 | */ 44 | TypeMirror getComponentType(); 45 | } 46 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/type/ErrorType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 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 jdkx.lang.model.type; 27 | 28 | /** 29 | * Represents a class or interface type that cannot be properly modeled. 30 | * This may be the result of a processing error, 31 | * such as a missing class file or erroneous source code. 32 | * Most queries for 33 | * information derived from such a type (such as its members or its 34 | * supertype) will not, in general, return meaningful results. 35 | * 36 | * @author Joseph D. Darcy 37 | * @author Scott Seligman 38 | * @author Peter von der Ahé 39 | * @since 1.6 40 | */ 41 | public interface ErrorType extends DeclaredType { 42 | } 43 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/type/NullType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2020, 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 jdkx.lang.model.type; 27 | 28 | 29 | /** 30 | * Represents the null type. 31 | * This is the type of the expression {@code null}, 32 | * 33 | * @author Joseph D. Darcy 34 | * @author Scott Seligman 35 | * @author Peter von der Ahé 36 | * @jls 3.10.7 The Null Literal 37 | * @jls 4.1 The Kinds of Types and Values 38 | * @since 1.6 39 | */ 40 | 41 | public interface NullType extends ReferenceType { 42 | } 43 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/type/PrimitiveType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2020, 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 jdkx.lang.model.type; 27 | 28 | 29 | /** 30 | * Represents a primitive type. These include 31 | * {@code boolean}, {@code byte}, {@code short}, {@code int}, 32 | * {@code long}, {@code char}, {@code float}, and {@code double}. 33 | * 34 | * @author Joseph D. Darcy 35 | * @author Scott Seligman 36 | * @author Peter von der Ahé 37 | * @jls 4.2 Primitive Types and Values 38 | * @since 1.6 39 | */ 40 | public interface PrimitiveType extends TypeMirror { 41 | } 42 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/type/ReferenceType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2020, 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 jdkx.lang.model.type; 27 | 28 | 29 | /** 30 | * Represents a reference type. 31 | * These include class and interface types, array types, type variables, 32 | * and the null type. 33 | * 34 | * @author Joseph D. Darcy 35 | * @author Scott Seligman 36 | * @author Peter von der Ahé 37 | * @jls 4.3 Reference Types and Values 38 | * @since 1.6 39 | */ 40 | public interface ReferenceType extends TypeMirror { 41 | } 42 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/lang/model/type/UnionType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2010, 2020, 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 jdkx.lang.model.type; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * Represents a union type. 32 | * 33 | * Union types can appear as the type of a multi-catch exception 34 | * parameter. 35 | * 36 | * @jls 14.20 The try statement 37 | * @since 1.7 38 | */ 39 | public interface UnionType extends TypeMirror { 40 | 41 | /** 42 | * {@return the alternatives comprising this union type} 43 | */ 44 | List getAlternatives(); 45 | } 46 | -------------------------------------------------------------------------------- /src/java.compiler/share/classes/jdkx/tools/OptionChecker.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 jdkx.tools; 27 | 28 | /** 29 | * Interface for recognizing options. 30 | * 31 | * @author Peter von der Ahé 32 | * @since 1.6 33 | */ 34 | public interface OptionChecker { 35 | 36 | /** 37 | * Determines if the given option is supported and if so, the 38 | * number of arguments the option takes. 39 | * 40 | * @param option an option 41 | * @return the number of arguments the given option takes or -1 if 42 | * the option is not supported 43 | */ 44 | int isSupportedOption(String option); 45 | 46 | } 47 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/javac/internal/shellsupport/doc/resources/javadocformatter.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2016, 2020, 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 | CAP_TypeParameters=Type Parameters: 27 | CAP_Parameters=Parameters: 28 | CAP_Returns=Returns: 29 | CAP_Thrown_Exceptions=Thrown Exceptions: 30 | Inline_Returns=Returns {0}. 31 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/AuthorTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @author} block tag. 32 | * 33 | *
34 |  *    @author name-text
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface AuthorTree extends BlockTagTree { 40 | /** 41 | * Returns the name of the author. 42 | * @return the name 43 | */ 44 | List getName(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/BlockTagTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2014, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node used as the base class for the different types of 30 | * block tags. 31 | * 32 | * @since 1.8 33 | */ 34 | public interface BlockTagTree extends DocTree { 35 | /** 36 | * Returns the name of the tag. 37 | * @return the name of the tag 38 | */ 39 | String getTagName(); 40 | } 41 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/CommentTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * An embedded HTML comment. 30 | * 31 | *
32 |  *    <!-- text -->
33 |  * 
34 | * 35 | * @since 1.8 36 | */ 37 | public interface CommentTree extends DocTree { 38 | /** 39 | * Returns the text of the comment. 40 | * @return the comment text 41 | */ 42 | String getBody(); 43 | } 44 | 45 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/DeprecatedTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @deprecated} block tag. 32 | * 33 | *
34 |  *    @deprecated deprecated text
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface DeprecatedTree extends BlockTagTree { 40 | /** 41 | * Returns the description explaining why an item is deprecated. 42 | * @return the description 43 | */ 44 | List getBody(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/DocRootTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node for an {@code @docRoot} inline tag. 30 | * 31 | *
32 |  *    {@docRoot}
33 |  * 
34 | * 35 | * @since 1.8 36 | */ 37 | public interface DocRootTree extends InlineTagTree { } 38 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/DocTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2017, 2020, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node for a {@code doctype} declaration. 30 | * 31 | *
32 |  *    <!doctype text>
33 |  * 
34 | * 35 | * For HTML5 documents, the correct form is {@code }. 36 | * 37 | * @since 10 38 | */ 39 | public interface DocTypeTree extends DocTree { 40 | /** 41 | * Returns the text of the doctype declaration. 42 | * @return text 43 | */ 44 | String getText(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/EndElementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import jdkx.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for the end of an HTML element. 32 | * 33 | *
34 |  *    </ name >
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface EndElementTree extends DocTree { 40 | /** 41 | * Returns the name of this element. 42 | * @return the name 43 | */ 44 | Name getName(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/EntityTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import jdkx.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for an HTML entity. 32 | * 33 | *
34 |  *    &name;
35 |  *    &#digits;
36 |  *    &#Xhex-digits;
37 |  * 
38 | * 39 | * @since 1.8 40 | */ 41 | public interface EntityTree extends DocTree { 42 | /** 43 | * Returns the name or value of the entity. 44 | * @return the name or value of the entity 45 | */ 46 | Name getName(); 47 | } 48 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/ErroneousTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import jdkx.tools.Diagnostic; 29 | import jdkx.tools.JavaFileObject; 30 | 31 | /** 32 | * A tree node to stand in for malformed text. 33 | * 34 | * @since 1.8 35 | */ 36 | public interface ErroneousTree extends TextTree { 37 | /** 38 | * Returns a diagnostic object giving details about 39 | * the reason the body text is in error. 40 | * 41 | * @return a diagnostic 42 | */ 43 | Diagnostic getDiagnostic(); 44 | } 45 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/HiddenTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2016, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @hidden} block tag. 32 | * 33 | *
34 |  *    @hidden
35 |  * 
36 | * 37 | * @since 9 38 | */ 39 | public interface HiddenTree extends BlockTagTree { 40 | /** 41 | * Returns the description explaining why an item is hidden. 42 | * @return the description 43 | */ 44 | List getBody(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/IdentifierTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import jdkx.lang.model.element.Name; 29 | 30 | /** 31 | * An identifier in a documentation comment. 32 | * 33 | *
34 |  *    name
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface IdentifierTree extends DocTree { 40 | /** 41 | * Returns the name of the identifier. 42 | * @return the name 43 | */ 44 | Name getName(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/IndexTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @index} inline tag. 32 | * 33 | *
34 |  *    {@index keyword optional description}
35 |  * 
36 | * 37 | * @since 9 38 | */ 39 | public interface IndexTree extends InlineTagTree { 40 | /** 41 | * Returns the specified search term. 42 | * @return the search term 43 | */ 44 | DocTree getSearchTerm(); 45 | 46 | /** 47 | * Returns the description, if any. 48 | * @return the description 49 | */ 50 | List getDescription(); 51 | } 52 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/InheritDocTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node for an {@code @inheritDoc} inline tag. 30 | * 31 | *
32 |  *    {@inheritDoc}
33 |  * 
34 | * 35 | * @since 1.8 36 | */ 37 | public interface InheritDocTree extends InlineTagTree { } 38 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/InlineTagTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2014, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node used as the base class for the different types of 30 | * inline tags. 31 | * 32 | * @since 1.8 33 | */ 34 | public interface InlineTagTree extends DocTree { 35 | /** 36 | * Returns the name of the tag. 37 | * @return the name of the tag 38 | */ 39 | String getTagName(); 40 | } 41 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/LinkTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @link} or {@code @linkplain} inline tag. 32 | * 33 | *
34 |  *    {@link reference label}
35 |  *    {@linkplain reference label}
36 |  * 
37 | * 38 | * @since 1.8 39 | */ 40 | public interface LinkTree extends InlineTagTree { 41 | /** 42 | * Returns the reference of the link. 43 | * @return the reference 44 | */ 45 | ReferenceTree getReference(); 46 | 47 | /** 48 | * Returns the label, if any, of the link. 49 | * @return the label 50 | */ 51 | List getLabel(); 52 | } 53 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/LiteralTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node for an {@code @literal} or {@code @code} inline tag. 30 | * 31 | *
32 |  *    {@literal text}
33 |  *    {@code text}
34 |  * 
35 | * 36 | * @since 1.8 37 | */ 38 | public interface LiteralTree extends InlineTagTree { 39 | /** 40 | * Returns the body of the {@code @literal} or {@code @code} tag. 41 | * @return the body of the tag 42 | */ 43 | TextTree getBody(); 44 | } 45 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/ProvidesTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2016, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a {@code @provides} block tag. 32 | * 33 | *
34 |  *    @provides service-type description
35 |  * 
36 | * 37 | * @since 9 38 | */ 39 | public interface ProvidesTree extends BlockTagTree { 40 | /** 41 | * Returns the name of the service type being documented. 42 | * @return the name of the service type 43 | */ 44 | ReferenceTree getServiceType(); 45 | 46 | /** 47 | * Returns a description of the service type being provided by the module. 48 | * @return the description 49 | */ 50 | List getDescription(); 51 | } 52 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/ReferenceTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node for a reference to a Java language element. 30 | * 31 | *
32 |  *    package.class#field
33 |  *    package.class#method(arg-types)
34 |  * 
35 | * 36 | * @since 1.8 37 | */ 38 | public interface ReferenceTree extends DocTree { 39 | /** 40 | * Returns the signature of the Java language element being referenced, 41 | * as found in {@code @see} and similar nodes. 42 | * @return the signature 43 | */ 44 | String getSignature(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/SeeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @see} block tag. 32 | * 33 | *
34 |  *    @see "string"
35 |  *    @see <a href="URL#value"> label </a>
36 |  *    @see reference
37 |  * 
38 | * 39 | * @since 1.8 40 | */ 41 | public interface SeeTree extends BlockTagTree { 42 | /** 43 | * Returns the reference. 44 | * @return the reference 45 | */ 46 | List getReference(); 47 | } 48 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/SerialDataTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @serialData} block tag. 32 | * 33 | *
34 |  *    @serialData data-description
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface SerialDataTree extends BlockTagTree { 40 | /** 41 | * Returns the description of the serial data. 42 | * @return the description 43 | */ 44 | List getDescription(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/SerialTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @serial} block tag. 32 | * 33 | *
34 |  *    @serial field-description | include | exclude
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface SerialTree extends BlockTagTree { 40 | /** 41 | * Returns the description of the field, or the word 42 | * "include" or "exclude". 43 | * @return the description of the field 44 | */ 45 | List getDescription(); 46 | } 47 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/SinceTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @since} block tag. 32 | * 33 | *
34 |  *    @since since-text
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface SinceTree extends BlockTagTree { 40 | /** 41 | * Returns the text explaining the availability of the item being documented. 42 | * @return the text 43 | */ 44 | List getBody(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/SummaryTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2017, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @summary} inline tag. 32 | * 33 | *
34 |  *    {@summary text}
35 |  * 
36 | * 37 | * @since 10 38 | */ 39 | public interface SummaryTree extends InlineTagTree { 40 | /** 41 | * Returns the summary or the first line of a comment. 42 | * @return the summary text 43 | */ 44 | List getSummary(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/SystemPropertyTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2018, 2020, 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 openjdk.source.doctree; 27 | 28 | import jdkx.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for an {@code @systemProperty} inline tag. 32 | * 33 | *
34 |  *    {@systemProperty property-name}
35 |  * 
36 | * 37 | * @since 12 38 | */ 39 | public interface SystemPropertyTree extends InlineTagTree { 40 | /** 41 | * Returns the specified system property name. 42 | * @return the system property name 43 | */ 44 | Name getPropertyName(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/TextTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2014, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node for plain text. 30 | * 31 | * @since 1.8 32 | */ 33 | public interface TextTree extends DocTree { 34 | /** 35 | * Returns the text. 36 | * @return the text 37 | */ 38 | String getBody(); 39 | } 40 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/UnknownBlockTagTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an unrecognized block tag. 32 | * 33 | *
34 |  *    @name content
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface UnknownBlockTagTree extends BlockTagTree { 40 | /** 41 | * Returns the content of an unrecognized block tag. 42 | * @return the content 43 | */ 44 | List getContent(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/UnknownInlineTagTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an unrecognized inline tag. 32 | * 33 | *
34 |  *    {@name content}
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface UnknownInlineTagTree extends InlineTagTree { 40 | /** 41 | * Returns the content of an unrecognized inline tag. 42 | * @return the content 43 | */ 44 | List getContent(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/UsesTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2016, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @uses} block tag. 32 | * 33 | *
34 |  *    @uses service-type description
35 |  * 
36 | * 37 | * @since 9 38 | */ 39 | public interface UsesTree extends BlockTagTree { 40 | /** 41 | * Returns the name of the service type being documented. 42 | * @return the name of the service type 43 | */ 44 | ReferenceTree getServiceType(); 45 | 46 | /** 47 | * Returns a description of the use of service type within the module. 48 | * @return the description 49 | */ 50 | List getDescription(); 51 | } 52 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/ValueTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | /** 29 | * A tree node for an {@code @value} inline tag. 30 | * 31 | *
32 |  *    {@value reference}
33 |  * 
34 | * 35 | * @since 1.8 36 | */ 37 | public interface ValueTree extends InlineTagTree { 38 | /** 39 | * Returns the reference to the value. 40 | * @return the reference 41 | */ 42 | ReferenceTree getReference(); 43 | } 44 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/VersionTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2020, 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 openjdk.source.doctree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an {@code @version} block tag. 32 | * 33 | *
34 |  *    @version version-text
35 |  * 
36 | * 37 | * @since 1.8 38 | */ 39 | public interface VersionTree extends BlockTagTree { 40 | /** 41 | * Returns the body of the tag. 42 | * @return the body 43 | */ 44 | List getBody(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/doctree/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2018, 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 documentation comments as abstract syntax 28 | * trees (AST). 29 | * 30 | * @author Jonathan Gibbons 31 | * @since 1.8 32 | * 33 | * @see 34 | * Documentation Comment Specification for the Standard Doclet 35 | */ 36 | package openjdk.source.doctree; 37 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ArrayTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node for an array type. 30 | * 31 | * For example: 32 | *
33 |  *   type []
34 |  * 
35 | * 36 | * @jls 10.1 Array Types 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ArrayTypeTree extends Tree { 43 | /** 44 | * Returns the element type of this array type. 45 | * @return the element type 46 | */ 47 | Tree getType(); 48 | } 49 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/BindingPatternTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2017, 2019, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A binding pattern tree 30 | * 31 | * @since 16 32 | */ 33 | public interface BindingPatternTree extends PatternTree { 34 | 35 | /** 36 | * Returns the binding variable. 37 | * @return the binding variable 38 | */ 39 | VariableTree getVariable(); 40 | 41 | } 42 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/BreakTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2019, 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 openjdk.source.tree; 27 | 28 | import jdkx.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for a {@code break} statement. 32 | * 33 | * For example: 34 | *
35 |  *   break;
36 |  *
37 |  *   break label ;
38 |  * 
39 | * 40 | * @jls 14.15 The break Statement 41 | * 42 | * @author Peter von der Ahé 43 | * @author Jonathan Gibbons 44 | * @since 1.6 45 | */ 46 | public interface BreakTree extends StatementTree { 47 | /** 48 | * Returns the label for this {@code break} statement. 49 | * @return the label 50 | */ 51 | Name getLabel(); 52 | 53 | } 54 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/CaseLabelTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2021, 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 openjdk.source.tree; 27 | 28 | import javac.internal.PreviewFeature; 29 | 30 | /** 31 | * A marker interface for {@code Tree}s that may be used as {@link CaseTree} labels. 32 | * 33 | * @since 17 34 | */ 35 | @PreviewFeature(feature=PreviewFeature.Feature.SWITCH_PATTERN_MATCHING, reflective=true) 36 | public interface CaseLabelTree extends Tree {} 37 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ContinueTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | import jdkx.lang.model.element.Name; 29 | 30 | /** 31 | * A tree node for a {@code continue} statement. 32 | * 33 | * For example: 34 | *
35 |  *   continue;
36 |  *   continue label ;
37 |  * 
38 | * 39 | * @jls 14.16 The continue Statement 40 | * 41 | * @author Peter von der Ahé 42 | * @author Jonathan Gibbons 43 | * @since 1.6 44 | */ 45 | public interface ContinueTree extends StatementTree { 46 | /** 47 | * Returns the label for this {@code continue} statement. 48 | * @return the label 49 | */ 50 | Name getLabel(); 51 | } 52 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/DefaultCaseLabelTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2021, 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 | package openjdk.source.tree; 26 | 27 | import javac.internal.PreviewFeature; 28 | 29 | /** 30 | * A case label that marks {@code default} in {@code case null, default}. 31 | * 32 | * @since 17 33 | */ 34 | @PreviewFeature(feature=PreviewFeature.Feature.SWITCH_PATTERN_MATCHING, reflective=true) 35 | public interface DefaultCaseLabelTree extends CaseLabelTree {} 36 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/DirectiveTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2011, 2014, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A super-type for all the directives in a ModuleTree. 30 | */ 31 | public interface DirectiveTree extends Tree { } 32 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/EmptyStatementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2013, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node for an empty (skip) statement. 30 | * 31 | * For example: 32 | *
33 |  *    ;
34 |  * 
35 | * 36 | * @jls 14.6 The Empty Statement 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface EmptyStatementTree extends StatementTree {} 43 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ErroneousTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.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 | /** 39 | * Returns any trees that were saved in this node. 40 | * @return the trees 41 | */ 42 | List getErrorTrees(); 43 | } 44 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ExpressionStatementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node for an expression statement. 30 | * 31 | * For example: 32 | *
33 |  *   expression ;
34 |  * 
35 | * 36 | * @jls 14.8 Expression Statements 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ExpressionStatementTree extends StatementTree { 43 | /** 44 | * Returns the expression constituting this statement. 45 | * @return the expression 46 | */ 47 | ExpressionTree getExpression(); 48 | } 49 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ExpressionTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2013, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node used as the base class for the different types of 30 | * expressions. 31 | * 32 | * @jls 15 Expressions 33 | * 34 | * @author Peter von der Ahé 35 | * @author Jonathan Gibbons 36 | * @since 1.6 37 | */ 38 | public interface ExpressionTree extends Tree, CaseLabelTree {} 39 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/GuardedPatternTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2017, 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 openjdk.source.tree; 27 | 28 | import javac.internal.PreviewFeature; 29 | 30 | /** 31 | * A guard pattern tree. 32 | * 33 | * @since 17 34 | */ 35 | @PreviewFeature(feature=PreviewFeature.Feature.SWITCH_PATTERN_MATCHING, reflective=true) 36 | public interface GuardedPatternTree extends PatternTree { 37 | 38 | /** 39 | * The guarded pattern expression. 40 | * @return the guarded pattern 41 | */ 42 | public PatternTree getPattern(); 43 | 44 | /** 45 | * The guard expression. 46 | * @return the guard expression 47 | */ 48 | public ExpressionTree getExpression(); 49 | 50 | } 51 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/IdentifierTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | import jdkx.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 6.5.6.1 Simple Expression Names 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface IdentifierTree extends ExpressionTree { 45 | /** 46 | * Returns the name of the identifier. 47 | * @return the name 48 | */ 49 | Name getName(); 50 | } 51 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/IntersectionTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2012, 2014, 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 openjdk.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for an intersection type in a cast expression. 32 | * 33 | * @author Maurizio Cimadamore 34 | * 35 | * @since 1.8 36 | */ 37 | public interface IntersectionTypeTree extends Tree { 38 | /** 39 | * Returns the bounds of the type. 40 | * @return the bounds 41 | */ 42 | List getBounds(); 43 | } 44 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/LiteralTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.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 15.28 Constant Expressions 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface LiteralTree extends ExpressionTree { 44 | /** 45 | * Returns the value of the literal expression. 46 | * The value will be a boxed primitive value, a String, or {@code null}. 47 | * @return the value 48 | */ 49 | Object getValue(); 50 | } 51 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/PackageTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, 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 openjdk.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * Represents the package declaration. 32 | * 33 | * @jls 7.3 Compilation Units 34 | * @jls 7.4 Package Declarations 35 | * 36 | * @author Paul Govereau 37 | * @since 9 38 | */ 39 | public interface PackageTree extends Tree { 40 | /** 41 | * Returns the annotations associated with this package declaration. 42 | * @return the annotations 43 | */ 44 | List getAnnotations(); 45 | 46 | /** 47 | * Returns the name of the package being declared. 48 | * @return the name 49 | */ 50 | ExpressionTree getPackageName(); 51 | } 52 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ParenthesizedPatternTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | import javac.internal.PreviewFeature; 29 | 30 | /** 31 | * A tree node for a parenthesized pattern. 32 | * 33 | * For example: 34 | *
35 |  *   ( pattern )
36 |  * 
37 | * 38 | * @jls 14.30.1 Kinds of Patterns 39 | * 40 | * @since 17 41 | */ 42 | @PreviewFeature(feature=PreviewFeature.Feature.SWITCH_PATTERN_MATCHING, reflective=true) 43 | public interface ParenthesizedPatternTree extends PatternTree { 44 | /** 45 | * Returns the pattern within the parentheses. 46 | * @return the pattern 47 | */ 48 | PatternTree getPattern(); 49 | } 50 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ParenthesizedTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.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 15.8.5 Parenthesized Expressions 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface ParenthesizedTree extends ExpressionTree { 44 | /** 45 | * Returns the expression within the parentheses. 46 | * @return the expression 47 | */ 48 | ExpressionTree getExpression(); 49 | } 50 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/PatternTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2017, 2019, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node used as the base class for the different kinds of 30 | * patterns. 31 | * 32 | * @since 16 33 | */ 34 | public interface PatternTree extends Tree, CaseLabelTree {} 35 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/PrimitiveTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | import jdkx.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 4.2 Primitive Types and Values 39 | * 40 | * @author Peter von der Ahé 41 | * @author Jonathan Gibbons 42 | * @since 1.6 43 | */ 44 | public interface PrimitiveTypeTree extends Tree { 45 | /** 46 | * Returns the kind of this primitive type. 47 | * @return the kind of the type 48 | */ 49 | TypeKind getPrimitiveTypeKind(); 50 | } 51 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ReturnTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node for a {@code return} statement. 30 | * 31 | * For example: 32 | *
33 |  *   return;
34 |  *   return expression;
35 |  * 
36 | * 37 | * @jls 14.17 The return Statement 38 | * 39 | * @author Peter von der Ahé 40 | * @author Jonathan Gibbons 41 | * @since 1.6 42 | */ 43 | public interface ReturnTree extends StatementTree { 44 | /** 45 | * Returns the expression to be returned. 46 | * @return the expression 47 | */ 48 | ExpressionTree getExpression(); 49 | } 50 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/StatementTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2013, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node used as the base class for the different kinds of 30 | * statements. 31 | * 32 | * @jls 14 Blocks and Statements 33 | * 34 | * @author Peter von der Ahé 35 | * @author Jonathan Gibbons 36 | * @since 1.6 37 | */ 38 | public interface StatementTree extends Tree {} 39 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/ThrowTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node for a {@code throw} statement. 30 | * 31 | * For example: 32 | *
33 |  *   throw expression;
34 |  * 
35 | * 36 | * @jls 14.18 The throw Statement 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface ThrowTree extends StatementTree { 43 | /** 44 | * Returns the expression to be thrown. 45 | * @return the expression 46 | */ 47 | ExpressionTree getExpression(); 48 | } 49 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/TypeCastTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.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 15.16 Cast Expressions 37 | * 38 | * @author Peter von der Ahé 39 | * @author Jonathan Gibbons 40 | * @since 1.6 41 | */ 42 | public interface TypeCastTree extends ExpressionTree { 43 | /** 44 | * Returns the target type of the cast. 45 | * @return the cast 46 | */ 47 | Tree getType(); 48 | 49 | /** 50 | * Returns the expression being cast. 51 | * @return the expression 52 | */ 53 | ExpressionTree getExpression(); 54 | } 55 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/UnionTypeTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2010, 2014, 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 openjdk.source.tree; 27 | 28 | import java.util.List; 29 | 30 | /** 31 | * A tree node for a union type expression in a multicatch 32 | * variable declaration. 33 | * 34 | * @author Maurizio Cimadamore 35 | * 36 | * @since 1.7 37 | */ 38 | public interface UnionTypeTree extends Tree { 39 | /** 40 | * Returns the alternative type expressions. 41 | * @return the alternative type expressions 42 | */ 43 | List getTypeAlternatives(); 44 | } 45 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/UsesTree.java: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved. 4 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 5 | * 6 | * This code is free software; you can redistribute it and/or modify it 7 | * under the terms of the GNU General Public License version 2 only, as 8 | * published by the Free Software Foundation. Oracle designates this 9 | * particular file as subject to the "Classpath" exception as provided 10 | * by Oracle in the LICENSE file that accompanied this code. 11 | * 12 | * This code is distributed in the hope that it will be useful, but WITHOUT 13 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 14 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15 | * version 2 for more details (a copy is included in the LICENSE file that 16 | * accompanied this code). 17 | * 18 | * You should have received a copy of the GNU General Public License version 19 | * 2 along with this work; if not, write to the Free Software Foundation, 20 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 21 | * 22 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 23 | * or visit www.oracle.com if you need additional information or have any 24 | * questions. 25 | */ 26 | 27 | package openjdk.source.tree; 28 | 29 | /** 30 | * A tree node for a 'uses' directive in a module declaration. 31 | * 32 | * For example: 33 | *
34 |  *    uses service-name;
35 |  * 
36 | * 37 | * @since 9 38 | */ 39 | public interface UsesTree extends DirectiveTree { 40 | /** 41 | * Returns the name of the service type. 42 | * @return the name of the service type 43 | */ 44 | ExpressionTree getServiceName(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/WildcardTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2014, 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 openjdk.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 4.5.1 Type Arguments of Parameterized Types 42 | * 43 | * @author Peter von der Ahé 44 | * @author Jonathan Gibbons 45 | * @since 1.6 46 | */ 47 | public interface WildcardTree extends Tree { 48 | /** 49 | * Returns the bound of the wildcard. 50 | * @return the bound 51 | */ 52 | Tree getBound(); 53 | } 54 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/YieldTree.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019, 2020, 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 openjdk.source.tree; 27 | 28 | /** 29 | * A tree node for a {@code yield} statement. 30 | * 31 | * For example: 32 | *
33 |  *   yield expression ;
34 |  * 
35 | * 36 | * @jls 14.21 The yield Statement 37 | * 38 | * @since 13 39 | */ 40 | public interface YieldTree extends StatementTree { 41 | 42 | /** 43 | * Returns the expression for this {@code yield} statement. 44 | * 45 | * @return the expression 46 | */ 47 | ExpressionTree getValue(); 48 | } 49 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/tree/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2013, 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 openjdk.source.tree; 35 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/source/util/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2013, 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 openjdk.source.util; 34 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/doclint/HtmlVersion.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015, 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 openjdk.tools.doclint; 27 | 28 | /** 29 | * Enum representing HTML version of the documentation comment. 30 | * 31 | * @author Bhavesh Patel 32 | */ 33 | public enum HtmlVersion { 34 | 35 | HTML4, 36 | HTML5, 37 | ALL; 38 | 39 | public static HtmlVersion getHtmlVersion(String argsVersion) { 40 | switch (argsVersion) { 41 | case "html4": 42 | return HtmlVersion.HTML4; 43 | case "html5": 44 | return HtmlVersion.HTML5; 45 | default: 46 | return null; 47 | } 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/javac/api/ClassNamesForFileOraculum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999, 2020, 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 openjdk.tools.javac.api; 27 | 28 | import jdkx.tools.JavaFileObject; 29 | 30 | /** 31 | *

This is NOT part of any API supported by Sun Microsystems. 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 Jan Lahoda 37 | */ 38 | public interface ClassNamesForFileOraculum { 39 | 40 | public String[] divineClassName(JavaFileObject jfo); 41 | 42 | public JavaFileObject[] divineSources(String fqn); 43 | } 44 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/javac/api/DuplicateClassChecker.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999, 2020, 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 | package openjdk.tools.javac.api; 26 | 27 | import jdkx.lang.model.element.Name; 28 | import jdkx.tools.JavaFileObject; 29 | 30 | /** 31 | * 32 | * @author Dusan Balek 33 | */ 34 | public interface DuplicateClassChecker { 35 | 36 | boolean check(Name name, JavaFileObject jfo); 37 | } 38 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/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 openjdk.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 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/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 openjdk.tools.javac.comp; 27 | 28 | import openjdk.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 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/javac/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015, 2018, 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 | * This package provides a legacy entry point for the javac tool. 28 | * See the {@code jdk.compiler} 29 | * module for details on replacement APIs. 30 | */ 31 | package openjdk.tools.javac; 32 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/javac/platform/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015, 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 | * An internal API for plugging in --release implementations. 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 | package openjdk.tools.javac.platform; 35 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/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 openjdk.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 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/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 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/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 openjdk.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 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/javac/util/ClientCodeException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2005, 2019, 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 openjdk.tools.javac.util; 27 | 28 | /** 29 | * An exception used for propagating 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 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/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 openjdk.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 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/javac/util/MemoryLowAbort.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999, 2020, 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 openjdk.tools.javac.util; 27 | 28 | /** 29 | * 30 | * @author Dusan Balek 31 | */ 32 | public final class MemoryLowAbort extends Abort { 33 | 34 | MemoryLowAbort() { 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/javac/util/PlatformUtils.java: -------------------------------------------------------------------------------- 1 | package openjdk.tools.javac.util; 2 | 3 | public class PlatformUtils { 4 | public static boolean isAndroid () { 5 | try { 6 | Class.forName("android.content.Context"); 7 | return true; 8 | } catch (ClassNotFoundException eThrowable) { 9 | return false; 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/sjavac/ProblemException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2012, 2014, 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 openjdk.tools.sjavac; 27 | 28 | /** 29 | * Used to signal serious problems when running sjavac. 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 ProblemException extends Exception { 37 | static final long serialVersionUID = -3387516993124229949L; 38 | public ProblemException(String s) { 39 | super(s); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/sjavac/client/PortFileInaccessibleException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015, 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 openjdk.tools.sjavac.client; 27 | 28 | import java.io.IOException; 29 | 30 | public class PortFileInaccessibleException extends IOException { 31 | 32 | private static final long serialVersionUID = -4755261881545398973L; 33 | 34 | public PortFileInaccessibleException(Throwable cause) { 35 | super(cause); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/sjavac/server/Sjavac.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, 2016, 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 openjdk.tools.sjavac.server; 27 | 28 | import openjdk.tools.javac.main.Main.Result; 29 | 30 | import java.io.Writer; 31 | 32 | 33 | /** 34 | * Interface of the SjavacImpl, the sjavac client and all wrappers such as 35 | * PooledSjavac etc. 36 | * 37 | *

This is NOT part of any supported API. 38 | * If you write code that depends on this, you do so at your own risk. 39 | * This code and its internal interfaces are subject to change or 40 | * deletion without notice. 41 | */ 42 | public interface Sjavac { 43 | Result compile(String[] args); 44 | void shutdown(); 45 | } 46 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/openjdk/tools/sjavac/server/Terminable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, 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 openjdk.tools.sjavac.server; 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 interface Terminable { 35 | void shutdown(String quitMsg); 36 | } 37 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/sun/tools/serialver/resources/serialver.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2010, 2019, 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 | NotSerializable=\ 27 | Class {0} is not Serializable. 28 | ClassNotFound=\ 29 | Class {0} not found. 30 | error.parsing.classpath=\ 31 | Error parsing classpath {0}. 32 | error.missing.classpath=\ 33 | Missing argument for -classpath option 34 | invalid.flag=\ 35 | Invalid flag {0}. 36 | usage=\ 37 | use: serialver [-classpath classpath] [classname...] 38 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/sun/tools/serialver/resources/serialver_ja.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2010, 2019, 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 | NotSerializable=\u30AF\u30E9\u30B9{0}\u306F\u76F4\u5217\u5316\u3067\u304D\u307E\u305B\u3093\u3002 27 | ClassNotFound=\u30AF\u30E9\u30B9{0}\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002 28 | error.parsing.classpath=\u30AF\u30E9\u30B9\u30D1\u30B9{0}\u306E\u89E3\u6790\u30A8\u30E9\u30FC\u3067\u3059\u3002 29 | error.missing.classpath=-classpath\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093 30 | invalid.flag=\u7121\u52B9\u306A\u30D5\u30E9\u30B0{0}\u3002 31 | usage=\u4F7F\u7528\u65B9\u6CD5: serialver [-classpath classpath] [classname...] 32 | -------------------------------------------------------------------------------- /src/jdk.compiler/share/classes/sun/tools/serialver/resources/serialver_zh_CN.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2010, 2019, 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 | NotSerializable=\u7C7B{0}\u65E0\u6CD5\u5E8F\u5217\u5316\u3002 27 | ClassNotFound=\u627E\u4E0D\u5230\u7C7B{0}\u3002 28 | error.parsing.classpath=\u5BF9\u7C7B\u8DEF\u5F84 {0} \u8FDB\u884C\u8BED\u6CD5\u5206\u6790\u65F6\u51FA\u9519\u3002 29 | error.missing.classpath=\u7F3A\u5C11 -classpath \u9009\u9879\u7684\u53C2\u6570 30 | invalid.flag=\u65E0\u6548\u6807\u8BB0{0}\u3002 31 | usage=\u7528\u6CD5: serialver [-classpath classpath] [classname...] 32 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/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 openjdk.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 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/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 | package openjdk.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 ConstantPoolException extends Exception { 35 | private static final long serialVersionUID = -2324397349644754565L; 36 | ConstantPoolException(int index) { 37 | this.index = index; 38 | } 39 | 40 | public final int index; 41 | } 42 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/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 | package openjdk.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 DescriptorException extends Exception { 35 | private static final long serialVersionUID = 2411890273788901032L; 36 | } 37 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/tools/classfile/FatalError.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2020, 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 openjdk.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 FatalError extends Error { 35 | private static final long serialVersionUID = 8114054446416187030L; 36 | 37 | FatalError(String message) { 38 | super(message); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/tools/classfile/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2007, 2013, 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 | A minimalist library to read and write class files into objects closely 28 | based on the corresponding definitions in 29 | The Java Virtual Machine Specification (JVMS). 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 | package openjdk.tools.classfile; 37 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/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 openjdk.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 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/tools/javap/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2007, 2013, 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 to dump class files in text format. 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 | package openjdk.tools.javap; 35 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/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 | -------------------------------------------------------------------------------- /src/jdk.jdeps/share/classes/openjdk/tools/jdeps/resources/version.properties-template: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2012, 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 | -------------------------------------------------------------------------------- /test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | source $(dirname $0)/setup_base.sh 6 | source $(dirname $0)/setup.sh 7 | 8 | ant -f $ant_dir -Dnb.internal.action.name=test -Dignore.failing.tests=true test --------------------------------------------------------------------------------