class org.eclipse.core.internal.preferences.PreferencesService$8 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$8
  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 org.eclipse.core.runtime.MultiStatus val$result;
    descriptor: Lorg/eclipse/core/runtime/MultiStatus;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.eclipse.core.internal.preferences.PreferencesService, org.eclipse.core.runtime.MultiStatus);
    descriptor: (Lorg/eclipse/core/internal/preferences/PreferencesService;Lorg/eclipse/core/runtime/MultiStatus;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.core.internal.preferences.PreferencesService$8 this
         0: .line 1078
            aload 0 /* this */
            aload 1
            putfield org.eclipse.core.internal.preferences.PreferencesService$8.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 0 /* this */
            aload 2
            putfield org.eclipse.core.internal.preferences.PreferencesService$8.val$result:Lorg/eclipse/core/runtime/MultiStatus;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.eclipse.core.internal.preferences.PreferencesService$8 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/core/internal/preferences/PreferencesService$8;
    MethodParameters:
            Name  Flags
      this$0      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=9, args_size=2
        start local 0 // org.eclipse.core.internal.preferences.PreferencesService$8 this
        start local 1 // org.eclipse.core.runtime.preferences.IEclipsePreferences node
         0: .line 1081
            aload 1 /* node */
            instanceof org.eclipse.core.internal.preferences.ExportedPreferences
            ifne 2
         1: .line 1082
            iconst_0
            ireturn
         2: .line 1085
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            checkcast org.eclipse.core.internal.preferences.ExportedPreferences
            astore 2 /* realNode */
        start local 2 // org.eclipse.core.internal.preferences.ExportedPreferences realNode
         3: .line 1086
            aload 2 /* realNode */
            invokevirtual org.eclipse.core.internal.preferences.ExportedPreferences.getVersion:()Ljava/lang/String;
            astore 3 /* version */
        start local 3 // java.lang.String version
         4: .line 1087
            aload 3 /* version */
            ifnull 5
            aload 3 /* version */
            invokestatic org.eclipse.core.runtime.PluginVersionIdentifier.validateVersion:(Ljava/lang/String;)Lorg/eclipse/core/runtime/IStatus;
            invokeinterface org.eclipse.core.runtime.IStatus.isOK:()Z
            ifne 6
         5: .line 1088
      StackMap locals: org.eclipse.core.internal.preferences.ExportedPreferences java.lang.String
      StackMap stack:
            iconst_1
            ireturn
         6: .line 1089
      StackMap locals:
      StackMap stack:
            new org.eclipse.core.runtime.PluginVersionIdentifier
            dup
            aload 3 /* version */
            invokespecial org.eclipse.core.runtime.PluginVersionIdentifier.<init>:(Ljava/lang/String;)V
            astore 4 /* versionInFile */
        start local 4 // org.eclipse.core.runtime.PluginVersionIdentifier versionInFile
         7: .line 1092
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$8.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 1 /* node */
            invokeinterface org.eclipse.core.runtime.preferences.IEclipsePreferences.absolutePath:()Ljava/lang/String;
            invokevirtual org.eclipse.core.internal.preferences.PreferencesService.getBundleName:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* bundleName */
        start local 5 // java.lang.String bundleName
         8: .line 1093
            aload 5 /* bundleName */
            ifnonnull 10
         9: .line 1094
            iconst_1
            ireturn
        10: .line 1095
      StackMap locals: org.eclipse.core.runtime.PluginVersionIdentifier java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$8.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 5 /* bundleName */
            invokevirtual org.eclipse.core.internal.preferences.PreferencesService.getBundleVersion:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* stringVersion */
        start local 6 // java.lang.String stringVersion
        11: .line 1096
            aload 6 /* stringVersion */
            ifnull 12
            aload 6 /* stringVersion */
            invokestatic org.eclipse.core.runtime.PluginVersionIdentifier.validateVersion:(Ljava/lang/String;)Lorg/eclipse/core/runtime/IStatus;
            invokeinterface org.eclipse.core.runtime.IStatus.isOK:()Z
            ifne 13
        12: .line 1097
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_1
            ireturn
        13: .line 1098
      StackMap locals:
      StackMap stack:
            new org.eclipse.core.runtime.PluginVersionIdentifier
            dup
            aload 6 /* stringVersion */
            invokespecial org.eclipse.core.runtime.PluginVersionIdentifier.<init>:(Ljava/lang/String;)V
            astore 7 /* versionInMemory */
        start local 7 // org.eclipse.core.runtime.PluginVersionIdentifier versionInMemory
        14: .line 1101
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$8.this$0:Lorg/eclipse/core/internal/preferences/PreferencesService;
            aload 5 /* bundleName */
            aload 4 /* versionInFile */
            aload 7 /* versionInMemory */
            invokevirtual org.eclipse.core.internal.preferences.PreferencesService.validatePluginVersions:(Ljava/lang/String;Lorg/eclipse/core/runtime/PluginVersionIdentifier;Lorg/eclipse/core/runtime/PluginVersionIdentifier;)Lorg/eclipse/core/runtime/IStatus;
            astore 8 /* verification */
        start local 8 // org.eclipse.core.runtime.IStatus verification
        15: .line 1102
            aload 8 /* verification */
            ifnull 17
        16: .line 1103
            aload 0 /* this */
            getfield org.eclipse.core.internal.preferences.PreferencesService$8.val$result:Lorg/eclipse/core/runtime/MultiStatus;
            aload 8 /* verification */
            invokevirtual org.eclipse.core.runtime.MultiStatus.add:(Lorg/eclipse/core/runtime/IStatus;)V
        17: .line 1105
      StackMap locals: org.eclipse.core.runtime.PluginVersionIdentifier org.eclipse.core.runtime.IStatus
      StackMap stack:
            iconst_1
            ireturn
        end local 8 // org.eclipse.core.runtime.IStatus verification
        end local 7 // org.eclipse.core.runtime.PluginVersionIdentifier versionInMemory
        end local 6 // java.lang.String stringVersion
        end local 5 // java.lang.String bundleName
        end local 4 // org.eclipse.core.runtime.PluginVersionIdentifier versionInFile
        end local 3 // java.lang.String version
        end local 2 // org.eclipse.core.internal.preferences.ExportedPreferences realNode
        end local 1 // org.eclipse.core.runtime.preferences.IEclipsePreferences node
        end local 0 // org.eclipse.core.internal.preferences.PreferencesService$8 this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   18     0             this  Lorg/eclipse/core/internal/preferences/PreferencesService$8;
            0   18     1             node  Lorg/eclipse/core/runtime/preferences/IEclipsePreferences;
            3   18     2         realNode  Lorg/eclipse/core/internal/preferences/ExportedPreferences;
            4   18     3          version  Ljava/lang/String;
            7   18     4    versionInFile  Lorg/eclipse/core/runtime/PluginVersionIdentifier;
            8   18     5       bundleName  Ljava/lang/String;
           11   18     6    stringVersion  Ljava/lang/String;
           14   18     7  versionInMemory  Lorg/eclipse/core/runtime/PluginVersionIdentifier;
           15   18     8     verification  Lorg/eclipse/core/runtime/IStatus;
    MethodParameters:
      Name  Flags
      node  
}
SourceFile: "PreferencesService.java"
EnclosingMethod: org.eclipse.core.internal.preferences.PreferencesService.validateVersions:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IStatus;
NestHost: org.eclipse.core.internal.preferences.PreferencesService
InnerClasses:
  org.eclipse.core.internal.preferences.PreferencesService$8