public class com.oracle.truffle.dsl.processor.Log
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.dsl.processor.Log
  super_class: java.lang.Object
{
  private final javax.annotation.processing.ProcessingEnvironment processingEnv;
    descriptor: Ljavax/annotation/processing/ProcessingEnvironment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean emitWarnings;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public static boolean isDebug();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 57
            iconst_0
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(javax.annotation.processing.ProcessingEnvironment, boolean);
    descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.truffle.dsl.processor.Log this
        start local 1 // javax.annotation.processing.ProcessingEnvironment env
        start local 2 // boolean emitWarnings
         0: .line 63
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            aload 1 /* env */
            putfield com.oracle.truffle.dsl.processor.Log.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
         2: .line 65
            aload 0 /* this */
            iload 2 /* emitWarnings */
            putfield com.oracle.truffle.dsl.processor.Log.emitWarnings:Z
         3: .line 66
            return
        end local 2 // boolean emitWarnings
        end local 1 // javax.annotation.processing.ProcessingEnvironment env
        end local 0 // com.oracle.truffle.dsl.processor.Log this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lcom/oracle/truffle/dsl/processor/Log;
            0    4     1           env  Ljavax/annotation/processing/ProcessingEnvironment;
            0    4     2  emitWarnings  Z
    MethodParameters:
              Name  Flags
      env           
      emitWarnings  

  public void debug(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // com.oracle.truffle.dsl.processor.Log this
        start local 1 // java.lang.String message
        start local 2 // java.lang.Object[] args
         0: .line 69
            aload 0 /* this */
            getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
            aconst_null
            aconst_null
            aconst_null
            aload 1 /* message */
            aload 2 /* args */
            invokevirtual com.oracle.truffle.dsl.processor.Log.message:(Ljavax/tools/Diagnostic$Kind;Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljavax/lang/model/element/AnnotationValue;Ljava/lang/String;[Ljava/lang/Object;)V
         1: .line 70
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String message
        end local 0 // com.oracle.truffle.dsl.processor.Log this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/oracle/truffle/dsl/processor/Log;
            0    2     1  message  Ljava/lang/String;
            0    2     2     args  [Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      message  
      args     

  public void message(javax.tools.Diagnostic$Kind, javax.lang.model.element.Element, javax.lang.model.element.AnnotationMirror, javax.lang.model.element.AnnotationValue, java.lang.String, java.lang.Object[]);
    descriptor: (Ljavax/tools/Diagnostic$Kind;Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljavax/lang/model/element/AnnotationValue;Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=6, locals=11, args_size=7
        start local 0 // com.oracle.truffle.dsl.processor.Log this
        start local 1 // javax.tools.Diagnostic$Kind kind
        start local 2 // javax.lang.model.element.Element element
        start local 3 // javax.lang.model.element.AnnotationMirror mirror
        start local 4 // javax.lang.model.element.AnnotationValue value
        start local 5 // java.lang.String format
        start local 6 // java.lang.Object[] args
         0: .line 73
            aload 3 /* mirror */
            astore 7 /* usedMirror */
        start local 7 // javax.lang.model.element.AnnotationMirror usedMirror
         1: .line 74
            aload 2 /* element */
            astore 8 /* usedElement */
        start local 8 // javax.lang.model.element.Element usedElement
         2: .line 75
            aload 4 /* value */
            astore 9 /* usedValue */
        start local 9 // javax.lang.model.element.AnnotationValue usedValue
         3: .line 76
            aload 5 /* format */
            aload 6 /* args */
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 10 /* message */
        start local 10 // java.lang.String message
         4: .line 78
            aload 2 /* element */
            instanceof com.oracle.truffle.dsl.processor.java.model.GeneratedElement
            ifeq 10
         5: .line 79
            aload 2 /* element */
            checkcast com.oracle.truffle.dsl.processor.java.model.GeneratedElement
            invokeinterface com.oracle.truffle.dsl.processor.java.model.GeneratedElement.getGeneratorAnnotationMirror:()Ljavax/lang/model/element/AnnotationMirror;
            astore 7 /* usedMirror */
         6: .line 80
            aload 2 /* element */
            checkcast com.oracle.truffle.dsl.processor.java.model.GeneratedElement
            invokeinterface com.oracle.truffle.dsl.processor.java.model.GeneratedElement.getGeneratorElement:()Ljavax/lang/model/element/Element;
            astore 8 /* usedElement */
         7: .line 81
            aconst_null
            astore 9 /* usedValue */
         8: .line 82
            aload 8 /* usedElement */
            ifnull 10
         9: .line 83
            ldc "Element %s: %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* element */
            aastore
            dup
            iconst_1
            aload 10 /* message */
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 10 /* message */
        10: .line 86
      StackMap locals: com.oracle.truffle.dsl.processor.Log javax.tools.Diagnostic$Kind javax.lang.model.element.Element javax.lang.model.element.AnnotationMirror javax.lang.model.element.AnnotationValue java.lang.String java.lang.Object[] javax.lang.model.element.AnnotationMirror javax.lang.model.element.Element javax.lang.model.element.AnnotationValue java.lang.String
      StackMap stack:
            aload 1 /* kind */
            getstatic javax.tools.Diagnostic$Kind.WARNING:Ljavax/tools/Diagnostic$Kind;
            if_acmpne 11
            aload 0 /* this */
            getfield com.oracle.truffle.dsl.processor.Log.emitWarnings:Z
            ifeq 12
        11: .line 87
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.dsl.processor.Log.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
            invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
            aload 1 /* kind */
            aload 10 /* message */
            aload 8 /* usedElement */
            aload 7 /* usedMirror */
            aload 9 /* usedValue */
            invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljavax/lang/model/element/AnnotationValue;)V
        12: .line 89
      StackMap locals:
      StackMap stack:
            return
        end local 10 // java.lang.String message
        end local 9 // javax.lang.model.element.AnnotationValue usedValue
        end local 8 // javax.lang.model.element.Element usedElement
        end local 7 // javax.lang.model.element.AnnotationMirror usedMirror
        end local 6 // java.lang.Object[] args
        end local 5 // java.lang.String format
        end local 4 // javax.lang.model.element.AnnotationValue value
        end local 3 // javax.lang.model.element.AnnotationMirror mirror
        end local 2 // javax.lang.model.element.Element element
        end local 1 // javax.tools.Diagnostic$Kind kind
        end local 0 // com.oracle.truffle.dsl.processor.Log this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lcom/oracle/truffle/dsl/processor/Log;
            0   13     1         kind  Ljavax/tools/Diagnostic$Kind;
            0   13     2      element  Ljavax/lang/model/element/Element;
            0   13     3       mirror  Ljavax/lang/model/element/AnnotationMirror;
            0   13     4        value  Ljavax/lang/model/element/AnnotationValue;
            0   13     5       format  Ljava/lang/String;
            0   13     6         args  [Ljava/lang/Object;
            1   13     7   usedMirror  Ljavax/lang/model/element/AnnotationMirror;
            2   13     8  usedElement  Ljavax/lang/model/element/Element;
            3   13     9    usedValue  Ljavax/lang/model/element/AnnotationValue;
            4   13    10      message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      kind     
      element  
      mirror   
      value    
      format   
      args     
}
SourceFile: "Log.java"
InnerClasses:
  public final Kind = javax.tools.Diagnostic$Kind of javax.tools.Diagnostic