class org.eclipse.core.internal.preferences.PreferencesService$3 implements org.eclipse.core.runtime.preferences.IPreferenceNodeVisitor
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.core.internal.preferences.PreferencesService$3
  super_class: java.lang.Object
{
  final org.eclipse.core.internal.preferences.PreferencesService this$0;
    descriptor: Lorg/eclipse/core/internal/preferences/PreferencesService;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final int val$baseLength;
    descriptor: I
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final java.lang.String[] val$excludesList;
    descriptor: [Ljava/lang/String;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.eclipse.core.internal.preferences.SortedProperties val$result;
    descriptor: Lorg/eclipse/core/internal/preferences/SortedProperties;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.eclipse.core.internal.preferences.PreferencesService, int, java.lang.String[], org.eclipse.core.internal.preferences.SortedProperties);
    descriptor: (Lorg/eclipse/core/internal/preferences/PreferencesService;I[Ljava/lang/String;Lorg/eclipse/core/internal/preferences/SortedProperties;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.eclipse.core.internal.preferences.PreferencesService$3 this
         0: .line 296
            aload 0 /* this */
            aload 1
            putfield org.eclipse.core.internal.preferences.PreferencesService$3.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 0 /* this */
            iload 2
            putfield org.eclipse.core.internal.preferences.PreferencesService$3.val$baseLength:I
            aload 0 /* this */
            aload 3
            putfield org.eclipse.core.internal.preferences.PreferencesService$3.val$excludesList:[Ljava/lang/String;
            aload 0 /* this */
            aload 4
            putfield org.eclipse.core.internal.preferences.PreferencesService$3.val$result:Lorg/eclipse/core/internal/preferences/SortedProperties;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.eclipse.core.internal.preferences.PreferencesService$3 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/core/internal/preferences/PreferencesService$3;
    MethodParameters:
                  Name  Flags
      this$0            final
      val$baseLength    final
      val$excludesList  final
      val$result        final

  public boolean visit(org.eclipse.core.runtime.preferences.IEclipsePreferences);
    descriptor: (Lorg/eclipse/core/runtime/preferences/IEclipsePreferences;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=15, args_size=2
        start local 0 // org.eclipse.core.internal.preferences.PreferencesService$3 this
        start local 1 // org.eclipse.core.runtime.preferences.IEclipsePreferences node
         0: .line 300
            aload 1 /* node */
            invokeinterface org.eclipse.core.runtime.preferences.IEclipsePreferences.absolutePath:()Ljava/lang/String;
            astore 2 /* absolutePath */
        start local 2 // java.lang.String absolutePath
         1: .line 301
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 2 /* absolutePath */
            invokevirtual org.eclipse.core.internal.preferences.PreferencesService.getScope:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* scope */
        start local 3 // java.lang.String scope
         2: .line 302
            ldc "default"
            aload 3 /* scope */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 303
            iconst_0
            ireturn
         4: .line 304
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 2 /* absolutePath */
            invokevirtual java.lang.String.length:()I
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.val$baseLength:I
            if_icmpgt 5
            ldc ""
            goto 6
      StackMap locals:
      StackMap stack:
         5: aload 2 /* absolutePath */
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.val$baseLength:I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic org.eclipse.core.internal.preferences.EclipsePreferences.makeRelative:(Ljava/lang/String;)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         6: astore 4 /* path */
        start local 4 // java.lang.String path
         7: .line 306
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.val$excludesList:[Ljava/lang/String;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 13
      StackMap locals: org.eclipse.core.internal.preferences.PreferencesService$3 org.eclipse.core.runtime.preferences.IEclipsePreferences java.lang.String java.lang.String java.lang.String top int int java.lang.String[]
      StackMap stack:
         8: aload 8
            iload 6
            aaload
            astore 5 /* exclude */
        start local 5 // java.lang.String exclude
         9: .line 307
            aload 5 /* exclude */
            invokestatic org.eclipse.core.internal.preferences.EclipsePreferences.makeRelative:(Ljava/lang/String;)Ljava/lang/String;
            astore 9 /* exclusion */
        start local 9 // java.lang.String exclusion
        10: .line 308
            aload 4 /* path */
            aload 9 /* exclusion */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 12
        11: .line 309
            iconst_0
            ireturn
        end local 9 // java.lang.String exclusion
        end local 5 // java.lang.String exclude
        12: .line 306
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        13: iload 6
            iload 7
            if_icmplt 8
        14: .line 311
            ldc "instance"
            aload 3 /* scope */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 5 /* needToAddVersion */
        start local 5 // boolean needToAddVersion
        15: .line 313
            aload 1 /* node */
            invokeinterface org.eclipse.core.runtime.preferences.IEclipsePreferences.keys:()[Ljava/lang/String;
            astore 6 /* keys */
        start local 6 // java.lang.String[] keys
        16: .line 314
            aload 6 /* keys */
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 37
      StackMap locals: org.eclipse.core.internal.preferences.PreferencesService$3 org.eclipse.core.runtime.preferences.IEclipsePreferences java.lang.String java.lang.String java.lang.String int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        17: aload 10
            iload 8
            aaload
            astore 7 /* key */
        start local 7 // java.lang.String key
        18: .line 315
            iconst_0
            istore 11 /* ignore */
        start local 11 // boolean ignore
        19: .line 316
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        20: goto 24
        21: .line 317
      StackMap locals: org.eclipse.core.internal.preferences.PreferencesService$3 org.eclipse.core.runtime.preferences.IEclipsePreferences java.lang.String java.lang.String java.lang.String int java.lang.String[] java.lang.String int int java.lang.String[] int int
      StackMap stack:
            aload 4 /* path */
            aload 7 /* key */
            invokestatic org.eclipse.core.internal.preferences.EclipsePreferences.encodePath:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.val$excludesList:[Ljava/lang/String;
            iload 12 /* j */
            aaload
            invokestatic org.eclipse.core.internal.preferences.EclipsePreferences.makeRelative:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 23
        22: .line 318
            iconst_1
            istore 11 /* ignore */
        23: .line 316
      StackMap locals:
      StackMap stack:
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        24: iload 11 /* ignore */
            ifne 25
            iload 12 /* j */
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.val$excludesList:[Ljava/lang/String;
            arraylength
            if_icmplt 21
        end local 12 // int j
        25: .line 319
      StackMap locals:
      StackMap stack:
            iload 11 /* ignore */
            ifne 36
        26: .line 320
            aload 1 /* node */
            aload 7 /* key */
            aconst_null
            invokeinterface org.eclipse.core.runtime.preferences.IEclipsePreferences.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 12 /* value */
        start local 12 // java.lang.String value
        27: .line 321
            aload 12 /* value */
            ifnull 36
        28: .line 322
            iload 5 /* needToAddVersion */
            ifeq 35
        29: .line 323
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 2 /* absolutePath */
            invokevirtual org.eclipse.core.internal.preferences.PreferencesService.getBundleName:(Ljava/lang/String;)Ljava/lang/String;
            astore 13 /* bundle */
        start local 13 // java.lang.String bundle
        30: .line 324
            aload 13 /* bundle */
            ifnull 34
        31: .line 325
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 13 /* bundle */
            invokevirtual org.eclipse.core.internal.preferences.PreferencesService.getBundleVersion:(Ljava/lang/String;)Ljava/lang/String;
            astore 14 /* version */
        start local 14 // java.lang.String version
        32: .line 326
            aload 14 /* version */
            ifnull 34
        33: .line 327
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.val$result:Lorg/eclipse/core/internal/preferences/SortedProperties;
            new java.lang.StringBuilder
            dup
            bipush 64
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 13 /* bundle */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 14 /* version */
            invokevirtual org.eclipse.core.internal.preferences.SortedProperties.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 14 // java.lang.String version
        34: .line 329
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            iconst_0
            istore 5 /* needToAddVersion */
        end local 13 // java.lang.String bundle
        35: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$3.val$result:Lorg/eclipse/core/internal/preferences/SortedProperties;
            aload 2 /* absolutePath */
            aload 7 /* key */
            invokestatic org.eclipse.core.internal.preferences.EclipsePreferences.encodePath:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            aload 12 /* value */
            invokevirtual org.eclipse.core.internal.preferences.SortedProperties.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 12 // java.lang.String value
        end local 11 // boolean ignore
        end local 7 // java.lang.String key
        36: .line 314
      StackMap locals: org.eclipse.core.internal.preferences.PreferencesService$3 org.eclipse.core.runtime.preferences.IEclipsePreferences java.lang.String java.lang.String java.lang.String int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
            iinc 8 1
      StackMap locals:
      StackMap stack:
        37: iload 8
            iload 9
            if_icmplt 17
        38: .line 335
            iconst_1
            ireturn
        end local 6 // java.lang.String[] keys
        end local 5 // boolean needToAddVersion
        end local 4 // java.lang.String path
        end local 3 // java.lang.String scope
        end local 2 // java.lang.String absolutePath
        end local 1 // org.eclipse.core.runtime.preferences.IEclipsePreferences node
        end local 0 // org.eclipse.core.internal.preferences.PreferencesService$3 this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   39     0              this  Lorg/eclipse/core/internal/preferences/PreferencesService$3;
            0   39     1              node  Lorg/eclipse/core/runtime/preferences/IEclipsePreferences;
            1   39     2      absolutePath  Ljava/lang/String;
            2   39     3             scope  Ljava/lang/String;
            7   39     4              path  Ljava/lang/String;
            9   12     5           exclude  Ljava/lang/String;
           10   12     9         exclusion  Ljava/lang/String;
           15   39     5  needToAddVersion  Z
           16   39     6              keys  [Ljava/lang/String;
           18   36     7               key  Ljava/lang/String;
           19   36    11            ignore  Z
           20   25    12                 j  I
           27   36    12             value  Ljava/lang/String;
           30   35    13            bundle  Ljava/lang/String;
           32   34    14           version  Ljava/lang/String;
    Exceptions:
      throws org.osgi.service.prefs.BackingStoreException
    MethodParameters:
      Name  Flags
      node  
}
SourceFile: "PreferencesService.java"
EnclosingMethod: org.eclipse.core.internal.preferences.PreferencesService.convertToProperties:(Lorg/eclipse/core/runtime/preferences/IEclipsePreferences;[Ljava/lang/String;)Lorg/eclipse/core/internal/preferences/SortedProperties;
NestHost: org.eclipse.core.internal.preferences.PreferencesService
InnerClasses:
  org.eclipse.core.internal.preferences.PreferencesService$3