public class lombok.javac.CapturingDiagnosticListener implements javax.tools.DiagnosticListener<javax.tools.JavaFileObject>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: lombok.javac.CapturingDiagnosticListener
  super_class: java.lang.Object
{
  private final java.io.File file;
    descriptor: Ljava/io/File;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Collection<lombok.javac.CapturingDiagnosticListener$CompilerMessage> messages;
    descriptor: Ljava/util/Collection;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Collection<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;

  public void <init>(java.io.File, java.util.Collection<lombok.javac.CapturingDiagnosticListener$CompilerMessage>);
    descriptor: (Ljava/io/File;Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // lombok.javac.CapturingDiagnosticListener this
        start local 1 // java.io.File file
        start local 2 // java.util.Collection messages
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 45
            aload 0 /* this */
            aload 1 /* file */
            putfield lombok.javac.CapturingDiagnosticListener.file:Ljava/io/File;
         2: .line 46
            aload 0 /* this */
            aload 2 /* messages */
            putfield lombok.javac.CapturingDiagnosticListener.messages:Ljava/util/Collection;
         3: .line 47
            return
        end local 2 // java.util.Collection messages
        end local 1 // java.io.File file
        end local 0 // lombok.javac.CapturingDiagnosticListener this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Llombok/javac/CapturingDiagnosticListener;
            0    4     1      file  Ljava/io/File;
            0    4     2  messages  Ljava/util/Collection<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;
    Signature: (Ljava/io/File;Ljava/util/Collection<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;)V
    MethodParameters:
          Name  Flags
      file      
      messages  

  public void report(javax.tools.Diagnostic<? extends javax.tools.JavaFileObject>);
    descriptor: (Ljavax/tools/Diagnostic;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=4, args_size=2
        start local 0 // lombok.javac.CapturingDiagnosticListener this
        start local 1 // javax.tools.Diagnostic d
         0: .line 50
            aload 1 /* d */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokeinterface javax.tools.Diagnostic.getMessage:(Ljava/util/Locale;)Ljava/lang/String;
            astore 2 /* msg */
        start local 2 // java.lang.String msg
         1: .line 52
            new java.lang.StringBuilder
            dup
            ldc "^"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield lombok.javac.CapturingDiagnosticListener.file:Ljava/io/File;
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.util.regex.Pattern.quote:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 53
            ldc "\\s*:\\s*\\d+\\s*:\\s*(?:warning:\\s*)?(.*)$"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 52
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 53
            bipush 32
         5: .line 51
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;I)Ljava/util/regex/Pattern;
         6: .line 53
            aload 2 /* msg */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
         7: .line 51
            astore 3 /* m */
        start local 3 // java.util.regex.Matcher m
         8: .line 54
            aload 3 /* m */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 9
            aload 3 /* m */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 2 /* msg */
         9: .line 55
      StackMap locals: java.lang.String java.util.regex.Matcher
      StackMap stack:
            aload 2 /* msg */
            ldc "deprecated item is not annotated with @Deprecated"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 57
            return
        11: .line 59
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield lombok.javac.CapturingDiagnosticListener.messages:Ljava/util/Collection;
        12: new lombok.javac.CapturingDiagnosticListener$CompilerMessage
            dup
            aload 1 /* d */
            invokeinterface javax.tools.Diagnostic.getLineNumber:()J
            aload 1 /* d */
            invokeinterface javax.tools.Diagnostic.getStartPosition:()J
            aload 1 /* d */
            invokeinterface javax.tools.Diagnostic.getKind:()Ljavax/tools/Diagnostic$Kind;
            getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
            if_acmpne 13
            iconst_1
            goto 14
      StackMap locals: lombok.javac.CapturingDiagnosticListener javax.tools.Diagnostic java.lang.String java.util.regex.Matcher
      StackMap stack: java.util.Collection new 12 new 12 long long
        13: iconst_0
      StackMap locals: lombok.javac.CapturingDiagnosticListener javax.tools.Diagnostic java.lang.String java.util.regex.Matcher
      StackMap stack: java.util.Collection new 12 new 12 long long int
        14: aload 2 /* msg */
            invokespecial lombok.javac.CapturingDiagnosticListener$CompilerMessage.<init>:(JJZLjava/lang/String;)V
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        15: .line 60
            return
        end local 3 // java.util.regex.Matcher m
        end local 2 // java.lang.String msg
        end local 1 // javax.tools.Diagnostic d
        end local 0 // lombok.javac.CapturingDiagnosticListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Llombok/javac/CapturingDiagnosticListener;
            0   16     1     d  Ljavax/tools/Diagnostic<+Ljavax/tools/JavaFileObject;>;
            1   16     2   msg  Ljava/lang/String;
            8   16     3     m  Ljava/util/regex/Matcher;
    Signature: (Ljavax/tools/Diagnostic<+Ljavax/tools/JavaFileObject;>;)V
    MethodParameters:
      Name  Flags
      d     

  public void suppress(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // lombok.javac.CapturingDiagnosticListener this
        start local 1 // int start
        start local 2 // int end
         0: .line 63
            aload 0 /* this */
            getfield lombok.javac.CapturingDiagnosticListener.messages:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3 /* it */
        start local 3 // java.util.Iterator it
         1: .line 64
            goto 4
         2: .line 65
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.javac.CapturingDiagnosticListener$CompilerMessage
            invokevirtual lombok.javac.CapturingDiagnosticListener$CompilerMessage.getPosition:()J
            lstore 4 /* pos */
        start local 4 // long pos
         3: .line 66
            lload 4 /* pos */
            iload 1 /* start */
            i2l
            lcmp
            iflt 4
            lload 4 /* pos */
            iload 2 /* end */
            i2l
            lcmp
            ifge 4
            aload 3 /* it */
            invokeinterface java.util.Iterator.remove:()V
        end local 4 // long pos
         4: .line 64
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 68
            return
        end local 3 // java.util.Iterator it
        end local 2 // int end
        end local 1 // int start
        end local 0 // lombok.javac.CapturingDiagnosticListener this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Llombok/javac/CapturingDiagnosticListener;
            0    6     1  start  I
            0    6     2    end  I
            1    6     3     it  Ljava/util/Iterator<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;
            3    4     4    pos  J
    MethodParameters:
       Name  Flags
      start  
      end    
}
Signature: Ljava/lang/Object;Ljavax/tools/DiagnosticListener<Ljavax/tools/JavaFileObject;>;
SourceFile: "CapturingDiagnosticListener.java"
NestMembers:
  lombok.javac.CapturingDiagnosticListener$CompilerMessage
InnerClasses:
  public final Kind = javax.tools.Diagnostic$Kind of javax.tools.Diagnostic
  public final CompilerMessage = lombok.javac.CapturingDiagnosticListener$CompilerMessage of lombok.javac.CapturingDiagnosticListener