public class org.eclipse.jetty.util.JavaVersion
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jetty.util.JavaVersion
  super_class: java.lang.Object
{
  public static final java.lang.String JAVA_TARGET_PLATFORM;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "org.eclipse.jetty.javaTargetPlatform"

  public static final org.eclipse.jetty.util.JavaVersion VERSION;
    descriptor: Lorg/eclipse/jetty/util/JavaVersion;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private final java.lang.String version;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int platform;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int major;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int minor;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int micro;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 33
            ldc "java.version"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic org.eclipse.jetty.util.JavaVersion.parse:(Ljava/lang/String;)Lorg/eclipse/jetty/util/JavaVersion;
            putstatic org.eclipse.jetty.util.JavaVersion.VERSION:Lorg/eclipse/jetty/util/JavaVersion;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.eclipse.jetty.util.JavaVersion parse(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/eclipse/jetty/util/JavaVersion;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=1
        start local 0 // java.lang.String v
         0: .line 38
            aload 0 /* v */
            ldc "[^0-9]"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 1 /* split */
        start local 1 // java.lang.String[] split
         1: .line 39
            aload 1 /* split */
            arraylength
            iconst_3
            invokestatic java.lang.Math.min:(II)I
            istore 2 /* len */
        start local 2 // int len
         2: .line 40
            iload 2 /* len */
            newarray 10
            astore 3 /* version */
        start local 3 // int[] version
         3: .line 41
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 11
         5: .line 45
      StackMap locals: java.lang.String java.lang.String[] int int[] int
      StackMap stack:
            aload 3 /* version */
            iload 4 /* i */
            aload 1 /* split */
            iload 4 /* i */
            aaload
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            iastore
         6: .line 46
            goto 10
         7: .line 47
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         8: .line 49
            iload 4 /* i */
            iconst_1
            isub
            istore 2 /* len */
         9: .line 50
            goto 12
        10: .line 41
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            iload 2 /* len */
            if_icmplt 5
        end local 4 // int i
        12: .line 54
      StackMap locals:
      StackMap stack:
            new org.eclipse.jetty.util.JavaVersion
            dup
        13: .line 55
            aload 0 /* v */
        14: .line 56
            aload 3 /* version */
            iconst_0
            iaload
            bipush 9
            if_icmpge 15
            iload 2 /* len */
            iconst_1
            if_icmpne 16
      StackMap locals: java.lang.String java.lang.String[] int int[]
      StackMap stack: new 12 new 12 java.lang.String
        15: aload 3 /* version */
            iconst_0
            iaload
            goto 17
      StackMap locals: java.lang.String java.lang.String[] int int[]
      StackMap stack: new 12 new 12 java.lang.String
        16: aload 3 /* version */
            iconst_1
            iaload
        17: .line 57
      StackMap locals: java.lang.String java.lang.String[] int int[]
      StackMap stack: new 12 new 12 java.lang.String int
            aload 3 /* version */
            iconst_0
            iaload
        18: .line 58
            iload 2 /* len */
            iconst_1
            if_icmple 19
            aload 3 /* version */
            iconst_1
            iaload
            goto 20
      StackMap locals: java.lang.String java.lang.String[] int int[]
      StackMap stack: new 12 new 12 java.lang.String int int
        19: iconst_0
        20: .line 59
      StackMap locals: java.lang.String java.lang.String[] int int[]
      StackMap stack: new 12 new 12 java.lang.String int int int
            iload 2 /* len */
            iconst_2
            if_icmple 21
            aload 3 /* version */
            iconst_2
            iaload
            goto 22
      StackMap locals: java.lang.String java.lang.String[] int int[]
      StackMap stack: new 12 new 12 java.lang.String int int int
        21: iconst_0
        22: .line 54
      StackMap locals: java.lang.String java.lang.String[] int int[]
      StackMap stack: new 12 new 12 java.lang.String int int int int
            invokespecial org.eclipse.jetty.util.JavaVersion.<init>:(Ljava/lang/String;IIII)V
            areturn
        end local 3 // int[] version
        end local 2 // int len
        end local 1 // java.lang.String[] split
        end local 0 // java.lang.String v
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0        v  Ljava/lang/String;
            1   23     1    split  [Ljava/lang/String;
            2   23     2      len  I
            3   23     3  version  [I
            4   12     4        i  I
      Exception table:
        from    to  target  type
           5     6       7  Class java.lang.Throwable
    MethodParameters:
      Name  Flags
      v     

  private void <init>(java.lang.String, int, int, int, int);
    descriptor: (Ljava/lang/String;IIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // org.eclipse.jetty.util.JavaVersion this
        start local 1 // java.lang.String version
        start local 2 // int platform
        start local 3 // int major
        start local 4 // int minor
        start local 5 // int micro
         0: .line 68
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 70
            aload 0 /* this */
            aload 1 /* version */
            putfield org.eclipse.jetty.util.JavaVersion.version:Ljava/lang/String;
         2: .line 71
            aload 0 /* this */
            iload 2 /* platform */
            putfield org.eclipse.jetty.util.JavaVersion.platform:I
         3: .line 72
            aload 0 /* this */
            iload 3 /* major */
            putfield org.eclipse.jetty.util.JavaVersion.major:I
         4: .line 73
            aload 0 /* this */
            iload 4 /* minor */
            putfield org.eclipse.jetty.util.JavaVersion.minor:I
         5: .line 74
            aload 0 /* this */
            iload 5 /* micro */
            putfield org.eclipse.jetty.util.JavaVersion.micro:I
         6: .line 75
            return
        end local 5 // int micro
        end local 4 // int minor
        end local 3 // int major
        end local 2 // int platform
        end local 1 // java.lang.String version
        end local 0 // org.eclipse.jetty.util.JavaVersion this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/eclipse/jetty/util/JavaVersion;
            0    7     1   version  Ljava/lang/String;
            0    7     2  platform  I
            0    7     3     major  I
            0    7     4     minor  I
            0    7     5     micro  I
    MethodParameters:
          Name  Flags
      version   
      platform  
      major     
      minor     
      micro     

  public java.lang.String getVersion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.util.JavaVersion this
         0: .line 82
            aload 0 /* this */
            getfield org.eclipse.jetty.util.JavaVersion.version:Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.jetty.util.JavaVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/util/JavaVersion;

  public int getPlatform();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.util.JavaVersion this
         0: .line 92
            aload 0 /* this */
            getfield org.eclipse.jetty.util.JavaVersion.platform:I
            ireturn
        end local 0 // org.eclipse.jetty.util.JavaVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/util/JavaVersion;

  public int getMajor();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.util.JavaVersion this
         0: .line 102
            aload 0 /* this */
            getfield org.eclipse.jetty.util.JavaVersion.major:I
            ireturn
        end local 0 // org.eclipse.jetty.util.JavaVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/util/JavaVersion;

  public int getMinor();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.util.JavaVersion this
         0: .line 112
            aload 0 /* this */
            getfield org.eclipse.jetty.util.JavaVersion.minor:I
            ireturn
        end local 0 // org.eclipse.jetty.util.JavaVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/util/JavaVersion;

  public int getMicro();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.util.JavaVersion this
         0: .line 122
            aload 0 /* this */
            getfield org.eclipse.jetty.util.JavaVersion.micro:I
            ireturn
        end local 0 // org.eclipse.jetty.util.JavaVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/util/JavaVersion;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.util.JavaVersion this
         0: .line 128
            aload 0 /* this */
            getfield org.eclipse.jetty.util.JavaVersion.version:Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.jetty.util.JavaVersion this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/util/JavaVersion;
}
SourceFile: "JavaVersion.java"