Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 17 java.compiler.jmod - Compiler Module
JDK 17 java.compiler.jmod is the JMOD file for JDK 17 Compiler module.
JDK 17 Compiler module compiled class files are stored in \fyicenter\jdk-17.0.5\jmods\java.compiler.jmod.
JDK 17 Compiler module compiled class files are also linked and stored in the \fyicenter\jdk-17.0.5\lib\modules JImage file.
JDK 17 Compiler module source code files are stored in \fyicenter\jdk-17.0.5\lib\src.zip\java.compiler.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ javax/annotation/processing/AbstractProcessor.java
/* * Copyright (c) 2005, 2020, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package javax.annotation.processing; import java.util.List; import java.util.Set; import java.util.HashSet; import java.util.Collections; import java.util.Objects; import javax.lang.model.element.*; import javax.lang.model.SourceVersion; import javax.tools.Diagnostic; /** * An abstract annotation processor designed to be a convenient * superclass for most concrete annotation processors. This class * examines annotation values to compute the {@linkplain * #getSupportedOptions options}, {@linkplain * #getSupportedAnnotationTypes annotation interfaces}, and * {@linkplain #getSupportedSourceVersion source version} supported by * its subtypes. * * <p>The getter methods may {@linkplain Messager#printMessage issue * warnings} about noteworthy conditions using the facilities available * after the processor has been {@linkplain #isInitialized * initialized}. * * <p>Subclasses are free to override the implementation and * specification of any of the methods in this class as long as the * general {@link javax.annotation.processing.Processor Processor} * contract for that method is obeyed. * * @author Joseph D. Darcy * @author Scott Seligman * @author Peter von der Ahé * @since 1.6 */ public abstract class AbstractProcessor implements Processor { /** * Processing environment providing by the tool framework. */ protected ProcessingEnvironment processingEnv; private boolean initialized = false; /** * Constructor for subclasses to call. */ protected AbstractProcessor() {} /** * If the processor class is annotated with {@link * SupportedOptions}, return an unmodifiable set with the same set * of strings as the annotation. If the class is not so * annotated, an empty set is returned. * * @return the options recognized by this processor, or an empty * set if none */ public Set<String> getSupportedOptions() { SupportedOptions so = this.getClass().getAnnotation(SupportedOptions.class); return (so == null) ? Set.of() : arrayToSet(so.value(), false, "option value", "@SupportedOptions"); } /** * If the processor class is annotated with {@link * SupportedAnnotationTypes}, return an unmodifiable set with the * same set of strings as the annotation. If the class is not so * annotated, an empty set is returned. * * If the {@linkplain ProcessingEnvironment#getSourceVersion source * version} does not support modules, in other words if it is less * than or equal to {@link SourceVersion#RELEASE_8 RELEASE_8}, * then any leading {@linkplain Processor#getSupportedAnnotationTypes * module prefixes} are stripped from the names. * * @return the names of the annotation interfaces supported by * this processor, or an empty set if none */ public Set<String> getSupportedAnnotationTypes() { SupportedAnnotationTypes sat = this.getClass().getAnnotation(SupportedAnnotationTypes.class); boolean initialized = isInitialized(); if (sat == null) { if (initialized) processingEnv.getMessager().printMessage(Diagnostic.Kind.WARNING, "No SupportedAnnotationTypes annotation " + "found on " + this.getClass().getName() + ", returning an empty set."); return Set.of(); } else { boolean stripModulePrefixes = initialized && processingEnv.getSourceVersion().compareTo(SourceVersion.RELEASE_8) <= 0; return arrayToSet(sat.value(), stripModulePrefixes, "annotation type", "@SupportedAnnotationTypes"); } } /** * If the processor class is annotated with {@link * SupportedSourceVersion}, return the source version in the * annotation. If the class is not so annotated, {@link * SourceVersion#RELEASE_6} is returned. * * @return the latest source version supported by this processor */ public SourceVersion getSupportedSourceVersion() { SupportedSourceVersion ssv = this.getClass().getAnnotation(SupportedSourceVersion.class); SourceVersion sv = null; if (ssv == null) { sv = SourceVersion.RELEASE_6; if (isInitialized()) processingEnv.getMessager().printMessage(Diagnostic.Kind.WARNING, "No SupportedSourceVersion annotation " + "found on " + this.getClass().getName() + ", returning " + sv + "."); } else sv = ssv.value(); return sv; } /** * Initializes the processor with the processing environment by * setting the {@code processingEnv} field to the value of the * {@code processingEnv} argument. An {@code * IllegalStateException} will be thrown if this method is called * more than once on the same object. * * @param processingEnv environment to access facilities the tool framework * provides to the processor * @throws IllegalStateException if this method is called more than once. */ public synchronized void init(ProcessingEnvironment processingEnv) { if (initialized) throw new IllegalStateException("Cannot call init more than once."); Objects.requireNonNull(processingEnv, "Tool provided null ProcessingEnvironment"); this.processingEnv = processingEnv; initialized = true; } /** * {@inheritDoc} */ public abstract boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv); /** * {@return an empty iterable of completions} * * @param element {@inheritDoc} * @param annotation {@inheritDoc} * @param member {@inheritDoc} * @param userText {@inheritDoc} */ public Iterable<? extends Completion> getCompletions(Element element, AnnotationMirror annotation, ExecutableElement member, String userText) { return List.of(); } /** * {@return {@code true} if this object has been {@linkplain #init * initialized}, {@code false} otherwise} */ protected synchronized boolean isInitialized() { return initialized; } private Set<String> arrayToSet(String[] array, boolean stripModulePrefixes, String contentType, String annotationName) { assert array != null; Set<String> set = new HashSet<>(); for (String s : array) { boolean stripped = false; if (stripModulePrefixes) { int index = s.indexOf('/'); if (index != -1) { s = s.substring(index + 1); stripped = true; } } boolean added = set.add(s); // Don't issue a duplicate warning when the module name is // stripped off to avoid spurious warnings in a case like // "foo/a.B", "bar/a.B". if (!added && !stripped && isInitialized() ) { processingEnv.getMessager().printMessage(Diagnostic.Kind.WARNING, "Duplicate " + contentType + " ``" + s + "'' for processor " + this.getClass().getName() + " in its " + annotationName + "annotation."); } } return Collections.unmodifiableSet(set); } }
⏎ javax/annotation/processing/AbstractProcessor.java
Or download all of them as a single archive file:
File name: java.compiler-17.0.5-src.zip File size: 192681 bytes Release date: 2022-09-13 Download
⇒ JDK 17 java.datatransfer.jmod - Data Transfer Module
2023-09-16, 6263👍, 0💬
Popular Posts:
JRE 8 rt.jar is the JAR file for JRE 8 RT (Runtime) libraries. JRE (Java Runtime) 8 is the runtime e...
JDK 8 jconsole.jar is the JAR file for JDK 8 JConsole, which is a graphical monitoring tool to monit...
JDK 11 jdk.internal.vm.compiler .jmodis the JMOD file for JDK 11 Internal VM Compiler module. JDK 11...
What Is jms.jar? I heard it's related to JMS (Java Message Service) 1.1? The if you have an jms.jar ...
JavaMail Source Code Files are provided in the source package file, httpcomponents-client-5. 2-src.zi...