class org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2 implements org.eclipse.jdt.internal.core.util.Util$Comparer
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2
  super_class: java.lang.Object
{
  final org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants this$1;
    descriptor: Lorg/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants);
    descriptor: (Lorg/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2 this
         0: .line 581
            aload 0 /* this */
            aload 1
            putfield org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2.this$1:Lorg/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$2;
    MethodParameters:
        Name  Flags
      this$0  final

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2 this
        start local 1 // java.lang.Object a
        start local 2 // java.lang.Object b
         0: .line 584
            aload 1 /* a */
            aload 2 /* b */
            if_acmpne 1
            iconst_0
            ireturn
         1: .line 585
      StackMap locals:
      StackMap stack:
            aload 1 /* a */
            checkcast org.eclipse.core.runtime.IConfigurationElement
            ldc "id"
            invokeinterface org.eclipse.core.runtime.IConfigurationElement.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* id */
        start local 3 // java.lang.String id
         2: .line 586
            aload 3 /* id */
            ifnonnull 3
            iconst_m1
            ireturn
         3: .line 587
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* b */
            checkcast org.eclipse.core.runtime.IConfigurationElement
            ldc "requires"
            invokeinterface org.eclipse.core.runtime.IConfigurationElement.getChildren:(Ljava/lang/String;)[Lorg/eclipse/core/runtime/IConfigurationElement;
            astore 4 /* requiredElements */
        start local 4 // org.eclipse.core.runtime.IConfigurationElement[] requiredElements
         4: .line 588
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: aload 4 /* requiredElements */
            arraylength
            istore 6 /* length */
        start local 6 // int length
         6: goto 11
         7: .line 589
      StackMap locals: org.eclipse.core.runtime.IConfigurationElement[] int int
      StackMap stack:
            aload 4 /* requiredElements */
            iload 5 /* i */
            aaload
            astore 7 /* required */
        start local 7 // org.eclipse.core.runtime.IConfigurationElement required
         8: .line 590
            aload 3 /* id */
            aload 7 /* required */
            ldc "id"
            invokeinterface org.eclipse.core.runtime.IConfigurationElement.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 591
            iconst_1
            ireturn
        end local 7 // org.eclipse.core.runtime.IConfigurationElement required
        10: .line 588
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* i */
            iload 6 /* length */
            if_icmplt 7
        end local 6 // int length
        end local 5 // int i
        12: .line 593
            iconst_m1
            ireturn
        end local 4 // org.eclipse.core.runtime.IConfigurationElement[] requiredElements
        end local 3 // java.lang.String id
        end local 2 // java.lang.Object b
        end local 1 // java.lang.Object a
        end local 0 // org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2 this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lorg/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$2;
            0   13     1                 a  Ljava/lang/Object;
            0   13     2                 b  Ljava/lang/Object;
            2   13     3                id  Ljava/lang/String;
            4   13     4  requiredElements  [Lorg/eclipse/core/runtime/IConfigurationElement;
            5   12     5                 i  I
            6   12     6            length  I
            8   10     7          required  Lorg/eclipse/core/runtime/IConfigurationElement;
    MethodParameters:
      Name  Flags
      a     
      b     
}
SourceFile: "JavaModelManager.java"
EnclosingMethod: org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants.sortParticipants:(Ljava/util/ArrayList;[Lorg/eclipse/core/runtime/IConfigurationElement;I)I
NestHost: org.eclipse.jdt.internal.core.JavaModelManager
InnerClasses:
  public CompilationParticipants = org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants of org.eclipse.jdt.internal.core.JavaModelManager
  org.eclipse.jdt.internal.core.JavaModelManager$CompilationParticipants$2
  public abstract Comparer = org.eclipse.jdt.internal.core.util.Util$Comparer of org.eclipse.jdt.internal.core.util.Util