public abstract class lombok.AbstractRunTests
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: lombok.AbstractRunTests
  super_class: java.lang.Object
{
  private final java.io.File dumpActualFilesHere;
    descriptor: Ljava/io/File;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // lombok.AbstractRunTests this
         0: .line 55
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            invokestatic lombok.AbstractRunTests.findPlaceToDumpActualFiles:()Ljava/io/File;
            putfield lombok.AbstractRunTests.dumpActualFilesHere:Ljava/io/File;
         2: .line 57
            return
        end local 0 // lombok.AbstractRunTests this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Llombok/AbstractRunTests;

  public final lombok.DirectoryRunner$FileTester createTester(lombok.DirectoryRunner$TestParams, java.io.File, java.lang.String, int);
    descriptor: (Llombok/DirectoryRunner$TestParams;Ljava/io/File;Ljava/lang/String;I)Llombok/DirectoryRunner$FileTester;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=8, locals=11, args_size=5
        start local 0 // lombok.AbstractRunTests this
        start local 1 // lombok.DirectoryRunner$TestParams params
        start local 2 // java.io.File file
        start local 3 // java.lang.String platform
        start local 4 // int version
         0: .line 60
            invokestatic lombok.core.configuration.ConfigurationKeysLoader$LoaderLoader.loadAllConfigurationKeys:()V
         1: .line 61
            aconst_null
            astore 5 /* directiveFailure */
        start local 5 // java.lang.AssertionError directiveFailure
         2: .line 62
            aconst_null
            astore 6 /* sourceDirectives */
        start local 6 // lombok.LombokTestSource sourceDirectives
         3: .line 64
            aload 2 /* file */
            invokestatic lombok.LombokTestSource.readDirectives:(Ljava/io/File;)Llombok/LombokTestSource;
            astore 6 /* sourceDirectives */
         4: .line 65
            aload 6 /* sourceDirectives */
            invokevirtual lombok.LombokTestSource.isIgnore:()Z
            ifeq 6
         5: aconst_null
            areturn
         6: .line 66
      StackMap locals: java.lang.AssertionError lombok.LombokTestSource
      StackMap stack:
            aload 6 /* sourceDirectives */
            iload 4 /* version */
            invokevirtual lombok.LombokTestSource.versionWithinLimit:(I)Z
            ifne 8
         7: aconst_null
            areturn
         8: .line 67
      StackMap locals:
      StackMap stack:
            aload 6 /* sourceDirectives */
            aload 3 /* platform */
            invokevirtual lombok.LombokTestSource.runOnPlatform:(Ljava/lang/String;)Z
            ifne 12
         9: aconst_null
            areturn
        10: .line 68
      StackMap locals:
      StackMap stack: java.lang.AssertionError
            astore 7 /* ae */
        start local 7 // java.lang.AssertionError ae
        11: .line 69
            aload 7 /* ae */
            astore 5 /* directiveFailure */
        end local 7 // java.lang.AssertionError ae
        12: .line 72
      StackMap locals:
      StackMap stack:
            aload 2 /* file */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 7 /* fileName */
        start local 7 // java.lang.String fileName
        13: .line 73
            aload 1 /* params */
            invokevirtual lombok.DirectoryRunner$TestParams.getAfterDirectory:()Ljava/io/File;
            aload 1 /* params */
            invokevirtual lombok.DirectoryRunner$TestParams.getMessagesDirectory:()Ljava/io/File;
            aload 7 /* fileName */
            invokestatic lombok.LombokTestSource.read:(Ljava/io/File;Ljava/io/File;Ljava/lang/String;)Llombok/LombokTestSource;
            astore 8 /* expected */
        start local 8 // lombok.LombokTestSource expected
        14: .line 75
            aload 8 /* expected */
            invokevirtual lombok.LombokTestSource.isIgnore:()Z
            ifeq 15
            aconst_null
            areturn
        15: .line 76
      StackMap locals: java.lang.String lombok.LombokTestSource
      StackMap stack:
            aload 8 /* expected */
            aload 1 /* params */
            invokevirtual lombok.DirectoryRunner$TestParams.getVersion:()I
            invokevirtual lombok.LombokTestSource.versionWithinLimit:(I)Z
            ifne 16
            aconst_null
            areturn
        16: .line 77
      StackMap locals:
      StackMap stack:
            aload 8 /* expected */
            iload 4 /* version */
            invokevirtual lombok.LombokTestSource.versionWithinLimit:(I)Z
            ifne 17
            aconst_null
            areturn
        17: .line 78
      StackMap locals:
      StackMap stack:
            aload 8 /* expected */
            invokevirtual lombok.LombokTestSource.isSkipIdempotent:()Z
            ifeq 18
            aload 1 /* params */
            instanceof lombok.transform.TestLombokFilesIdempotent
            ifeq 18
            aconst_null
            areturn
        18: .line 80
      StackMap locals:
      StackMap stack:
            aload 6 /* sourceDirectives */
            astore 9 /* sourceDirectives_ */
        start local 9 // lombok.LombokTestSource sourceDirectives_
        19: .line 81
            aload 5 /* directiveFailure */
            astore 10 /* directiveFailure_ */
        start local 10 // java.lang.AssertionError directiveFailure_
        20: .line 82
            new lombok.AbstractRunTests$1
            dup
            aload 0 /* this */
            aload 10 /* directiveFailure_ */
            aload 2 /* file */
            aload 9 /* sourceDirectives_ */
            aload 1 /* params */
            aload 8 /* expected */
            invokespecial lombok.AbstractRunTests$1.<init>:(Llombok/AbstractRunTests;Ljava/lang/AssertionError;Ljava/io/File;Llombok/LombokTestSource;Llombok/DirectoryRunner$TestParams;Llombok/LombokTestSource;)V
            areturn
        end local 10 // java.lang.AssertionError directiveFailure_
        end local 9 // lombok.LombokTestSource sourceDirectives_
        end local 8 // lombok.LombokTestSource expected
        end local 7 // java.lang.String fileName
        end local 6 // lombok.LombokTestSource sourceDirectives
        end local 5 // java.lang.AssertionError directiveFailure
        end local 4 // int version
        end local 3 // java.lang.String platform
        end local 2 // java.io.File file
        end local 1 // lombok.DirectoryRunner$TestParams params
        end local 0 // lombok.AbstractRunTests this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   21     0               this  Llombok/AbstractRunTests;
            0   21     1             params  Llombok/DirectoryRunner$TestParams;
            0   21     2               file  Ljava/io/File;
            0   21     3           platform  Ljava/lang/String;
            0   21     4            version  I
            2   21     5   directiveFailure  Ljava/lang/AssertionError;
            3   21     6   sourceDirectives  Llombok/LombokTestSource;
           11   12     7                 ae  Ljava/lang/AssertionError;
           13   21     7           fileName  Ljava/lang/String;
           14   21     8           expected  Llombok/LombokTestSource;
           19   21     9  sourceDirectives_  Llombok/LombokTestSource;
           20   21    10  directiveFailure_  Ljava/lang/AssertionError;
      Exception table:
        from    to  target  type
           3     5      10  Class java.lang.AssertionError
           6     7      10  Class java.lang.AssertionError
           8     9      10  Class java.lang.AssertionError
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      params    final
      file      final
      platform  
      version   

  protected abstract boolean transformCode(java.util.Collection<lombok.javac.CapturingDiagnosticListener$CompilerMessage>, java.io.StringWriter, java.io.File, java.lang.String, java.util.Map<java.lang.String, java.lang.String>, );
    descriptor: (Ljava/util/Collection;Ljava/io/StringWriter;Ljava/io/File;Ljava/lang/String;Ljava/util/Map;I)Z
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Throwable
    Signature: (Ljava/util/Collection<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;Ljava/io/StringWriter;Ljava/io/File;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;I)Z
    MethodParameters:
                   Name  Flags
      messages           
      result             
      file               
      encoding           
      formatPreferences  
      minVersion         

  protected java.lang.String readFile(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // lombok.AbstractRunTests this
        start local 1 // java.io.File file
         0: .line 109
            new java.io.BufferedReader
            dup
            new java.io.FileReader
            dup
            aload 1 /* file */
            invokespecial java.io.FileReader.<init>:(Ljava/io/File;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 2 /* reader */
        start local 2 // java.io.BufferedReader reader
         1: .line 110
            goto 4
        end local 2 // java.io.BufferedReader reader
      StackMap locals:
      StackMap stack: java.io.FileNotFoundException
         2: pop
         3: .line 111
            aconst_null
            areturn
        start local 2 // java.io.BufferedReader reader
         4: .line 113
      StackMap locals: java.io.BufferedReader
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* result */
        start local 3 // java.lang.StringBuilder result
         5: .line 115
            goto 8
        start local 4 // java.lang.String line
         6: .line 116
      StackMap locals: java.lang.StringBuilder java.lang.String
      StackMap stack:
            aload 3 /* result */
            aload 4 /* line */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 117
            aload 3 /* result */
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.lang.String line
         8: .line 115
      StackMap locals:
      StackMap stack:
            aload 2 /* reader */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
            dup
            astore 4 /* line */
        start local 4 // java.lang.String line
         9: ifnonnull 6
        10: .line 119
            aload 2 /* reader */
            invokevirtual java.io.BufferedReader.close:()V
        11: .line 120
            aload 3 /* result */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.String line
        end local 3 // java.lang.StringBuilder result
        end local 2 // java.io.BufferedReader reader
        end local 1 // java.io.File file
        end local 0 // lombok.AbstractRunTests this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Llombok/AbstractRunTests;
            0   12     1    file  Ljava/io/File;
            1    2     2  reader  Ljava/io/BufferedReader;
            4   12     2  reader  Ljava/io/BufferedReader;
            5   12     3  result  Ljava/lang/StringBuilder;
            6    8     4    line  Ljava/lang/String;
            9   12     4    line  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.FileNotFoundException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  private static java.io.File findPlaceToDumpActualFiles();
    descriptor: ()Ljava/io/File;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=0
         0: .line 124
            ldc "lombok.tests.dump_actual_files"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* location */
        start local 0 // java.lang.String location
         1: .line 125
            aload 0 /* location */
            ifnull 5
         2: .line 126
            new java.io.File
            dup
            aload 0 /* location */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* dumpActualFilesHere */
        start local 1 // java.io.File dumpActualFilesHere
         3: .line 127
            aload 1 /* dumpActualFilesHere */
            invokevirtual java.io.File.mkdirs:()Z
            pop
         4: .line 128
            aload 1 /* dumpActualFilesHere */
            areturn
        end local 1 // java.io.File dumpActualFilesHere
         5: .line 130
      StackMap locals: java.lang.String
      StackMap stack:
            aconst_null
            areturn
        end local 0 // java.lang.String location
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            1    6     0             location  Ljava/lang/String;
            3    5     1  dumpActualFilesHere  Ljava/io/File;

  private static void dumpToFile(java.io.File, java.lang.String);
    descriptor: (Ljava/io/File;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.io.File file
        start local 1 // java.lang.String content
         0: .line 134
            new java.io.FileOutputStream
            dup
            aload 0 /* file */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            astore 2 /* fos */
        start local 2 // java.io.FileOutputStream fos
         1: .line 136
            aload 2 /* fos */
            aload 1 /* content */
            ldc "UTF-8"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            invokevirtual java.io.FileOutputStream.write:([B)V
         2: .line 137
            goto 6
      StackMap locals: java.io.File java.lang.String java.io.FileOutputStream
      StackMap stack: java.lang.Throwable
         3: astore 3
         4: .line 138
            aload 2 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
         5: .line 139
            aload 3
            athrow
         6: .line 138
      StackMap locals:
      StackMap stack:
            aload 2 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
         7: .line 140
            return
        end local 2 // java.io.FileOutputStream fos
        end local 1 // java.lang.String content
        end local 0 // java.io.File file
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     file  Ljava/io/File;
            0    8     1  content  Ljava/lang/String;
            1    8     2      fos  Ljava/io/FileOutputStream;
      Exception table:
        from    to  target  type
           1     3       3  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      file     
      content  

  private static void dumpToFile(java.io.File, java.util.Collection<lombok.javac.CapturingDiagnosticListener$CompilerMessage>);
    descriptor: (Ljava/io/File;Ljava/util/Collection;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // java.io.File file
        start local 1 // java.util.Collection content
         0: .line 143
            new java.io.FileOutputStream
            dup
            aload 0 /* file */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            astore 2 /* fos */
        start local 2 // java.io.FileOutputStream fos
         1: .line 145
            aload 1 /* content */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: java.io.File java.util.Collection java.io.FileOutputStream top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.javac.CapturingDiagnosticListener$CompilerMessage
            astore 3 /* message */
        start local 3 // lombok.javac.CapturingDiagnosticListener$CompilerMessage message
         3: .line 146
            aload 2 /* fos */
            aload 3 /* message */
            invokestatic lombok.CompilerMessageMatcher.asCompilerMessageMatcher:(Llombok/javac/CapturingDiagnosticListener$CompilerMessage;)Llombok/CompilerMessageMatcher;
            invokevirtual lombok.CompilerMessageMatcher.toString:()Ljava/lang/String;
            ldc "UTF-8"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            invokevirtual java.io.FileOutputStream.write:([B)V
         4: .line 147
            aload 2 /* fos */
            bipush 10
            invokevirtual java.io.FileOutputStream.write:(I)V
        end local 3 // lombok.javac.CapturingDiagnosticListener$CompilerMessage message
         5: .line 145
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 149
            goto 10
      StackMap locals: java.io.File java.util.Collection java.io.FileOutputStream
      StackMap stack: java.lang.Throwable
         7: astore 5
         8: .line 150
            aload 2 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
         9: .line 151
            aload 5
            athrow
        10: .line 150
      StackMap locals:
      StackMap stack:
            aload 2 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
        11: .line 152
            return
        end local 2 // java.io.FileOutputStream fos
        end local 1 // java.util.Collection content
        end local 0 // java.io.File file
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     file  Ljava/io/File;
            0   12     1  content  Ljava/util/Collection<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;
            1   12     2      fos  Ljava/io/FileOutputStream;
            3    5     3  message  Llombok/javac/CapturingDiagnosticListener$CompilerMessage;
      Exception table:
        from    to  target  type
           1     7       7  any
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/io/File;Ljava/util/Collection<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;)V
    MethodParameters:
         Name  Flags
      file     
      content  

  private void compare(java.lang.String, lombok.LombokTestSource, java.lang.String, java.util.LinkedHashSet<lombok.javac.CapturingDiagnosticListener$CompilerMessage>, boolean, );
    descriptor: (Ljava/lang/String;Llombok/LombokTestSource;Ljava/lang/String;Ljava/util/LinkedHashSet;ZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=7
        start local 0 // lombok.AbstractRunTests this
        start local 1 // java.lang.String name
        start local 2 // lombok.LombokTestSource expected
        start local 3 // java.lang.String actualFile
        start local 4 // java.util.LinkedHashSet actualMessages
        start local 5 // boolean printErrors
        start local 6 // boolean skipCompareContent
         0: .line 155
            iload 6 /* skipCompareContent */
            ifne 21
         1: .line 156
            aload 1 /* name */
            aload 2 /* expected */
            invokevirtual lombok.LombokTestSource.getContent:()Ljava/lang/String;
            aload 3 /* actualFile */
            invokestatic lombok.AbstractRunTests.compareContent:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         2: .line 157
            goto 21
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 7 /* e */
        start local 7 // java.lang.Throwable e
         4: .line 158
            iload 5 /* printErrors */
            ifeq 18
         5: .line 159
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "***** "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " *****"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 160
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 7 /* e */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         7: .line 161
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "**** Expected ******"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 162
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 2 /* expected */
            invokevirtual lombok.LombokTestSource.getContent:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 163
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "****  Actual  ******"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 164
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 3 /* actualFile */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        11: .line 165
            aload 4 /* actualMessages */
            ifnull 17
            aload 4 /* actualMessages */
            invokevirtual java.util.LinkedHashSet.isEmpty:()Z
            ifne 17
        12: .line 166
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "**** Actual Errors *****"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        13: .line 167
            aload 4 /* actualMessages */
            invokevirtual java.util.LinkedHashSet.iterator:()Ljava/util/Iterator;
            astore 9
            goto 16
      StackMap locals: lombok.AbstractRunTests java.lang.String lombok.LombokTestSource java.lang.String java.util.LinkedHashSet int int java.lang.Throwable top java.util.Iterator
      StackMap stack:
        14: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.javac.CapturingDiagnosticListener$CompilerMessage
            astore 8 /* actualMessage */
        start local 8 // lombok.javac.CapturingDiagnosticListener$CompilerMessage actualMessage
        15: .line 168
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 8 /* actualMessage */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
        end local 8 // lombok.javac.CapturingDiagnosticListener$CompilerMessage actualMessage
        16: .line 167
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        17: .line 171
      StackMap locals: lombok.AbstractRunTests java.lang.String lombok.LombokTestSource java.lang.String java.util.LinkedHashSet int int java.lang.Throwable
      StackMap stack:
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "*******************"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        18: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield lombok.AbstractRunTests.dumpActualFilesHere:Ljava/io/File;
            ifnull 20
        19: .line 174
            new java.io.File
            dup
            aload 0 /* this */
            getfield lombok.AbstractRunTests.dumpActualFilesHere:Ljava/io/File;
            aload 1 /* name */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            aload 3 /* actualFile */
            invokestatic lombok.AbstractRunTests.dumpToFile:(Ljava/io/File;Ljava/lang/String;)V
        20: .line 176
      StackMap locals:
      StackMap stack:
            aload 7 /* e */
            athrow
        end local 7 // java.lang.Throwable e
        21: .line 180
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            aload 2 /* expected */
            invokevirtual lombok.LombokTestSource.getMessages:()Llombok/core/LombokImmutableList;
            aload 4 /* actualMessages */
            invokestatic lombok.AbstractRunTests.compareMessages:(Ljava/lang/String;Llombok/core/LombokImmutableList;Ljava/util/LinkedHashSet;)V
        22: .line 181
            goto 43
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 7 /* e */
        start local 7 // java.lang.Throwable e
        24: .line 182
            iload 5 /* printErrors */
            ifeq 40
        25: .line 183
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "***** "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " *****"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        26: .line 184
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 7 /* e */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        27: .line 185
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "**** Expected ******"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        28: .line 186
            aload 2 /* expected */
            invokevirtual lombok.LombokTestSource.getMessages:()Llombok/core/LombokImmutableList;
            invokevirtual lombok.core.LombokImmutableList.iterator:()Ljava/util/Iterator;
            astore 9
            goto 31
      StackMap locals: lombok.AbstractRunTests java.lang.String lombok.LombokTestSource java.lang.String java.util.LinkedHashSet int int java.lang.Throwable top java.util.Iterator
      StackMap stack:
        29: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.CompilerMessageMatcher
            astore 8 /* expectedMessage */
        start local 8 // lombok.CompilerMessageMatcher expectedMessage
        30: .line 187
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 8 /* expectedMessage */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
        end local 8 // lombok.CompilerMessageMatcher expectedMessage
        31: .line 186
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 29
        32: .line 189
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "****  Actual  ******"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        33: .line 190
            aload 4 /* actualMessages */
            invokevirtual java.util.LinkedHashSet.iterator:()Ljava/util/Iterator;
            astore 9
            goto 36
      StackMap locals:
      StackMap stack:
        34: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.javac.CapturingDiagnosticListener$CompilerMessage
            astore 8 /* actualMessage */
        start local 8 // lombok.javac.CapturingDiagnosticListener$CompilerMessage actualMessage
        35: .line 191
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 8 /* actualMessage */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
        end local 8 // lombok.javac.CapturingDiagnosticListener$CompilerMessage actualMessage
        36: .line 190
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 34
        37: .line 193
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "****  Actual File  ******"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        38: .line 194
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 0 /* this */
            aload 3 /* actualFile */
            invokevirtual lombok.AbstractRunTests.lineNumber:(Ljava/lang/String;)Ljava/lang/CharSequence;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
        39: .line 195
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "*******************"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        40: .line 197
      StackMap locals: lombok.AbstractRunTests java.lang.String lombok.LombokTestSource java.lang.String java.util.LinkedHashSet int int java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            getfield lombok.AbstractRunTests.dumpActualFilesHere:Ljava/io/File;
            ifnull 42
        41: .line 198
            new java.io.File
            dup
            aload 0 /* this */
            getfield lombok.AbstractRunTests.dumpActualFilesHere:Ljava/io/File;
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".messages"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            aload 4 /* actualMessages */
            invokestatic lombok.AbstractRunTests.dumpToFile:(Ljava/io/File;Ljava/util/Collection;)V
        42: .line 200
      StackMap locals:
      StackMap stack:
            aload 7 /* e */
            athrow
        end local 7 // java.lang.Throwable e
        43: .line 202
      StackMap locals:
      StackMap stack:
            return
        end local 6 // boolean skipCompareContent
        end local 5 // boolean printErrors
        end local 4 // java.util.LinkedHashSet actualMessages
        end local 3 // java.lang.String actualFile
        end local 2 // lombok.LombokTestSource expected
        end local 1 // java.lang.String name
        end local 0 // lombok.AbstractRunTests this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   44     0                this  Llombok/AbstractRunTests;
            0   44     1                name  Ljava/lang/String;
            0   44     2            expected  Llombok/LombokTestSource;
            0   44     3          actualFile  Ljava/lang/String;
            0   44     4      actualMessages  Ljava/util/LinkedHashSet<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;
            0   44     5         printErrors  Z
            0   44     6  skipCompareContent  Z
            4   21     7                   e  Ljava/lang/Throwable;
           15   16     8       actualMessage  Llombok/javac/CapturingDiagnosticListener$CompilerMessage;
           24   43     7                   e  Ljava/lang/Throwable;
           30   31     8     expectedMessage  Llombok/CompilerMessageMatcher;
           35   36     8       actualMessage  Llombok/javac/CapturingDiagnosticListener$CompilerMessage;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Throwable
          21    22      23  Class java.lang.Throwable
    Exceptions:
      throws java.lang.Throwable
    Signature: (Ljava/lang/String;Llombok/LombokTestSource;Ljava/lang/String;Ljava/util/LinkedHashSet<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;ZZ)V
    MethodParameters:
                    Name  Flags
      name                
      expected            
      actualFile          
      actualMessages      
      printErrors         
      skipCompareContent  

  private java.lang.CharSequence lineNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/CharSequence;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // lombok.AbstractRunTests this
        start local 1 // java.lang.String content
         0: .line 205
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* out */
        start local 2 // java.lang.StringBuilder out
         1: .line 206
            iconst_0
            istore 3 /* pos */
        start local 3 // int pos
         2: .line 207
            iconst_1
            istore 4 /* ln */
        start local 4 // int ln
         3: .line 209
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            aload 2 /* out */
            ldc "%4d "
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 4 /* ln */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 210
            aload 1 /* content */
            bipush 10
            iload 3 /* pos */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 5 /* idx */
        start local 5 // int idx
         5: .line 211
            iload 5 /* idx */
            iconst_m1
            if_icmpne 7
         6: .line 212
            aload 2 /* out */
            aload 1 /* content */
            iload 3 /* pos */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            areturn
         7: .line 214
      StackMap locals: int
      StackMap stack:
            aload 2 /* out */
            aload 1 /* content */
            iload 3 /* pos */
            iload 5 /* idx */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 215
            iinc 4 /* ln */ 1
         9: .line 216
            iload 5 /* idx */
            iconst_1
            iadd
            istore 3 /* pos */
        end local 5 // int idx
        10: .line 208
            goto 3
        end local 4 // int ln
        end local 3 // int pos
        end local 2 // java.lang.StringBuilder out
        end local 1 // java.lang.String content
        end local 0 // lombok.AbstractRunTests this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Llombok/AbstractRunTests;
            0   11     1  content  Ljava/lang/String;
            1   11     2      out  Ljava/lang/StringBuilder;
            2   11     3      pos  I
            3   11     4       ln  I
            5   10     5      idx  I
    MethodParameters:
         Name  Flags
      content  

  private static void compareMessages(java.lang.String, lombok.core.LombokImmutableList<lombok.CompilerMessageMatcher>, java.util.LinkedHashSet<lombok.javac.CapturingDiagnosticListener$CompilerMessage>);
    descriptor: (Ljava/lang/String;Llombok/core/LombokImmutableList;Ljava/util/LinkedHashSet;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 235
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe method fail(String) is undefined for the type AbstractRunTests\n\tThe method fail(String) is undefined for the type AbstractRunTests\n\tThe method fail(String) is undefined for the type AbstractRunTests\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: (Ljava/lang/String;Llombok/core/LombokImmutableList<Llombok/CompilerMessageMatcher;>;Ljava/util/LinkedHashSet<Llombok/javac/CapturingDiagnosticListener$CompilerMessage;>;)V
    MethodParameters:
          Name  Flags
      name      
      expected  
      actual    

  private static void compareContent(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 266
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tAssert cannot be resolved\n\tThe method assertEquals(String, String, String) is undefined for the type AbstractRunTests\n\tThe method fail(String) is undefined for the type AbstractRunTests\n\tThe method fail(String) is undefined for the type AbstractRunTests\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
              Name  Flags
      name          
      expectedFile  
      actualFile    

  private static java.lang.String trimRight(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String in
         0: .line 283
            aload 0 /* in */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 1 /* endIdx */
        start local 1 // int endIdx
         1: .line 284
            goto 3
         2: .line 285
      StackMap locals: int
      StackMap stack:
            iinc 1 /* endIdx */ -1
         3: .line 284
      StackMap locals:
      StackMap stack:
            iload 1 /* endIdx */
            iconst_m1
            if_icmple 4
            aload 0 /* in */
            iload 1 /* endIdx */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 2
         4: .line 288
      StackMap locals:
      StackMap stack:
            aload 0 /* in */
            iconst_0
            iload 1 /* endIdx */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 1 // int endIdx
        end local 0 // java.lang.String in
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0      in  Ljava/lang/String;
            1    5     1  endIdx  I
    MethodParameters:
      Name  Flags
      in    

  private static java.lang.String[] removeBlanks(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // java.lang.String[] in
         0: .line 292
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* out */
        start local 1 // java.util.List out
         1: .line 293
            aload 0 /* in */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 5
      StackMap locals: java.lang.String[] java.util.List top int int java.lang.String[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* s */
        start local 2 // java.lang.String s
         3: .line 294
            aload 2 /* s */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 4
            aload 1 /* out */
            aload 2 /* s */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.lang.String s
         4: .line 293
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         5: iload 3
            iload 4
            if_icmplt 2
         6: .line 296
            aload 1 /* out */
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 1 // java.util.List out
        end local 0 // java.lang.String[] in
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0    in  [Ljava/lang/String;
            1    7     1   out  Ljava/util/List<Ljava/lang/String;>;
            3    4     2     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      in    
}
SourceFile: "AbstractRunTests.java"
NestMembers:
  lombok.AbstractRunTests$1  lombok.AbstractRunTests$1$1
InnerClasses:
  lombok.AbstractRunTests$1
  public abstract FileTester = lombok.DirectoryRunner$FileTester of lombok.DirectoryRunner
  public abstract TestParams = lombok.DirectoryRunner$TestParams of lombok.DirectoryRunner
  public LoaderLoader = lombok.core.configuration.ConfigurationKeysLoader$LoaderLoader of lombok.core.configuration.ConfigurationKeysLoader
  public final CompilerMessage = lombok.javac.CapturingDiagnosticListener$CompilerMessage of lombok.javac.CapturingDiagnosticListener