public class org.h2.util.IntervalUtils
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.util.IntervalUtils
super_class: java.lang.Object
{
private static final java.math.BigInteger NANOS_PER_SECOND_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger NANOS_PER_MINUTE_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger NANOS_PER_HOUR_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.math.BigInteger NANOS_PER_DAY_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger MONTHS_PER_YEAR_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger HOURS_PER_DAY_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger MINUTES_PER_DAY_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger MINUTES_PER_HOUR_BI;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger LEADING_MIN;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger LEADING_MAX;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$org$h2$api$IntervalQualifier;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc 1000000000
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.NANOS_PER_SECOND_BI:Ljava/math/BigInteger;
1: ldc 60000000000
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
2: ldc 3600000000000
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.NANOS_PER_HOUR_BI:Ljava/math/BigInteger;
3: ldc 86400000000000
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.NANOS_PER_DAY_BI:Ljava/math/BigInteger;
4: ldc 12
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.MONTHS_PER_YEAR_BI:Ljava/math/BigInteger;
5: ldc 24
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.HOURS_PER_DAY_BI:Ljava/math/BigInteger;
6: ldc 1440
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.MINUTES_PER_DAY_BI:Ljava/math/BigInteger;
7: ldc 60
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.MINUTES_PER_HOUR_BI:Ljava/math/BigInteger;
8: ldc -999999999999999999
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.LEADING_MIN:Ljava/math/BigInteger;
9: ldc 999999999999999999
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic org.h2.util.IntervalUtils.LEADING_MAX:Ljava/math/BigInteger;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/util/IntervalUtils;
public static org.h2.value.ValueInterval parseFormattedInterval(org.h2.api.IntervalQualifier, java.lang.String);
descriptor: (Lorg/h2/api/IntervalQualifier;Ljava/lang/String;)Lorg/h2/value/ValueInterval;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=9, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 1
iload 2
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
2: aload 1
iconst_1
iload 2
ldc "INTERVAL"
iconst_0
bipush 8
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifne 4
3: aload 0
iconst_0
aload 1
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
4: StackMap locals: int
StackMap stack:
aload 1
iload 2
bipush 8
iadd
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
5: iconst_0
istore 3
start local 3 6: aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 4
start local 4 7: iload 4
bipush 45
if_icmpne 12
8: iconst_1
istore 3
9: aload 1
iload 2
iconst_1
iadd
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
10: aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 4
11: goto 15
StackMap locals: int int
StackMap stack:
12: iload 4
bipush 43
if_icmpne 15
13: aload 1
iload 2
iconst_1
iadd
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
14: aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 4
15: StackMap locals:
StackMap stack:
iload 4
bipush 39
if_icmpeq 17
16: new java.lang.IllegalArgumentException
dup
aload 1
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
iinc 2 1
iload 2
istore 5
start local 5 18: aload 1
invokevirtual java.lang.String.length:()I
istore 6
start local 6 19: StackMap locals: int int
StackMap stack:
iload 2
iload 6
if_icmpne 21
20: new java.lang.IllegalArgumentException
dup
aload 1
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals:
StackMap stack:
aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
bipush 39
if_icmpne 23
22: goto 25
23: StackMap locals:
StackMap stack:
iinc 2 1
24: goto 19
25: StackMap locals:
StackMap stack:
aload 1
iload 5
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 7
start local 7 26: aload 1
iload 2
iconst_1
iadd
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
27: aload 1
iconst_1
iload 2
ldc "YEAR"
iconst_0
iconst_4
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 38
28: iinc 2 4
29: aload 1
iload 2
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
istore 8
start local 8 30: iload 8
iload 6
if_icmpne 32
31: getstatic org.h2.api.IntervalQualifier.YEAR:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
32: StackMap locals: java.lang.String int
StackMap stack:
iload 8
iload 2
if_icmple 41
aload 1
iconst_1
iload 8
ldc "TO"
iconst_0
iconst_2
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 41
33: iinc 8 2
34: aload 1
iload 8
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
35: iload 2
iload 8
if_icmple 41
aload 1
iconst_1
iload 2
ldc "MONTH"
iconst_0
iconst_5
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 41
36: aload 1
iload 2
iconst_5
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 41
37: getstatic org.h2.api.IntervalQualifier.YEAR_TO_MONTH:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
end local 8 38: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "MONTH"
iconst_0
iconst_5
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 41
39: aload 1
iload 2
iconst_5
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 41
40: getstatic org.h2.api.IntervalQualifier.MONTH:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
41: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "DAY"
iconst_0
iconst_3
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 59
42: iinc 2 3
43: aload 1
iload 2
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
istore 8
start local 8 44: iload 8
iload 6
if_icmpne 46
45: getstatic org.h2.api.IntervalQualifier.DAY:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
46: StackMap locals: int
StackMap stack:
iload 8
iload 2
if_icmple 59
aload 1
iconst_1
iload 8
ldc "TO"
iconst_0
iconst_2
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 59
47: iinc 8 2
48: aload 1
iload 8
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
49: iload 2
iload 8
if_icmple 59
50: aload 1
iconst_1
iload 2
ldc "HOUR"
iconst_0
iconst_4
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 53
51: aload 1
iload 2
iconst_4
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 59
52: getstatic org.h2.api.IntervalQualifier.DAY_TO_HOUR:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
53: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "MINUTE"
iconst_0
bipush 6
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 56
54: aload 1
iload 2
bipush 6
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 59
55: getstatic org.h2.api.IntervalQualifier.DAY_TO_MINUTE:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
56: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "SECOND"
iconst_0
bipush 6
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 59
57: aload 1
iload 2
bipush 6
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 59
58: getstatic org.h2.api.IntervalQualifier.DAY_TO_SECOND:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
end local 8 59: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "HOUR"
iconst_0
iconst_4
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 74
60: iinc 2 4
61: aload 1
iload 2
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
istore 8
start local 8 62: iload 8
iload 6
if_icmpne 64
63: getstatic org.h2.api.IntervalQualifier.HOUR:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
64: StackMap locals: int
StackMap stack:
iload 8
iload 2
if_icmple 74
aload 1
iconst_1
iload 8
ldc "TO"
iconst_0
iconst_2
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 74
65: iinc 8 2
66: aload 1
iload 8
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
67: iload 2
iload 8
if_icmple 74
68: aload 1
iconst_1
iload 2
ldc "MINUTE"
iconst_0
bipush 6
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 71
69: aload 1
iload 2
bipush 6
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 74
70: getstatic org.h2.api.IntervalQualifier.HOUR_TO_MINUTE:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
71: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "SECOND"
iconst_0
bipush 6
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 74
72: aload 1
iload 2
bipush 6
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 74
73: getstatic org.h2.api.IntervalQualifier.HOUR_TO_SECOND:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
end local 8 74: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "MINUTE"
iconst_0
bipush 6
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 85
75: iinc 2 6
76: aload 1
iload 2
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
istore 8
start local 8 77: iload 8
iload 6
if_icmpne 79
78: getstatic org.h2.api.IntervalQualifier.MINUTE:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
79: StackMap locals: int
StackMap stack:
iload 8
iload 2
if_icmple 85
aload 1
iconst_1
iload 8
ldc "TO"
iconst_0
iconst_2
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 85
80: iinc 8 2
81: aload 1
iload 8
invokestatic org.h2.util.IntervalUtils.skipWS:(Ljava/lang/String;I)I
istore 2
82: iload 2
iload 8
if_icmple 85
aload 1
iconst_1
iload 2
ldc "SECOND"
iconst_0
bipush 6
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 85
83: aload 1
iload 2
bipush 6
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 85
84: getstatic org.h2.api.IntervalQualifier.MINUTE_TO_SECOND:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
end local 8 85: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 2
ldc "SECOND"
iconst_0
bipush 6
invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
ifeq 88
86: aload 1
iload 2
bipush 6
iadd
invokestatic org.h2.util.IntervalUtils.skipWSEnd:(Ljava/lang/String;I)I
iload 6
if_icmpne 88
87: getstatic org.h2.api.IntervalQualifier.SECOND:Lorg/h2/api/IntervalQualifier;
iload 3
aload 7
invokestatic org.h2.util.IntervalUtils.parseInterval:(Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
areturn
88: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
aload 1
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 89 0 qualifier Lorg/h2/api/IntervalQualifier;
0 89 1 s Ljava/lang/String;
1 89 2 i I
6 89 3 negative Z
7 89 4 ch C
18 89 5 start I
19 89 6 l I
26 89 7 v Ljava/lang/String;
30 38 8 j I
44 59 8 j I
62 74 8 j I
77 85 8 j I
MethodParameters:
Name Flags
qualifier
s
private static int skipWS(java.lang.String, int);
descriptor: (Ljava/lang/String;I)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.String.length:()I
istore 2
start local 2 1: StackMap locals: int
StackMap stack:
iload 1
iload 2
if_icmpne 3
2: new java.lang.IllegalArgumentException
dup
aload 0
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isWhitespace:(C)Z
ifne 5
4: iload 1
ireturn
5: StackMap locals:
StackMap stack:
iinc 1 1
goto 1
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 s Ljava/lang/String;
0 6 1 i I
1 6 2 l I
MethodParameters:
Name Flags
s
i
private static int skipWSEnd(java.lang.String, int);
descriptor: (Ljava/lang/String;I)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.String.length:()I
istore 2
start local 2 1: StackMap locals: int
StackMap stack:
iload 1
iload 2
if_icmpne 3
2: iload 1
ireturn
3: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isWhitespace:(C)Z
ifne 5
4: iload 1
ireturn
5: StackMap locals:
StackMap stack:
iinc 1 1
goto 1
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 s Ljava/lang/String;
0 6 1 i I
1 6 2 l I
MethodParameters:
Name Flags
s
i
public static org.h2.value.ValueInterval parseInterval(org.h2.api.IntervalQualifier, boolean, java.lang.String);
descriptor: (Lorg/h2/api/IntervalQualifier;ZLjava/lang/String;)Lorg/h2/value/ValueInterval;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=10, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 1 - 13
1: 1
2: 1
3: 1
4: 1
5: 1
6: 4
7: 12
8: 13
9: 14
10: 28
11: 50
12: 51
13: 65
default: 73
}
1: StackMap locals:
StackMap stack:
aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 2: lconst_0
lstore 5
start local 5 3: goto 74
end local 5 end local 3 4: StackMap locals:
StackMap stack:
aload 2
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
istore 7
start local 7 5: iload 7
ifge 9
6: aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 7: lconst_0
lstore 5
start local 5 8: goto 74
end local 5 end local 3 9: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String top top top top int
StackMap stack:
aload 2
iconst_0
iload 7
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 10: aload 2
iload 7
iconst_1
iadd
aload 2
invokevirtual java.lang.String.length:()I
invokestatic org.h2.util.DateTimeUtils.parseNanos:(Ljava/lang/String;II)I
i2l
lstore 5
start local 5 11: goto 74
end local 7 end local 5 end local 3 12: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String
StackMap stack:
aload 0
aload 2
bipush 45
bipush 11
iload 1
invokestatic org.h2.util.IntervalUtils.parseInterval2:(Lorg/h2/api/IntervalQualifier;Ljava/lang/String;CIZ)Lorg/h2/value/ValueInterval;
areturn
13: StackMap locals:
StackMap stack:
aload 0
aload 2
bipush 32
bipush 23
iload 1
invokestatic org.h2.util.IntervalUtils.parseInterval2:(Lorg/h2/api/IntervalQualifier;Ljava/lang/String;CIZ)Lorg/h2/value/ValueInterval;
areturn
14: StackMap locals:
StackMap stack:
aload 2
bipush 32
invokevirtual java.lang.String.indexOf:(I)I
istore 7
start local 7 15: iload 7
ifge 19
16: aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 17: lconst_0
lstore 5
start local 5 18: goto 74
end local 5 end local 3 19: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String top top top top int
StackMap stack:
aload 2
iconst_0
iload 7
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 20: aload 2
bipush 58
iload 7
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 8
start local 8 21: iload 8
ifge 24
22: aload 2
iload 7
iconst_1
iadd
aload 2
invokevirtual java.lang.String.length:()I
bipush 23
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 60
lmul
lstore 5
start local 5 23: goto 74
end local 5 24: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String long top top int int
StackMap stack:
aload 2
iload 7
iconst_1
iadd
iload 8
bipush 23
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 60
lmul
25: aload 2
iload 8
iconst_1
iadd
aload 2
invokevirtual java.lang.String.length:()I
bipush 59
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
26: ladd
lstore 5
end local 8 start local 5 27: goto 74
end local 7 end local 5 end local 3 28: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String
StackMap stack:
aload 2
bipush 32
invokevirtual java.lang.String.indexOf:(I)I
istore 7
start local 7 29: iload 7
ifge 33
30: aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 31: lconst_0
lstore 5
start local 5 32: goto 74
end local 5 end local 3 33: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String top top top top int
StackMap stack:
aload 2
iconst_0
iload 7
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 34: aload 2
bipush 58
iload 7
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 8
start local 8 35: iload 8
ifge 38
36: aload 2
iload 7
iconst_1
iadd
aload 2
invokevirtual java.lang.String.length:()I
bipush 23
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 3600000000000
lmul
lstore 5
start local 5 37: goto 74
end local 5 38: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String long top top int int
StackMap stack:
aload 2
bipush 58
iload 8
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 9
start local 9 39: iload 9
ifge 44
40: aload 2
iload 7
iconst_1
iadd
iload 8
bipush 23
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 3600000000000
lmul
41: aload 2
iload 8
iconst_1
iadd
aload 2
invokevirtual java.lang.String.length:()I
bipush 59
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 60000000000
lmul
42: ladd
lstore 5
start local 5 43: goto 74
end local 5 44: StackMap locals: int
StackMap stack:
aload 2
iload 7
iconst_1
iadd
iload 8
bipush 23
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 3600000000000
lmul
45: aload 2
iload 8
iconst_1
iadd
iload 9
bipush 59
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 60000000000
lmul
46: ladd
47: aload 2
iload 9
iconst_1
iadd
invokestatic org.h2.util.IntervalUtils.parseIntervalRemainingSeconds:(Ljava/lang/String;I)J
48: ladd
lstore 5
end local 9 end local 8 start local 5 49: goto 74
end local 7 end local 5 end local 3 50: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String
StackMap stack:
aload 0
aload 2
bipush 58
bipush 59
iload 1
invokestatic org.h2.util.IntervalUtils.parseInterval2:(Lorg/h2/api/IntervalQualifier;Ljava/lang/String;CIZ)Lorg/h2/value/ValueInterval;
areturn
51: StackMap locals:
StackMap stack:
aload 2
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
istore 7
start local 7 52: iload 7
ifge 56
53: aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 54: lconst_0
lstore 5
start local 5 55: goto 74
end local 5 end local 3 56: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String top top top top int
StackMap stack:
aload 2
iconst_0
iload 7
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 57: aload 2
bipush 58
iload 7
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 8
start local 8 58: iload 8
ifge 61
59: aload 2
iload 7
iconst_1
iadd
aload 2
invokevirtual java.lang.String.length:()I
bipush 59
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 60000000000
lmul
lstore 5
start local 5 60: goto 74
end local 5 61: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String long top top int int
StackMap stack:
aload 2
iload 7
iconst_1
iadd
iload 8
bipush 59
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
ldc 60000000000
lmul
62: aload 2
iload 8
iconst_1
iadd
invokestatic org.h2.util.IntervalUtils.parseIntervalRemainingSeconds:(Ljava/lang/String;I)J
63: ladd
lstore 5
end local 8 start local 5 64: goto 74
end local 7 end local 5 end local 3 65: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String
StackMap stack:
aload 2
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
istore 7
start local 7 66: iload 7
ifge 70
67: aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 68: lconst_0
lstore 5
start local 5 69: goto 74
end local 5 end local 3 70: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String top top top top int
StackMap stack:
aload 2
iconst_0
iload 7
iload 1
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 3
start local 3 71: aload 2
iload 7
iconst_1
iadd
invokestatic org.h2.util.IntervalUtils.parseIntervalRemainingSeconds:(Ljava/lang/String;I)J
lstore 5
start local 5 72: goto 74
end local 7 end local 5 end local 3 73: StackMap locals: org.h2.api.IntervalQualifier int java.lang.String
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
start local 3 start local 5 74: StackMap locals: long long
StackMap stack:
lload 3
lconst_0
lcmp
ifge 75
iconst_1
goto 76
StackMap locals:
StackMap stack:
75: iconst_0
StackMap locals:
StackMap stack: int
76: istore 1
77: iload 1
ifeq 82
78: lload 3
ldc -9223372036854775808
lcmp
ifeq 81
79: lload 3
lneg
lstore 3
80: goto 82
81: StackMap locals:
StackMap stack:
lconst_0
lstore 3
82: StackMap locals:
StackMap stack:
aload 0
iload 1
lload 3
lload 5
invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 83 0 qualifier Lorg/h2/api/IntervalQualifier;
0 83 1 negative Z
0 83 2 s Ljava/lang/String;
2 4 3 leading J
7 9 3 leading J
10 12 3 leading J
17 19 3 leading J
20 28 3 leading J
31 33 3 leading J
34 50 3 leading J
54 56 3 leading J
57 65 3 leading J
68 70 3 leading J
71 73 3 leading J
74 83 3 leading J
3 4 5 remaining J
8 9 5 remaining J
11 12 5 remaining J
18 19 5 remaining J
23 24 5 remaining J
27 28 5 remaining J
32 33 5 remaining J
37 38 5 remaining J
43 44 5 remaining J
49 50 5 remaining J
55 56 5 remaining J
60 61 5 remaining J
64 65 5 remaining J
69 70 5 remaining J
72 73 5 remaining J
74 83 5 remaining J
5 12 7 dot I
15 28 7 space I
21 27 8 colon I
29 50 7 space I
35 49 8 colon I
39 49 9 colon2 I
52 65 7 colon I
58 64 8 colon2 I
66 73 7 dash I
MethodParameters:
Name Flags
qualifier
negative
s
private static org.h2.value.ValueInterval parseInterval2(org.h2.api.IntervalQualifier, java.lang.String, char, int, boolean);
descriptor: (Lorg/h2/api/IntervalQualifier;Ljava/lang/String;CIZ)Lorg/h2/value/ValueInterval;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
iload 2
iconst_1
invokevirtual java.lang.String.indexOf:(II)I
istore 9
start local 9 1: iload 9
ifge 5
2: aload 1
iconst_0
aload 1
invokevirtual java.lang.String.length:()I
iload 4
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 5
start local 5 3: lconst_0
lstore 7
start local 7 4: goto 7
end local 7 end local 5 5: StackMap locals: org.h2.api.IntervalQualifier java.lang.String int int int top top top top int
StackMap stack:
aload 1
iconst_0
iload 9
iload 4
invokestatic org.h2.util.IntervalUtils.parseIntervalLeading:(Ljava/lang/String;IIZ)J
lstore 5
start local 5 6: aload 1
iload 9
iconst_1
iadd
aload 1
invokevirtual java.lang.String.length:()I
iload 3
invokestatic org.h2.util.IntervalUtils.parseIntervalRemaining:(Ljava/lang/String;III)J
lstore 7
start local 7 7: StackMap locals: org.h2.api.IntervalQualifier java.lang.String int int int long long int
StackMap stack:
lload 5
lconst_0
lcmp
ifge 8
iconst_1
goto 9
StackMap locals:
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: istore 4
10: iload 4
ifeq 15
11: lload 5
ldc -9223372036854775808
lcmp
ifeq 14
12: lload 5
lneg
lstore 5
13: goto 15
14: StackMap locals:
StackMap stack:
lconst_0
lstore 5
15: StackMap locals:
StackMap stack:
aload 0
iload 4
lload 5
lload 7
invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
end local 9 end local 7 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 qualifier Lorg/h2/api/IntervalQualifier;
0 16 1 s Ljava/lang/String;
0 16 2 ch C
0 16 3 max I
0 16 4 negative Z
3 5 5 leading J
6 16 5 leading J
4 5 7 remaining J
7 16 7 remaining J
1 16 9 dash I
MethodParameters:
Name Flags
qualifier
s
ch
max
negative
private static long parseIntervalLeading(java.lang.String, int, int, boolean);
descriptor: (Ljava/lang/String;IIZ)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lstore 4
start local 4 1: lload 4
lconst_0
lcmp
ifne 7
2: iload 3
aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
bipush 45
if_icmpne 3
iconst_1
goto 4
StackMap locals: java.lang.String int int int long
StackMap stack: int
3: iconst_0
StackMap locals: java.lang.String int int int long
StackMap stack: int int
4: ixor
ifeq 5
ldc -9223372036854775808
goto 6
StackMap locals:
StackMap stack:
5: lconst_0
StackMap locals:
StackMap stack: long
6: lreturn
7: StackMap locals:
StackMap stack:
iload 3
ifeq 8
lload 4
lneg
goto 9
StackMap locals:
StackMap stack:
8: lload 4
StackMap locals:
StackMap stack: long
9: lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 s Ljava/lang/String;
0 10 1 start I
0 10 2 end I
0 10 3 negative Z
1 10 4 leading J
MethodParameters:
Name Flags
s
start
end
negative
private static long parseIntervalRemaining(java.lang.String, int, int, int);
descriptor: (Ljava/lang/String;III)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
invokestatic org.h2.util.StringUtils.parseUInt31:(Ljava/lang/String;II)I
istore 4
start local 4 1: iload 4
iload 3
if_icmple 3
2: new java.lang.IllegalArgumentException
dup
aload 0
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: int
StackMap stack:
iload 4
i2l
lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 s Ljava/lang/String;
0 4 1 start I
0 4 2 end I
0 4 3 max I
1 4 4 v I
MethodParameters:
Name Flags
s
start
end
max
private static long parseIntervalRemainingSeconds(java.lang.String, int);
descriptor: (Ljava/lang/String;I)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
bipush 46
iload 1
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 4
start local 4 1: iload 4
ifge 5
2: aload 0
iload 1
aload 0
invokevirtual java.lang.String.length:()I
invokestatic org.h2.util.StringUtils.parseUInt31:(Ljava/lang/String;II)I
istore 2
start local 2 3: iconst_0
istore 3
start local 3 4: goto 7
end local 3 end local 2 5: StackMap locals: java.lang.String int top top int
StackMap stack:
aload 0
iload 1
iload 4
invokestatic org.h2.util.StringUtils.parseUInt31:(Ljava/lang/String;II)I
istore 2
start local 2 6: aload 0
iload 4
iconst_1
iadd
aload 0
invokevirtual java.lang.String.length:()I
invokestatic org.h2.util.DateTimeUtils.parseNanos:(Ljava/lang/String;II)I
istore 3
start local 3 7: StackMap locals: java.lang.String int int int int
StackMap stack:
iload 2
bipush 59
if_icmple 9
8: new java.lang.IllegalArgumentException
dup
aload 0
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
iload 2
i2l
ldc 1000000000
lmul
iload 3
i2l
ladd
lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 s Ljava/lang/String;
0 10 1 start I
3 5 2 seconds I
6 10 2 seconds I
4 5 3 nanos I
7 10 3 nanos I
1 10 4 dot I
MethodParameters:
Name Flags
s
start
public static java.lang.StringBuilder appendInterval(java.lang.StringBuilder, org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Ljava/lang/StringBuilder;Lorg/h2/api/IntervalQualifier;ZJJ)Ljava/lang/StringBuilder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
ldc "INTERVAL '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
1: iload 2
ifeq 3
2: aload 0
bipush 45
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
3: StackMap locals:
StackMap stack:
invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 1
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 1 - 13
1: 4
2: 4
3: 4
4: 4
5: 4
6: 6
7: 9
8: 11
9: 14
10: 19
11: 28
12: 31
13: 36
default: 38
}
4: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
pop
5: goto 38
6: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
pop
7: aload 0
lload 5
invokestatic org.h2.util.IntervalUtils.appendNanos:(Ljava/lang/StringBuilder;J)V
8: goto 38
9: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 45
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
lload 5
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
pop
10: goto 38
11: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
12: aload 0
iconst_2
lload 5
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
13: goto 38
14: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: aload 0
iconst_2
lload 5
ldc 60
ldiv
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
16: aload 0
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
17: aload 0
iconst_2
lload 5
ldc 60
lrem
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
18: goto 38
19: StackMap locals:
StackMap stack:
lload 5
ldc 60000000000
lrem
lstore 7
start local 7 20: lload 5
ldc 60000000000
ldiv
lstore 5
21: aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
22: aload 0
iconst_2
lload 5
ldc 60
ldiv
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
23: aload 0
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
24: aload 0
iconst_2
lload 5
ldc 60
lrem
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
25: aload 0
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
26: aload 0
lload 7
invokestatic org.h2.util.IntervalUtils.appendSecondsWithNanos:(Ljava/lang/StringBuilder;J)V
27: goto 38
end local 7 28: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
29: aload 0
iconst_2
lload 5
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
30: goto 38
31: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
32: aload 0
iconst_2
lload 5
ldc 60000000000
ldiv
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
33: aload 0
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
34: aload 0
lload 5
ldc 60000000000
lrem
invokestatic org.h2.util.IntervalUtils.appendSecondsWithNanos:(Ljava/lang/StringBuilder;J)V
35: goto 38
36: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
37: aload 0
lload 5
invokestatic org.h2.util.IntervalUtils.appendSecondsWithNanos:(Ljava/lang/StringBuilder;J)V
38: StackMap locals:
StackMap stack:
aload 0
ldc "' "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 buff Ljava/lang/StringBuilder;
0 39 1 qualifier Lorg/h2/api/IntervalQualifier;
0 39 2 negative Z
0 39 3 leading J
0 39 5 remaining J
20 28 7 nanos J
MethodParameters:
Name Flags
buff
qualifier
negative
leading
remaining
private static void appendSecondsWithNanos(java.lang.StringBuilder, long);
descriptor: (Ljava/lang/StringBuilder;J)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iconst_2
lload 1
ldc 1000000000
ldiv
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
1: aload 0
lload 1
ldc 1000000000
lrem
invokestatic org.h2.util.IntervalUtils.appendNanos:(Ljava/lang/StringBuilder;J)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 buff Ljava/lang/StringBuilder;
0 3 1 nanos J
MethodParameters:
Name Flags
buff
nanos
private static void appendNanos(java.lang.StringBuilder, long);
descriptor: (Ljava/lang/StringBuilder;J)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifle 4
1: aload 0
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
2: aload 0
bipush 9
lload 1
invokestatic org.h2.util.StringUtils.appendZeroPadded:(Ljava/lang/StringBuilder;IJ)V
3: aload 0
invokestatic org.h2.util.DateTimeUtils.stripTrailingZeroes:(Ljava/lang/StringBuilder;)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 buff Ljava/lang/StringBuilder;
0 5 1 nanos J
MethodParameters:
Name Flags
buff
nanos
public static java.math.BigInteger intervalToAbsolute(org.h2.value.ValueInterval);
descriptor: (Lorg/h2/value/ValueInterval;)Ljava/math/BigInteger;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.value.ValueInterval.getQualifier:()Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 1 - 13
1: 1
2: 3
3: 5
4: 7
5: 9
6: 11
7: 13
8: 15
9: 17
10: 19
11: 21
12: 23
13: 25
default: 27
}
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.value.ValueInterval.getLeading:()J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.MONTHS_PER_YEAR_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 2: goto 28
end local 1 3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.value.ValueInterval.getLeading:()J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
astore 1
start local 1 4: goto 28
end local 1 5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.value.ValueInterval.getLeading:()J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.NANOS_PER_DAY_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 6: goto 28
end local 1 7: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.value.ValueInterval.getLeading:()J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.NANOS_PER_HOUR_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 8: goto 28
end local 1 9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.value.ValueInterval.getLeading:()J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 10: goto 28
end local 1 11: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.NANOS_PER_SECOND_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 12: goto 28
end local 1 13: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.MONTHS_PER_YEAR_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 14: goto 28
end local 1 15: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.HOURS_PER_DAY_BI:Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.NANOS_PER_HOUR_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 16: goto 28
end local 1 17: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.MINUTES_PER_DAY_BI:Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 18: goto 28
end local 1 19: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.NANOS_PER_DAY_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 20: goto 28
end local 1 21: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.MINUTES_PER_HOUR_BI:Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 22: goto 28
end local 1 23: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.NANOS_PER_HOUR_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 24: goto 28
end local 1 25: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 1
start local 1 26: goto 28
end local 1 27: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
start local 1 28: StackMap locals: java.math.BigInteger
StackMap stack:
aload 0
invokevirtual org.h2.value.ValueInterval.isNegative:()Z
ifeq 29
aload 1
invokevirtual java.math.BigInteger.negate:()Ljava/math/BigInteger;
goto 30
StackMap locals:
StackMap stack:
29: aload 1
StackMap locals:
StackMap stack: java.math.BigInteger
30: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 interval Lorg/h2/value/ValueInterval;
2 3 1 r Ljava/math/BigInteger;
4 5 1 r Ljava/math/BigInteger;
6 7 1 r Ljava/math/BigInteger;
8 9 1 r Ljava/math/BigInteger;
10 11 1 r Ljava/math/BigInteger;
12 13 1 r Ljava/math/BigInteger;
14 15 1 r Ljava/math/BigInteger;
16 17 1 r Ljava/math/BigInteger;
18 19 1 r Ljava/math/BigInteger;
20 21 1 r Ljava/math/BigInteger;
22 23 1 r Ljava/math/BigInteger;
24 25 1 r Ljava/math/BigInteger;
26 27 1 r Ljava/math/BigInteger;
28 31 1 r Ljava/math/BigInteger;
MethodParameters:
Name Flags
interval
private static java.math.BigInteger intervalToAbsolute(org.h2.value.ValueInterval, java.math.BigInteger, java.math.BigInteger);
descriptor: (Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;Ljava/math/BigInteger;)Ljava/math/BigInteger;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokestatic org.h2.util.IntervalUtils.intervalToAbsolute:(Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;)Ljava/math/BigInteger;
aload 2
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 interval Lorg/h2/value/ValueInterval;
0 1 1 multiplier Ljava/math/BigInteger;
0 1 2 totalMultiplier Ljava/math/BigInteger;
MethodParameters:
Name Flags
interval
multiplier
totalMultiplier
private static java.math.BigInteger intervalToAbsolute(org.h2.value.ValueInterval, java.math.BigInteger);
descriptor: (Lorg/h2/value/ValueInterval;Ljava/math/BigInteger;)Ljava/math/BigInteger;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.value.ValueInterval.getLeading:()J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
aload 1
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
1: aload 0
invokevirtual org.h2.value.ValueInterval.getRemaining:()J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 interval Lorg/h2/value/ValueInterval;
0 3 1 multiplier Ljava/math/BigInteger;
MethodParameters:
Name Flags
interval
multiplier
public static org.h2.value.ValueInterval intervalFromAbsolute(org.h2.api.IntervalQualifier, java.math.BigInteger);
descriptor: (Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 1 - 13
1: 1
2: 5
3: 8
4: 12
5: 16
6: 20
7: 21
8: 22
9: 23
10: 24
11: 25
12: 26
13: 27
default: 28
}
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.math.BigInteger.signum:()I
ifge 2
iconst_1
goto 3
StackMap locals:
StackMap stack: org.h2.api.IntervalQualifier
2: iconst_0
3: StackMap locals: org.h2.api.IntervalQualifier java.math.BigInteger
StackMap stack: org.h2.api.IntervalQualifier int
aload 1
getstatic org.h2.util.IntervalUtils.MONTHS_PER_YEAR_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.leadingExact:(Ljava/math/BigInteger;)J
lconst_0
4: invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.math.BigInteger.signum:()I
ifge 6
iconst_1
goto 7
StackMap locals:
StackMap stack: org.h2.api.IntervalQualifier
6: iconst_0
StackMap locals: org.h2.api.IntervalQualifier java.math.BigInteger
StackMap stack: org.h2.api.IntervalQualifier int
7: aload 1
invokestatic org.h2.util.IntervalUtils.leadingExact:(Ljava/math/BigInteger;)J
lconst_0
invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
8: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.math.BigInteger.signum:()I
ifge 9
iconst_1
goto 10
StackMap locals:
StackMap stack: org.h2.api.IntervalQualifier
9: iconst_0
10: StackMap locals: org.h2.api.IntervalQualifier java.math.BigInteger
StackMap stack: org.h2.api.IntervalQualifier int
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_DAY_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.leadingExact:(Ljava/math/BigInteger;)J
lconst_0
11: invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
12: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.math.BigInteger.signum:()I
ifge 13
iconst_1
goto 14
StackMap locals:
StackMap stack: org.h2.api.IntervalQualifier
13: iconst_0
14: StackMap locals: org.h2.api.IntervalQualifier java.math.BigInteger
StackMap stack: org.h2.api.IntervalQualifier int
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_HOUR_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.leadingExact:(Ljava/math/BigInteger;)J
lconst_0
15: invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
16: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.math.BigInteger.signum:()I
ifge 17
iconst_1
goto 18
StackMap locals:
StackMap stack: org.h2.api.IntervalQualifier
17: iconst_0
18: StackMap locals: org.h2.api.IntervalQualifier java.math.BigInteger
StackMap stack: org.h2.api.IntervalQualifier int
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.leadingExact:(Ljava/math/BigInteger;)J
lconst_0
19: invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
20: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_SECOND_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
21: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.MONTHS_PER_YEAR_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
22: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_HOUR_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.HOURS_PER_DAY_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
23: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.MINUTES_PER_DAY_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
24: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_DAY_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
25: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
getstatic org.h2.util.IntervalUtils.MINUTES_PER_HOUR_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
26: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_HOUR_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
27: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic org.h2.util.IntervalUtils.NANOS_PER_MINUTE_BI:Ljava/math/BigInteger;
invokestatic org.h2.util.IntervalUtils.intervalFromAbsolute:(Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
areturn
28: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 qualifier Lorg/h2/api/IntervalQualifier;
0 29 1 absolute Ljava/math/BigInteger;
MethodParameters:
Name Flags
qualifier
absolute
private static org.h2.value.ValueInterval intervalFromAbsolute(org.h2.api.IntervalQualifier, java.math.BigInteger, java.math.BigInteger);
descriptor: (Lorg/h2/api/IntervalQualifier;Ljava/math/BigInteger;Ljava/math/BigInteger;)Lorg/h2/value/ValueInterval;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual java.math.BigInteger.divideAndRemainder:(Ljava/math/BigInteger;)[Ljava/math/BigInteger;
astore 3
start local 3 1: aload 0
aload 1
invokevirtual java.math.BigInteger.signum:()I
ifge 2
iconst_1
goto 3
StackMap locals: org.h2.api.IntervalQualifier java.math.BigInteger java.math.BigInteger java.math.BigInteger[]
StackMap stack: org.h2.api.IntervalQualifier
2: iconst_0
StackMap locals: org.h2.api.IntervalQualifier java.math.BigInteger java.math.BigInteger java.math.BigInteger[]
StackMap stack: org.h2.api.IntervalQualifier int
3: aload 3
iconst_0
aaload
invokestatic org.h2.util.IntervalUtils.leadingExact:(Ljava/math/BigInteger;)J
aload 3
iconst_1
aaload
invokevirtual java.math.BigInteger.longValue:()J
invokestatic java.lang.Math.abs:(J)J
invokestatic org.h2.value.ValueInterval.from:(Lorg/h2/api/IntervalQualifier;ZJJ)Lorg/h2/value/ValueInterval;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 qualifier Lorg/h2/api/IntervalQualifier;
0 4 1 absolute Ljava/math/BigInteger;
0 4 2 divisor Ljava/math/BigInteger;
1 4 3 dr [Ljava/math/BigInteger;
MethodParameters:
Name Flags
qualifier
absolute
divisor
private static long leadingExact(java.math.BigInteger);
descriptor: (Ljava/math/BigInteger;)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic org.h2.util.IntervalUtils.LEADING_MAX:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.compareTo:(Ljava/math/BigInteger;)I
ifgt 1
aload 0
getstatic org.h2.util.IntervalUtils.LEADING_MIN:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.compareTo:(Ljava/math/BigInteger;)I
ifge 2
1: StackMap locals:
StackMap stack:
sipush 22003
aload 0
invokevirtual java.math.BigInteger.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.math.BigInteger.longValue:()J
invokestatic java.lang.Math.abs:(J)J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 absolute Ljava/math/BigInteger;
MethodParameters:
Name Flags
absolute
public static boolean validateInterval(org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Lorg/h2/api/IntervalQualifier;ZJJ)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
lload 2
lconst_0
lcmp
ifne 4
lload 4
lconst_0
lcmp
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 1 - 13
1: 5
2: 5
3: 5
4: 5
5: 5
6: 7
7: 9
8: 11
9: 13
10: 15
11: 17
12: 19
13: 21
default: 23
}
5: StackMap locals:
StackMap stack:
lconst_1
lstore 6
start local 6 6: goto 24
end local 6 7: StackMap locals:
StackMap stack:
ldc 1000000000
lstore 6
start local 6 8: goto 24
end local 6 9: StackMap locals:
StackMap stack:
ldc 12
lstore 6
start local 6 10: goto 24
end local 6 11: StackMap locals:
StackMap stack:
ldc 24
lstore 6
start local 6 12: goto 24
end local 6 13: StackMap locals:
StackMap stack:
ldc 1440
lstore 6
start local 6 14: goto 24
end local 6 15: StackMap locals:
StackMap stack:
ldc 86400000000000
lstore 6
start local 6 16: goto 24
end local 6 17: StackMap locals:
StackMap stack:
ldc 60
lstore 6
start local 6 18: goto 24
end local 6 19: StackMap locals:
StackMap stack:
ldc 3600000000000
lstore 6
start local 6 20: goto 24
end local 6 21: StackMap locals:
StackMap stack:
ldc 60000000000
lstore 6
start local 6 22: goto 24
end local 6 23: StackMap locals:
StackMap stack:
ldc "interval"
aload 0
invokestatic org.h2.message.DbException.getInvalidValueException:(Ljava/lang/String;Ljava/lang/Object;)Lorg/h2/message/DbException;
athrow
start local 6 24: StackMap locals: long
StackMap stack:
lload 2
lconst_0
lcmp
iflt 25
lload 2
ldc 1000000000000000000
lcmp
iflt 26
25: StackMap locals:
StackMap stack:
ldc "interval"
lload 2
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
invokestatic org.h2.message.DbException.getInvalidValueException:(Ljava/lang/String;Ljava/lang/Object;)Lorg/h2/message/DbException;
athrow
26: StackMap locals:
StackMap stack:
lload 4
lconst_0
lcmp
iflt 27
lload 4
lload 6
lcmp
iflt 28
27: StackMap locals:
StackMap stack:
ldc "interval"
lload 4
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
invokestatic org.h2.message.DbException.getInvalidValueException:(Ljava/lang/String;Ljava/lang/Object;)Lorg/h2/message/DbException;
athrow
28: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 qualifier Lorg/h2/api/IntervalQualifier;
0 29 1 negative Z
0 29 2 leading J
0 29 4 remaining J
6 7 6 bound J
8 9 6 bound J
10 11 6 bound J
12 13 6 bound J
14 15 6 bound J
16 17 6 bound J
18 19 6 bound J
20 21 6 bound J
22 23 6 bound J
24 29 6 bound J
MethodParameters:
Name Flags
qualifier
negative
leading
remaining
public static long yearsFromInterval(org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Lorg/h2/api/IntervalQualifier;ZJJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
getstatic org.h2.api.IntervalQualifier.YEAR:Lorg/h2/api/IntervalQualifier;
if_acmpeq 1
aload 0
getstatic org.h2.api.IntervalQualifier.YEAR_TO_MONTH:Lorg/h2/api/IntervalQualifier;
if_acmpne 5
1: StackMap locals:
StackMap stack:
lload 2
lstore 6
start local 6 2: iload 1
ifeq 4
3: lload 6
lneg
lstore 6
4: StackMap locals: long
StackMap stack:
lload 6
lreturn
end local 6 5: StackMap locals:
StackMap stack:
lconst_0
lreturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 qualifier Lorg/h2/api/IntervalQualifier;
0 6 1 negative Z
0 6 2 leading J
0 6 4 remaining J
2 5 6 v J
MethodParameters:
Name Flags
qualifier
negative
leading
remaining
public static long monthsFromInterval(org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Lorg/h2/api/IntervalQualifier;ZJJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
getstatic org.h2.api.IntervalQualifier.MONTH:Lorg/h2/api/IntervalQualifier;
if_acmpne 3
1: lload 2
lstore 6
start local 6 2: goto 7
end local 6 StackMap locals:
StackMap stack:
3: aload 0
getstatic org.h2.api.IntervalQualifier.YEAR_TO_MONTH:Lorg/h2/api/IntervalQualifier;
if_acmpne 6
4: lload 4
lstore 6
start local 6 5: goto 7
end local 6 6: StackMap locals:
StackMap stack:
lconst_0
lreturn
start local 6 7: StackMap locals: long
StackMap stack:
iload 1
ifeq 9
8: lload 6
lneg
lstore 6
9: StackMap locals:
StackMap stack:
lload 6
lreturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 qualifier Lorg/h2/api/IntervalQualifier;
0 10 1 negative Z
0 10 2 leading J
0 10 4 remaining J
2 3 6 v J
5 6 6 v J
7 10 6 v J
MethodParameters:
Name Flags
qualifier
negative
leading
remaining
public static long daysFromInterval(org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Lorg/h2/api/IntervalQualifier;ZJJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 3 - 10
3: 1
4: 5
5: 5
6: 5
7: 5
8: 1
9: 1
10: 1
default: 5
}
1: StackMap locals:
StackMap stack:
lload 2
lstore 6
start local 6 2: iload 1
ifeq 4
3: lload 6
lneg
lstore 6
4: StackMap locals: long
StackMap stack:
lload 6
lreturn
end local 6 5: StackMap locals:
StackMap stack:
lconst_0
lreturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 qualifier Lorg/h2/api/IntervalQualifier;
0 6 1 negative Z
0 6 2 leading J
0 6 4 remaining J
2 5 6 v J
MethodParameters:
Name Flags
qualifier
negative
leading
remaining
public static long hoursFromInterval(org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Lorg/h2/api/IntervalQualifier;ZJJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 4 - 12
4: 1
5: 9
6: 9
7: 9
8: 3
9: 5
10: 7
11: 1
12: 1
default: 9
}
1: StackMap locals:
StackMap stack:
lload 2
lstore 6
start local 6 2: goto 10
end local 6 3: StackMap locals:
StackMap stack:
lload 4
lstore 6
start local 6 4: goto 10
end local 6 5: StackMap locals:
StackMap stack:
lload 4
ldc 60
ldiv
lstore 6
start local 6 6: goto 10
end local 6 7: StackMap locals:
StackMap stack:
lload 4
ldc 3600000000000
ldiv
lstore 6
start local 6 8: goto 10
end local 6 9: StackMap locals:
StackMap stack:
lconst_0
lreturn
start local 6 10: StackMap locals: long
StackMap stack:
iload 1
ifeq 12
11: lload 6
lneg
lstore 6
12: StackMap locals:
StackMap stack:
lload 6
lreturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 qualifier Lorg/h2/api/IntervalQualifier;
0 13 1 negative Z
0 13 2 leading J
0 13 4 remaining J
2 3 6 v J
4 5 6 v J
6 7 6 v J
8 9 6 v J
10 13 6 v J
MethodParameters:
Name Flags
qualifier
negative
leading
remaining
public static long minutesFromInterval(org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Lorg/h2/api/IntervalQualifier;ZJJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 5 - 13
5: 1
6: 11
7: 11
8: 11
9: 3
10: 5
11: 7
12: 9
13: 1
default: 11
}
1: StackMap locals:
StackMap stack:
lload 2
lstore 6
start local 6 2: goto 12
end local 6 3: StackMap locals:
StackMap stack:
lload 4
ldc 60
lrem
lstore 6
start local 6 4: goto 12
end local 6 5: StackMap locals:
StackMap stack:
lload 4
ldc 60000000000
ldiv
ldc 60
lrem
lstore 6
start local 6 6: goto 12
end local 6 7: StackMap locals:
StackMap stack:
lload 4
lstore 6
start local 6 8: goto 12
end local 6 9: StackMap locals:
StackMap stack:
lload 4
ldc 60000000000
ldiv
lstore 6
start local 6 10: goto 12
end local 6 11: StackMap locals:
StackMap stack:
lconst_0
lreturn
start local 6 12: StackMap locals: long
StackMap stack:
iload 1
ifeq 14
13: lload 6
lneg
lstore 6
14: StackMap locals:
StackMap stack:
lload 6
lreturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 qualifier Lorg/h2/api/IntervalQualifier;
0 15 1 negative Z
0 15 2 leading J
0 15 4 remaining J
2 3 6 v J
4 5 6 v J
6 7 6 v J
8 9 6 v J
10 11 6 v J
12 15 6 v J
MethodParameters:
Name Flags
qualifier
negative
leading
remaining
public static long nanosFromInterval(org.h2.api.IntervalQualifier, boolean, long, long);
descriptor: (Lorg/h2/api/IntervalQualifier;ZJJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: invokestatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:()[I
aload 0
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iaload
tableswitch { // 6 - 13
6: 1
7: 7
8: 7
9: 7
10: 3
11: 7
12: 3
13: 5
default: 7
}
1: StackMap locals:
StackMap stack:
lload 2
ldc 1000000000
lmul
lload 4
ladd
lstore 6
start local 6 2: goto 8
end local 6 3: StackMap locals:
StackMap stack:
lload 4
ldc 60000000000
lrem
lstore 6
start local 6 4: goto 8
end local 6 5: StackMap locals:
StackMap stack:
lload 4
lstore 6
start local 6 6: goto 8
end local 6 7: StackMap locals:
StackMap stack:
lconst_0
lreturn
start local 6 8: StackMap locals: long
StackMap stack:
iload 1
ifeq 10
9: lload 6
lneg
lstore 6
10: StackMap locals:
StackMap stack:
lload 6
lreturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 qualifier Lorg/h2/api/IntervalQualifier;
0 11 1 negative Z
0 11 2 leading J
0 11 4 remaining J
2 3 6 v J
4 5 6 v J
6 7 6 v J
8 11 6 v J
MethodParameters:
Name Flags
qualifier
negative
leading
remaining
static int[] $SWITCH_TABLE$org$h2$api$IntervalQualifier();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.h2.api.IntervalQualifier.values:()[Lorg/h2/api/IntervalQualifier;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.h2.api.IntervalQualifier.DAY:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.h2.api.IntervalQualifier.DAY_TO_HOUR:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 8
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.h2.api.IntervalQualifier.DAY_TO_MINUTE:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 9
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.h2.api.IntervalQualifier.DAY_TO_SECOND:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 10
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.h2.api.IntervalQualifier.HOUR:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.h2.api.IntervalQualifier.HOUR_TO_MINUTE:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 11
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.h2.api.IntervalQualifier.HOUR_TO_SECOND:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 12
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic org.h2.api.IntervalQualifier.MINUTE:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iconst_5
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic org.h2.api.IntervalQualifier.MINUTE_TO_SECOND:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 13
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic org.h2.api.IntervalQualifier.MONTH:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iconst_2
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic org.h2.api.IntervalQualifier.SECOND:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 6
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic org.h2.api.IntervalQualifier.YEAR:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
iconst_1
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic org.h2.api.IntervalQualifier.YEAR_TO_MONTH:Lorg/h2/api/IntervalQualifier;
invokevirtual org.h2.api.IntervalQualifier.ordinal:()I
bipush 7
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
dup
putstatic org.h2.util.IntervalUtils.$SWITCH_TABLE$org$h2$api$IntervalQualifier:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
}
SourceFile: "IntervalUtils.java"