public class lombok.eclipse.HandlerLibrary
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: lombok.eclipse.HandlerLibrary
  super_class: java.lang.Object
{
  private lombok.core.TypeLibrary typeLibrary;
    descriptor: Llombok/core/TypeLibrary;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Map<java.lang.String, lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer<?>> annotationHandlers;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Llombok/eclipse/HandlerLibrary$AnnotationHandlerContainer<*>;>;

  private java.util.Collection<lombok.eclipse.HandlerLibrary$VisitorContainer> visitorHandlers;
    descriptor: Ljava/util/Collection;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Collection<Llombok/eclipse/HandlerLibrary$VisitorContainer;>;

  private java.util.SortedSet<java.lang.Long> priorities;
    descriptor: Ljava/util/SortedSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/SortedSet<Ljava/lang/Long;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // lombok.eclipse.HandlerLibrary this
         0: .line 62
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 66
            aload 0 /* this */
            new lombok.core.TypeLibrary
            dup
            invokespecial lombok.core.TypeLibrary.<init>:()V
            putfield lombok.eclipse.HandlerLibrary.typeLibrary:Llombok/core/TypeLibrary;
         2: .line 124
            aload 0 /* this */
         3: .line 125
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield lombok.eclipse.HandlerLibrary.annotationHandlers:Ljava/util/Map;
         4: .line 127
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield lombok.eclipse.HandlerLibrary.visitorHandlers:Ljava/util/Collection;
         5: .line 63
            invokestatic lombok.core.configuration.ConfigurationKeysLoader$LoaderLoader.loadAllConfigurationKeys:()V
         6: .line 64
            return
        end local 0 // lombok.eclipse.HandlerLibrary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Llombok/eclipse/HandlerLibrary;

  public static lombok.eclipse.HandlerLibrary load();
    descriptor: ()Llombok/eclipse/HandlerLibrary;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 135
            new lombok.eclipse.HandlerLibrary
            dup
            invokespecial lombok.eclipse.HandlerLibrary.<init>:()V
            astore 0 /* lib */
        start local 0 // lombok.eclipse.HandlerLibrary lib
         1: .line 137
            aload 0 /* lib */
            invokestatic lombok.eclipse.HandlerLibrary.loadAnnotationHandlers:(Llombok/eclipse/HandlerLibrary;)V
         2: .line 138
            aload 0 /* lib */
            invokestatic lombok.eclipse.HandlerLibrary.loadVisitorHandlers:(Llombok/eclipse/HandlerLibrary;)V
         3: .line 140
            aload 0 /* lib */
            invokevirtual lombok.eclipse.HandlerLibrary.calculatePriorities:()V
         4: .line 142
            aload 0 /* lib */
            areturn
        end local 0 // lombok.eclipse.HandlerLibrary lib
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    5     0   lib  Llombok/eclipse/HandlerLibrary;

  public java.util.SortedSet<java.lang.Long> getPriorities();
    descriptor: ()Ljava/util/SortedSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // lombok.eclipse.HandlerLibrary this
         0: .line 148
            aload 0 /* this */
            getfield lombok.eclipse.HandlerLibrary.priorities:Ljava/util/SortedSet;
            areturn
        end local 0 // lombok.eclipse.HandlerLibrary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Llombok/eclipse/HandlerLibrary;
    Signature: ()Ljava/util/SortedSet<Ljava/lang/Long;>;

  private void calculatePriorities();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // lombok.eclipse.HandlerLibrary this
         0: .line 152
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            astore 1 /* set */
        start local 1 // java.util.SortedSet set
         1: .line 153
            aload 0 /* this */
            getfield lombok.eclipse.HandlerLibrary.annotationHandlers:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: lombok.eclipse.HandlerLibrary java.util.SortedSet top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer
            astore 2 /* container */
        start local 2 // lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer container
         3: aload 1 /* set */
            aload 2 /* container */
            invokevirtual lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer.getPriority:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.SortedSet.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer container
      StackMap locals:
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 154
            aload 0 /* this */
            getfield lombok.eclipse.HandlerLibrary.visitorHandlers:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 8
      StackMap locals:
      StackMap stack:
         6: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.eclipse.HandlerLibrary$VisitorContainer
            astore 2 /* container */
        start local 2 // lombok.eclipse.HandlerLibrary$VisitorContainer container
         7: aload 1 /* set */
            aload 2 /* container */
            invokevirtual lombok.eclipse.HandlerLibrary$VisitorContainer.getPriority:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.SortedSet.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // lombok.eclipse.HandlerLibrary$VisitorContainer container
      StackMap locals:
      StackMap stack:
         8: aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 155
            aload 0 /* this */
            aload 1 /* set */
            invokestatic java.util.Collections.unmodifiableSortedSet:(Ljava/util/SortedSet;)Ljava/util/SortedSet;
            putfield lombok.eclipse.HandlerLibrary.priorities:Ljava/util/SortedSet;
        10: .line 156
            return
        end local 1 // java.util.SortedSet set
        end local 0 // lombok.eclipse.HandlerLibrary this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Llombok/eclipse/HandlerLibrary;
            1   11     1        set  Ljava/util/SortedSet<Ljava/lang/Long;>;
            3    4     2  container  Llombok/eclipse/HandlerLibrary$AnnotationHandlerContainer<*>;
            7    8     2  container  Llombok/eclipse/HandlerLibrary$VisitorContainer;

  private static void loadAnnotationHandlers(lombok.eclipse.HandlerLibrary);
    descriptor: (Llombok/eclipse/HandlerLibrary;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 168
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe method error(CompilationUnitDeclaration, String, Throwable) from the type EclipseHandlerUtil refers to the missing type CompilationUnitDeclaration\n\tThe method error(CompilationUnitDeclaration, String, Throwable) from the type EclipseHandlerUtil refers to the missing type CompilationUnitDeclaration\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      lib   

  private static void loadVisitorHandlers(lombok.eclipse.HandlerLibrary);
    descriptor: (Llombok/eclipse/HandlerLibrary;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // lombok.eclipse.HandlerLibrary lib
         0: .line 183
            ldc Llombok/eclipse/EclipseASTVisitor;
            ldc Llombok/eclipse/EclipseASTVisitor;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic lombok.core.SpiLoadUtil.findServices:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: lombok.eclipse.HandlerLibrary top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast lombok.eclipse.EclipseASTVisitor
            astore 1 /* visitor */
        start local 1 // lombok.eclipse.EclipseASTVisitor visitor
         2: .line 184
            aload 0 /* lib */
            getfield lombok.eclipse.HandlerLibrary.visitorHandlers:Ljava/util/Collection;
            new lombok.eclipse.HandlerLibrary$VisitorContainer
            dup
            aload 1 /* visitor */
            invokespecial lombok.eclipse.HandlerLibrary$VisitorContainer.<init>:(Llombok/eclipse/EclipseASTVisitor;)V
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 1 // lombok.eclipse.EclipseASTVisitor visitor
         3: .line 183
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 186
            goto 7
      StackMap locals: lombok.eclipse.HandlerLibrary
      StackMap stack: java.lang.Throwable
         5: astore 1 /* t */
        start local 1 // java.lang.Throwable t
         6: .line 187
            aload 1 /* t */
            invokestatic lombok.Lombok.sneakyThrow:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // java.lang.Throwable t
         7: .line 189
      StackMap locals:
      StackMap stack:
            return
        end local 0 // lombok.eclipse.HandlerLibrary lib
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0      lib  Llombok/eclipse/HandlerLibrary;
            2    3     1  visitor  Llombok/eclipse/EclipseASTVisitor;
            6    7     1        t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     4       5  Class java.lang.Throwable
    MethodParameters:
      Name  Flags
      lib   

  boolean checkAndSetHandled(ASTNode);
    descriptor: (LASTNode;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // lombok.eclipse.HandlerLibrary this
         0: .line 191
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tASTNode cannot be resolved to a type\n\tASTNode cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // lombok.eclipse.HandlerLibrary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Llombok/eclipse/HandlerLibrary;
    MethodParameters:
      Name  Flags
      node  

  boolean needsHandling(ASTNode);
    descriptor: (LASTNode;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // lombok.eclipse.HandlerLibrary this
         0: .line 195
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tASTNode cannot be resolved to a type\n\tASTNode cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // lombok.eclipse.HandlerLibrary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Llombok/eclipse/HandlerLibrary;
    MethodParameters:
      Name  Flags
      node  

  public long handleAnnotation(CompilationUnitDeclaration, lombok.eclipse.EclipseNode, org.eclipse.jdt.internal.compiler.ast.Annotation, long);
    descriptor: (LCompilationUnitDeclaration;Llombok/eclipse/EclipseNode;Lorg/eclipse/jdt/internal/compiler/ast/Annotation;J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // lombok.eclipse.HandlerLibrary this
         0: .line 218
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tCompilationUnitDeclaration cannot be resolved to a type\n\torg.eclipse cannot be resolved to a type\n\tTypeReference cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // lombok.eclipse.HandlerLibrary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Llombok/eclipse/HandlerLibrary;
    MethodParameters:
                Name  Flags
      ast             
      annotationNode  
      annotation      
      priority        

  public long callASTVisitors(lombok.eclipse.EclipseAST, long, boolean);
    descriptor: (Llombok/eclipse/EclipseAST;JZ)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // lombok.eclipse.HandlerLibrary this
         0: .line 258
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe method error(CompilationUnitDeclaration, String, Throwable) from the type EclipseHandlerUtil refers to the missing type CompilationUnitDeclaration\n\tCompilationUnitDeclaration cannot be resolved to a type\n\tThe method get() from the type LombokNode<EclipseAST,EclipseNode,ASTNode> refers to the missing type ASTNode\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // lombok.eclipse.HandlerLibrary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Llombok/eclipse/HandlerLibrary;
    MethodParameters:
                 Name  Flags
      ast              
      priority         
      isCompleteParse  
}
SourceFile: "HandlerLibrary.java"
NestMembers:
  lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer  lombok.eclipse.HandlerLibrary$VisitorContainer
InnerClasses:
  public LoaderLoader = lombok.core.configuration.ConfigurationKeysLoader$LoaderLoader of lombok.core.configuration.ConfigurationKeysLoader
  private AnnotationHandlerContainer = lombok.eclipse.HandlerLibrary$AnnotationHandlerContainer of lombok.eclipse.HandlerLibrary
  private VisitorContainer = lombok.eclipse.HandlerLibrary$VisitorContainer of lombok.eclipse.HandlerLibrary