class org.eclipse.jdt.internal.launching.JREContainer$RuleEntry
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jdt.internal.launching.JREContainer$RuleEntry
  super_class: java.lang.Object
{
  private org.eclipse.jdt.core.IAccessRule[][] fRules;
    descriptor: [[Lorg/eclipse/jdt/core/IAccessRule;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.core.IClasspathEntry[] fEntries;
    descriptor: [Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.eclipse.jdt.core.IAccessRule[][], org.eclipse.jdt.core.IClasspathEntry[]);
    descriptor: ([[Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IClasspathEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.launching.JREContainer$RuleEntry this
        start local 1 // org.eclipse.jdt.core.IAccessRule[][] rules
        start local 2 // org.eclipse.jdt.core.IClasspathEntry[] entries
         0: .line 131
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 123
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fRules:[[Lorg/eclipse/jdt/core/IAccessRule;
         2: .line 124
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fEntries:[Lorg/eclipse/jdt/core/IClasspathEntry;
         3: .line 132
            aload 0 /* this */
            aload 1 /* rules */
            putfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fRules:[[Lorg/eclipse/jdt/core/IAccessRule;
         4: .line 133
            aload 0 /* this */
            aload 2 /* entries */
            putfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fEntries:[Lorg/eclipse/jdt/core/IClasspathEntry;
         5: .line 134
            return
        end local 2 // org.eclipse.jdt.core.IClasspathEntry[] entries
        end local 1 // org.eclipse.jdt.core.IAccessRule[][] rules
        end local 0 // org.eclipse.jdt.internal.launching.JREContainer$RuleEntry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/eclipse/jdt/internal/launching/JREContainer$RuleEntry;
            0    6     1    rules  [[Lorg/eclipse/jdt/core/IAccessRule;
            0    6     2  entries  [Lorg/eclipse/jdt/core/IClasspathEntry;
    MethodParameters:
         Name  Flags
      rules    
      entries  

  public org.eclipse.jdt.core.IClasspathEntry[] getClasspathEntries();
    descriptor: ()[Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.launching.JREContainer$RuleEntry this
         0: .line 141
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fEntries:[Lorg/eclipse/jdt/core/IClasspathEntry;
            areturn
        end local 0 // org.eclipse.jdt.internal.launching.JREContainer$RuleEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/launching/JREContainer$RuleEntry;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.launching.JREContainer$RuleEntry this
        start local 1 // java.lang.Object obj
         0: .line 149
            aconst_null
            astore 2 /* rules */
        start local 2 // org.eclipse.jdt.core.IAccessRule[][] rules
         1: .line 150
            aload 1 /* obj */
            instanceof org.eclipse.jdt.internal.launching.JREContainer$RuleEntry
            ifeq 3
         2: .line 151
            aload 1 /* obj */
            checkcast org.eclipse.jdt.internal.launching.JREContainer$RuleEntry
            getfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fRules:[[Lorg/eclipse/jdt/core/IAccessRule;
            astore 2 /* rules */
         3: .line 153
      StackMap locals: org.eclipse.jdt.core.IAccessRule[][]
      StackMap stack:
            aload 1 /* obj */
            instanceof org.eclipse.jdt.core.IAccessRule[][]
            ifeq 5
         4: .line 154
            aload 1 /* obj */
            checkcast org.eclipse.jdt.core.IAccessRule[][]
            astore 2 /* rules */
         5: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fRules:[[Lorg/eclipse/jdt/core/IAccessRule;
            aload 2 /* rules */
            if_acmpne 7
         6: .line 157
            iconst_1
            ireturn
         7: .line 159
      StackMap locals:
      StackMap stack:
            aload 2 /* rules */
            ifnull 16
         8: .line 160
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fRules:[[Lorg/eclipse/jdt/core/IAccessRule;
            arraylength
            aload 2 /* rules */
            arraylength
            if_icmpne 16
         9: .line 161
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        10: goto 14
        11: .line 162
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fRules:[[Lorg/eclipse/jdt/core/IAccessRule;
            iload 3 /* i */
            aaload
            aload 2 /* rules */
            iload 3 /* i */
            aaload
            invokestatic org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.rulesEqual:([Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IAccessRule;)Z
            ifne 13
        12: .line 163
            iconst_0
            ireturn
        13: .line 161
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.launching.JREContainer$RuleEntry.fRules:[[Lorg/eclipse/jdt/core/IAccessRule;
            arraylength
            if_icmplt 11
        end local 3 // int i
        15: .line 166
            iconst_1
            ireturn
        16: .line 169
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.eclipse.jdt.core.IAccessRule[][] rules
        end local 1 // java.lang.Object obj
        end local 0 // org.eclipse.jdt.internal.launching.JREContainer$RuleEntry this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   this  Lorg/eclipse/jdt/internal/launching/JREContainer$RuleEntry;
            0   17     1    obj  Ljava/lang/Object;
            1   17     2  rules  [[Lorg/eclipse/jdt/core/IAccessRule;
           10   15     3      i  I
    MethodParameters:
      Name  Flags
      obj   

  private static boolean rulesEqual(org.eclipse.jdt.core.IAccessRule[], org.eclipse.jdt.core.IAccessRule[]);
    descriptor: ([Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IAccessRule;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.core.IAccessRule[] a
        start local 1 // org.eclipse.jdt.core.IAccessRule[] b
         0: .line 180
            aload 0 /* a */
            aload 1 /* b */
            if_acmpne 2
         1: .line 181
            iconst_1
            ireturn
         2: .line 183
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            arraylength
            aload 1 /* b */
            arraylength
            if_icmpeq 4
         3: .line 184
            iconst_0
            ireturn
         4: .line 186
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* j */
        start local 2 // int j
         5: goto 9
         6: .line 187
      StackMap locals: int
      StackMap stack:
            aload 0 /* a */
            iload 2 /* j */
            aaload
            aload 1 /* b */
            iload 2 /* j */
            aaload
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 8
         7: .line 188
            iconst_0
            ireturn
         8: .line 186
      StackMap locals:
      StackMap stack:
            iinc 2 /* j */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* j */
            aload 0 /* a */
            arraylength
            if_icmplt 6
        end local 2 // int j
        10: .line 191
            iconst_1
            ireturn
        end local 1 // org.eclipse.jdt.core.IAccessRule[] b
        end local 0 // org.eclipse.jdt.core.IAccessRule[] a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     a  [Lorg/eclipse/jdt/core/IAccessRule;
            0   11     1     b  [Lorg/eclipse/jdt/core/IAccessRule;
            5   10     2     j  I
    MethodParameters:
      Name  Flags
      a     
      b     
}
SourceFile: "JREContainer.java"
NestHost: org.eclipse.jdt.internal.launching.JREContainer
InnerClasses:
  RuleEntry = org.eclipse.jdt.internal.launching.JREContainer$RuleEntry of org.eclipse.jdt.internal.launching.JREContainer