Class CompileCommandProcessor

  • All Implemented Interfaces:
    javax.annotation.processing.Processor

    public final class CompileCommandProcessor
    extends javax.annotation.processing.AbstractProcessor
    Processor that generates a hotspot_compiler file for using with -XX:CompileCommandFile.
    See Also:
    CompileCommand/CompileCommandFile documentation
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private void error​(java.lang.String msg, java.lang.Object... args)  
      private void error​(javax.lang.model.element.Element element, java.lang.String msg, java.lang.Object... args)  
      private void generateCompileCommandFile​(java.lang.String path)  
      private java.lang.String getDescriptor​(javax.lang.model.element.ExecutableElement element)  
      private java.lang.String getSignature​(javax.lang.model.element.ExecutableElement element)  
      private java.lang.String getSignature​(javax.lang.model.type.TypeMirror type)  
      java.util.Set<java.lang.String> getSupportedAnnotationTypes()  
      javax.lang.model.SourceVersion getSupportedSourceVersion()  
      private void info​(java.lang.String msg, java.lang.Object... args)  
      private void info​(javax.lang.model.element.Element element, java.lang.String msg, java.lang.Object... args)  
      private void message​(javax.tools.Diagnostic.Kind level, java.lang.String msg, java.lang.Object... args)  
      private void message​(javax.tools.Diagnostic.Kind level, javax.lang.model.element.Element element, java.lang.String msg, java.lang.Object... args)  
      boolean process​(java.util.Set<? extends javax.lang.model.element.TypeElement> annotations, javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processBreak​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processCompileOnly​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processDontInline​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processExclude​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processInline​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processLog​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processOption​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processOption​(javax.lang.model.element.Element element, java.lang.String option, javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processOptions​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processPrint​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processQuiet​(javax.annotation.processing.RoundEnvironment roundEnv)  
      private void processSimpleMethodAnnotation​(java.lang.Class<? extends java.lang.annotation.Annotation> clazz, javax.annotation.processing.RoundEnvironment roundEnv)  
      private void warn​(java.lang.String msg, java.lang.Object... args)  
      private void warn​(javax.lang.model.element.Element element, java.lang.String msg, java.lang.Object... args)  
      • Methods inherited from class javax.annotation.processing.AbstractProcessor

        getCompletions, getSupportedOptions, init, isInitialized
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • COMPILE_COMMAND_FILE_PATH_OPTION

        public static final java.lang.String COMPILE_COMMAND_FILE_PATH_OPTION
        See Also:
        Constant Field Values
      • COMPILE_COMMAND_FILE_PATH_DEFAULT

        public static final java.lang.String COMPILE_COMMAND_FILE_PATH_DEFAULT
        See Also:
        Constant Field Values
      • lines

        private final java.util.SortedSet<java.lang.String> lines
      • quiet

        private boolean quiet
    • Constructor Detail

      • CompileCommandProcessor

        public CompileCommandProcessor()
    • Method Detail

      • getSupportedSourceVersion

        public javax.lang.model.SourceVersion getSupportedSourceVersion()
        Specified by:
        getSupportedSourceVersion in interface javax.annotation.processing.Processor
        Overrides:
        getSupportedSourceVersion in class javax.annotation.processing.AbstractProcessor
      • getSupportedAnnotationTypes

        public java.util.Set<java.lang.String> getSupportedAnnotationTypes()
        Specified by:
        getSupportedAnnotationTypes in interface javax.annotation.processing.Processor
        Overrides:
        getSupportedAnnotationTypes in class javax.annotation.processing.AbstractProcessor
      • process

        public boolean process​(java.util.Set<? extends javax.lang.model.element.TypeElement> annotations,
                               javax.annotation.processing.RoundEnvironment roundEnv)
        Specified by:
        process in interface javax.annotation.processing.Processor
        Specified by:
        process in class javax.annotation.processing.AbstractProcessor
      • processBreak

        private void processBreak​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processCompileOnly

        private void processCompileOnly​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processDontInline

        private void processDontInline​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processExclude

        private void processExclude​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processInline

        private void processInline​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processLog

        private void processLog​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processOptions

        private void processOptions​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processOption

        private void processOption​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processOption

        private void processOption​(javax.lang.model.element.Element element,
                                   java.lang.String option,
                                   javax.annotation.processing.RoundEnvironment roundEnv)
      • processPrint

        private void processPrint​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processQuiet

        private void processQuiet​(javax.annotation.processing.RoundEnvironment roundEnv)
      • processSimpleMethodAnnotation

        private void processSimpleMethodAnnotation​(java.lang.Class<? extends java.lang.annotation.Annotation> clazz,
                                                   javax.annotation.processing.RoundEnvironment roundEnv)
      • getDescriptor

        private java.lang.String getDescriptor​(javax.lang.model.element.ExecutableElement element)
      • getSignature

        private java.lang.String getSignature​(javax.lang.model.element.ExecutableElement element)
      • getSignature

        private java.lang.String getSignature​(javax.lang.model.type.TypeMirror type)
      • generateCompileCommandFile

        private void generateCompileCommandFile​(java.lang.String path)
      • info

        private void info​(java.lang.String msg,
                          java.lang.Object... args)
      • info

        private void info​(javax.lang.model.element.Element element,
                          java.lang.String msg,
                          java.lang.Object... args)
      • warn

        private void warn​(java.lang.String msg,
                          java.lang.Object... args)
      • warn

        private void warn​(javax.lang.model.element.Element element,
                          java.lang.String msg,
                          java.lang.Object... args)
      • error

        private void error​(java.lang.String msg,
                           java.lang.Object... args)
      • error

        private void error​(javax.lang.model.element.Element element,
                           java.lang.String msg,
                           java.lang.Object... args)
      • message

        private void message​(javax.tools.Diagnostic.Kind level,
                             java.lang.String msg,
                             java.lang.Object... args)
      • message

        private void message​(javax.tools.Diagnostic.Kind level,
                             javax.lang.model.element.Element element,
                             java.lang.String msg,
                             java.lang.Object... args)