public class org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant implements org.eclipse.jdt.launching.environments.IAccessRuleParticipant
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant
  super_class: java.lang.Object
{
  private static java.util.Map<java.lang.String, org.eclipse.jdt.core.IAccessRule[][]> fgRules;
    descriptor: Ljava/util/Map;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: Ljava/util/Map<Ljava/lang/String;[[Lorg/eclipse/jdt/core/IAccessRule;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 43
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant.fgRules:Ljava/util/Map;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant this
         0: .line 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/launching/environments/DefaultAccessRuleParticipant;

  public org.eclipse.jdt.core.IAccessRule[][] getAccessRules(org.eclipse.jdt.launching.environments.IExecutionEnvironment, org.eclipse.jdt.launching.IVMInstall, org.eclipse.jdt.launching.LibraryLocation[], org.eclipse.jdt.core.IJavaProject);
    descriptor: (Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;Lorg/eclipse/jdt/launching/IVMInstall;[Lorg/eclipse/jdt/launching/LibraryLocation;Lorg/eclipse/jdt/core/IJavaProject;)[[Lorg/eclipse/jdt/core/IAccessRule;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=10, args_size=5
        start local 0 // org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant this
        start local 1 // org.eclipse.jdt.launching.environments.IExecutionEnvironment environment
        start local 2 // org.eclipse.jdt.launching.IVMInstall vm
        start local 3 // org.eclipse.jdt.launching.LibraryLocation[] libraries
        start local 4 // org.eclipse.jdt.core.IJavaProject project
         0: .line 50
            aload 1 /* environment */
            invokeinterface org.eclipse.jdt.launching.environments.IExecutionEnvironment.getComplianceOptions:()Ljava/util/Map;
            astore 5 /* complianceOptions */
        start local 5 // java.util.Map complianceOptions
         1: .line 51
            aload 5 /* complianceOptions */
            ifnull 5
         2: .line 52
            aload 5 /* complianceOptions */
            ldc "org.eclipse.jdt.core.compiler.compliance"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* compliance */
        start local 6 // java.lang.String compliance
         3: .line 53
            aload 6 /* compliance */
            ldc "9"
            invokestatic org.eclipse.jdt.core.JavaCore.compareJavaVersions:(Ljava/lang/String;Ljava/lang/String;)I
            iflt 5
         4: .line 54
            iconst_0
            anewarray org.eclipse.jdt.core.IAccessRule[]
            areturn
        end local 6 // java.lang.String compliance
         5: .line 57
      StackMap locals: java.util.Map
      StackMap stack:
            aconst_null
            astore 6 /* allRules */
        start local 6 // org.eclipse.jdt.core.IAccessRule[][] allRules
         6: .line 58
            getstatic org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant.fgRules:Ljava/util/Map;
            aload 1 /* environment */
            invokeinterface org.eclipse.jdt.launching.environments.IExecutionEnvironment.getId:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.IAccessRule[][]
            astore 6 /* allRules */
         7: .line 59
            aload 6 /* allRules */
            ifnull 8
            aload 6 /* allRules */
            arraylength
            aload 3 /* libraries */
            arraylength
            if_icmpeq 27
         8: .line 61
      StackMap locals: org.eclipse.jdt.core.IAccessRule[][]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* environment */
            invokevirtual org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant.retrieveSystemPackages:(Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;)[Ljava/lang/String;
            astore 7 /* packages */
        start local 7 // java.lang.String[] packages
         9: .line 62
            aconst_null
            astore 8 /* packageRules */
        start local 8 // org.eclipse.jdt.core.IAccessRule[] packageRules
        10: .line 63
            aload 7 /* packages */
            arraylength
            ifle 19
        11: .line 64
            aload 7 /* packages */
            arraylength
            iconst_1
            iadd
            anewarray org.eclipse.jdt.core.IAccessRule
            astore 8 /* packageRules */
        12: .line 65
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        13: goto 16
        14: .line 66
      StackMap locals: java.lang.String[] org.eclipse.jdt.core.IAccessRule[] int
      StackMap stack:
            aload 8 /* packageRules */
            iload 9 /* i */
            new org.eclipse.core.runtime.Path
            dup
            aload 7 /* packages */
            iload 9 /* i */
            aaload
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            iconst_0
            invokestatic org.eclipse.jdt.core.JavaCore.newAccessRule:(Lorg/eclipse/core/runtime/IPath;I)Lorg/eclipse/jdt/core/IAccessRule;
            aastore
        15: .line 65
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 9 /* i */
            aload 7 /* packages */
            arraylength
            if_icmplt 14
        end local 9 // int i
        17: .line 69
            aload 8 /* packageRules */
            aload 7 /* packages */
            arraylength
            new org.eclipse.core.runtime.Path
            dup
            ldc "**/*"
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            sipush 257
            invokestatic org.eclipse.jdt.core.JavaCore.newAccessRule:(Lorg/eclipse/core/runtime/IPath;I)Lorg/eclipse/jdt/core/IAccessRule;
            aastore
        18: .line 70
            goto 20
        19: .line 71
      StackMap locals:
      StackMap stack:
            iconst_0
            anewarray org.eclipse.jdt.core.IAccessRule
            astore 8 /* packageRules */
        20: .line 73
      StackMap locals:
      StackMap stack:
            aload 3 /* libraries */
            arraylength
            anewarray org.eclipse.jdt.core.IAccessRule[]
            astore 6 /* allRules */
        21: .line 74
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        22: goto 25
        23: .line 75
      StackMap locals: int
      StackMap stack:
            aload 6 /* allRules */
            iload 9 /* i */
            aload 8 /* packageRules */
            aastore
        24: .line 74
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 9 /* i */
            aload 6 /* allRules */
            arraylength
            if_icmplt 23
        end local 9 // int i
        26: .line 77
            getstatic org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant.fgRules:Ljava/util/Map;
            aload 1 /* environment */
            invokeinterface org.eclipse.jdt.launching.environments.IExecutionEnvironment.getId:()Ljava/lang/String;
            aload 6 /* allRules */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // org.eclipse.jdt.core.IAccessRule[] packageRules
        end local 7 // java.lang.String[] packages
        27: .line 79
      StackMap locals:
      StackMap stack:
            aload 6 /* allRules */
            areturn
        end local 6 // org.eclipse.jdt.core.IAccessRule[][] allRules
        end local 5 // java.util.Map complianceOptions
        end local 4 // org.eclipse.jdt.core.IJavaProject project
        end local 3 // org.eclipse.jdt.launching.LibraryLocation[] libraries
        end local 2 // org.eclipse.jdt.launching.IVMInstall vm
        end local 1 // org.eclipse.jdt.launching.environments.IExecutionEnvironment environment
        end local 0 // org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   28     0               this  Lorg/eclipse/jdt/internal/launching/environments/DefaultAccessRuleParticipant;
            0   28     1        environment  Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;
            0   28     2                 vm  Lorg/eclipse/jdt/launching/IVMInstall;
            0   28     3          libraries  [Lorg/eclipse/jdt/launching/LibraryLocation;
            0   28     4            project  Lorg/eclipse/jdt/core/IJavaProject;
            1   28     5  complianceOptions  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            3    5     6         compliance  Ljava/lang/String;
            6   28     6           allRules  [[Lorg/eclipse/jdt/core/IAccessRule;
            9   27     7           packages  [Ljava/lang/String;
           10   27     8       packageRules  [Lorg/eclipse/jdt/core/IAccessRule;
           13   17     9                  i  I
           22   26     9                  i  I
    MethodParameters:
             Name  Flags
      environment  
      vm           
      libraries    
      project      

  private java.lang.String[] retrieveSystemPackages(org.eclipse.jdt.launching.environments.IExecutionEnvironment);
    descriptor: (Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;)[Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant this
        start local 1 // org.eclipse.jdt.launching.environments.IExecutionEnvironment environment
         0: .line 83
            aload 1 /* environment */
            invokeinterface org.eclipse.jdt.launching.environments.IExecutionEnvironment.getProfileProperties:()Ljava/util/Properties;
            astore 2 /* profile */
        start local 2 // java.util.Properties profile
         1: .line 84
            aload 2 /* profile */
            ifnull 13
         2: .line 85
            aload 2 /* profile */
            ldc "org.osgi.framework.system.packages"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* packages */
        start local 3 // java.lang.String packages
         3: .line 86
            aload 3 /* packages */
            ifnull 13
         4: .line 87
            new java.util.StringTokenizer
            dup
            aload 3 /* packages */
            ldc ","
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 4 /* tokenizer */
        start local 4 // java.util.StringTokenizer tokenizer
         5: .line 88
            aload 4 /* tokenizer */
            invokevirtual java.util.StringTokenizer.countTokens:()I
            iconst_1
            iadd
            anewarray java.lang.String
            astore 5 /* result */
        start local 5 // java.lang.String[] result
         6: .line 89
            aload 5 /* result */
            iconst_0
            ldc "java.**"
            aastore
         7: .line 90
            iconst_1
            istore 6 /* i */
        start local 6 // int i
         8: goto 11
         9: .line 91
      StackMap locals: org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant org.eclipse.jdt.launching.environments.IExecutionEnvironment java.util.Properties java.lang.String java.util.StringTokenizer java.lang.String[] int
      StackMap stack:
            aload 5 /* result */
            iload 6 /* i */
            new java.lang.StringBuilder
            dup
            aload 4 /* tokenizer */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".*"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
        10: .line 90
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            aload 5 /* result */
            arraylength
            if_icmplt 9
        end local 6 // int i
        12: .line 93
            aload 5 /* result */
            areturn
        end local 5 // java.lang.String[] result
        end local 4 // java.util.StringTokenizer tokenizer
        end local 3 // java.lang.String packages
        13: .line 96
      StackMap locals: org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant org.eclipse.jdt.launching.environments.IExecutionEnvironment java.util.Properties
      StackMap stack:
            iconst_0
            anewarray java.lang.String
            areturn
        end local 2 // java.util.Properties profile
        end local 1 // org.eclipse.jdt.launching.environments.IExecutionEnvironment environment
        end local 0 // org.eclipse.jdt.internal.launching.environments.DefaultAccessRuleParticipant this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/eclipse/jdt/internal/launching/environments/DefaultAccessRuleParticipant;
            0   14     1  environment  Lorg/eclipse/jdt/launching/environments/IExecutionEnvironment;
            1   14     2      profile  Ljava/util/Properties;
            3   13     3     packages  Ljava/lang/String;
            5   13     4    tokenizer  Ljava/util/StringTokenizer;
            6   13     5       result  [Ljava/lang/String;
            8   12     6            i  I
    MethodParameters:
             Name  Flags
      environment  
}
SourceFile: "DefaultAccessRuleParticipant.java"