class org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1 implements java.util.Comparator<org.eclipse.jdt.launching.environments.IExecutionEnvironment>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1
  super_class: java.lang.Object
{
  final org.eclipse.jdt.internal.launching.environments.EnvironmentsManager this$0;
    descriptor: Lorg/eclipse/jdt/internal/launching/environments/EnvironmentsManager;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

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

  public int compare(org.eclipse.jdt.launching.environments.IExecutionEnvironment, org.eclipse.jdt.launching.environments.IExecutionEnvironment);
    descriptor: (Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1 this
        start local 1 // org.eclipse.jdt.launching.environments.IExecutionEnvironment o1
        start local 2 // org.eclipse.jdt.launching.environments.IExecutionEnvironment o2
         0: .line 238
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1.this$0:Lorg/eclipse/jdt/internal/launching/environments/EnvironmentsManager;
            aload 1 /* o1 */
            invokevirtual org.eclipse.jdt.internal.launching.environments.EnvironmentsManager.getExecutionEnvironmentCompliance:(Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;)Ljava/lang/String;
            astore 3 /* compliance1 */
        start local 3 // java.lang.String compliance1
         1: .line 239
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1.this$0:Lorg/eclipse/jdt/internal/launching/environments/EnvironmentsManager;
            aload 2 /* o2 */
            invokevirtual org.eclipse.jdt.internal.launching.environments.EnvironmentsManager.getExecutionEnvironmentCompliance:(Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;)Ljava/lang/String;
            astore 4 /* compliance2 */
        start local 4 // java.lang.String compliance2
         2: .line 240
            aload 3 /* compliance1 */
            aload 4 /* compliance2 */
            invokestatic org.eclipse.jdt.core.JavaCore.compareJavaVersions:(Ljava/lang/String;Ljava/lang/String;)I
            istore 5 /* result */
        start local 5 // int result
         3: .line 241
            iload 5 /* result */
            ifne 5
         4: .line 242
            aload 1 /* o1 */
            invokeinterface org.eclipse.jdt.launching.environments.IExecutionEnvironment.getId:()Ljava/lang/String;
            aload 2 /* o2 */
            invokeinterface org.eclipse.jdt.launching.environments.IExecutionEnvironment.getId:()Ljava/lang/String;
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
         5: .line 244
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            iload 5 /* result */
            ireturn
        end local 5 // int result
        end local 4 // java.lang.String compliance2
        end local 3 // java.lang.String compliance1
        end local 2 // org.eclipse.jdt.launching.environments.IExecutionEnvironment o2
        end local 1 // org.eclipse.jdt.launching.environments.IExecutionEnvironment o1
        end local 0 // org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1 this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/eclipse/jdt/internal/launching/environments/EnvironmentsManager$1;
            0    6     1           o1  Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;
            0    6     2           o2  Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;
            1    6     3  compliance1  Ljava/lang/String;
            2    6     4  compliance2  Ljava/lang/String;
            3    6     5       result  I
    MethodParameters:
      Name  Flags
      o1    
      o2    

  public int compare(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast org.eclipse.jdt.launching.environments.IExecutionEnvironment
            aload 2
            checkcast org.eclipse.jdt.launching.environments.IExecutionEnvironment
            invokevirtual org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1.compare:(Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/util/Comparator<Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;>;
SourceFile: "EnvironmentsManager.java"
EnclosingMethod: org.eclipse.jdt.internal.launching.environments.EnvironmentsManager.initializeExtensions:()V
NestHost: org.eclipse.jdt.internal.launching.environments.EnvironmentsManager
InnerClasses:
  org.eclipse.jdt.internal.launching.environments.EnvironmentsManager$1