public final class java.time.Duration implements java.time.temporal.TemporalAmount, java.lang.Comparable<java.time.Duration>, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: java.time.Duration
super_class: java.lang.Object
{
public static final java.time.Duration ZERO;
descriptor: Ljava/time/Duration;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3078945930695997490
private static final java.math.BigInteger BI_NANOS_PER_SECOND;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.regex.Pattern PATTERN;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final long seconds;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int nanos;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$java$time$temporal$ChronoUnit;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: new java.time.Duration
dup
lconst_0
iconst_0
invokespecial java.time.Duration.<init>:(JI)V
putstatic java.time.Duration.ZERO:Ljava/time/Duration;
1: ldc 1000000000
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putstatic java.time.Duration.BI_NANOS_PER_SECOND:Ljava/math/BigInteger;
2: ldc "([-+]?)P(?:([-+]?[0-9]+)D)?(T(?:([-+]?[0-9]+)H)?(?:([-+]?[0-9]+)M)?(?:([-+]?[0-9]+)(?:[.,]([0-9]{0,9}))?S)?)?"
3: iconst_2
4: invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;I)Ljava/util/regex/Pattern;
5: putstatic java.time.Duration.PATTERN:Ljava/util/regex/Pattern;
6: return
LocalVariableTable:
Start End Slot Name Signature
public static java.time.Duration ofDays(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc 86400
invokestatic java.lang.Math.multiplyExact:(JJ)J
iconst_0
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 days J
MethodParameters:
Name Flags
days
public static java.time.Duration ofHours(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc 3600
invokestatic java.lang.Math.multiplyExact:(JJ)J
iconst_0
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 hours J
MethodParameters:
Name Flags
hours
public static java.time.Duration ofMinutes(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc 60
invokestatic java.lang.Math.multiplyExact:(JJ)J
iconst_0
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 minutes J
MethodParameters:
Name Flags
minutes
public static java.time.Duration ofSeconds(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: lload 0
iconst_0
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 seconds J
MethodParameters:
Name Flags
seconds
public static java.time.Duration ofSeconds(long, long);
descriptor: (JJ)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 2 0: lload 0
lload 2
ldc 1000000000
invokestatic java.lang.Math.floorDiv:(JJ)J
invokestatic java.lang.Math.addExact:(JJ)J
lstore 4
start local 4 1: lload 2
ldc 1000000000
invokestatic java.lang.Math.floorMod:(JJ)J
l2i
istore 6
start local 6 2: lload 4
iload 6
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 6 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 seconds J
0 3 2 nanoAdjustment J
1 3 4 secs J
2 3 6 nos I
MethodParameters:
Name Flags
seconds
nanoAdjustment
public static java.time.Duration ofMillis(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: lload 0
ldc 1000
ldiv
lstore 2
start local 2 1: lload 0
ldc 1000
lrem
l2i
istore 4
start local 4 2: iload 4
ifge 5
3: iinc 4 1000
4: lload 2
lconst_1
lsub
lstore 2
5: StackMap locals: long int
StackMap stack:
lload 2
iload 4
ldc 1000000
imul
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 millis J
1 6 2 secs J
2 6 4 mos I
MethodParameters:
Name Flags
millis
public static java.time.Duration ofNanos(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: lload 0
ldc 1000000000
ldiv
lstore 2
start local 2 1: lload 0
ldc 1000000000
lrem
l2i
istore 4
start local 4 2: iload 4
ifge 5
3: iload 4
i2l
ldc 1000000000
ladd
l2i
istore 4
4: lload 2
lconst_1
lsub
lstore 2
5: StackMap locals: long int
StackMap stack:
lload 2
iload 4
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 nanos J
1 6 2 secs J
2 6 4 nos I
MethodParameters:
Name Flags
nanos
public static java.time.Duration of(long, java.time.temporal.TemporalUnit);
descriptor: (JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 2 0: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
lload 0
aload 2
invokevirtual java.time.Duration.plus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 amount J
0 1 2 unit Ljava/time/temporal/TemporalUnit;
MethodParameters:
Name Flags
amount
unit
public static java.time.Duration from(java.time.temporal.TemporalAmount);
descriptor: (Ljava/time/temporal/TemporalAmount;)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
ldc "amount"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
astore 1
start local 1 2: aload 0
invokeinterface java.time.temporal.TemporalAmount.getUnits:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: java.time.temporal.TemporalAmount java.time.Duration top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.time.temporal.TemporalUnit
astore 2
start local 2 4: aload 1
aload 0
aload 2
invokeinterface java.time.temporal.TemporalAmount.get:(Ljava/time/temporal/TemporalUnit;)J
aload 2
invokevirtual java.time.Duration.plus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
astore 1
end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 amount Ljava/time/temporal/TemporalAmount;
2 7 1 duration Ljava/time/Duration;
4 5 2 unit Ljava/time/temporal/TemporalUnit;
MethodParameters:
Name Flags
amount
public static java.time.Duration parse(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=18, args_size=1
start local 0 0: aload 0
ldc "text"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: getstatic java.time.Duration.PATTERN:Ljava/util/regex/Pattern;
aload 0
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 1
start local 1 2: aload 1
invokevirtual java.util.regex.Matcher.matches:()Z
ifeq 22
3: ldc "T"
aload 1
iconst_3
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 22
4: ldc "-"
aload 1
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
istore 2
start local 2 5: aload 1
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 3
start local 3 6: aload 1
iconst_4
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 4
start local 4 7: aload 1
iconst_5
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 5
start local 5 8: aload 1
bipush 6
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 6
start local 6 9: aload 1
bipush 7
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 7
start local 7 10: aload 3
ifnonnull 11
aload 4
ifnonnull 11
aload 5
ifnonnull 11
aload 6
ifnull 22
11: StackMap locals: java.lang.CharSequence java.util.regex.Matcher int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 0
aload 3
ldc 86400
ldc "days"
invokestatic java.time.Duration.parseNumber:(Ljava/lang/CharSequence;Ljava/lang/String;ILjava/lang/String;)J
lstore 8
start local 8 12: aload 0
aload 4
sipush 3600
ldc "hours"
invokestatic java.time.Duration.parseNumber:(Ljava/lang/CharSequence;Ljava/lang/String;ILjava/lang/String;)J
lstore 10
start local 10 13: aload 0
aload 5
bipush 60
ldc "minutes"
invokestatic java.time.Duration.parseNumber:(Ljava/lang/CharSequence;Ljava/lang/String;ILjava/lang/String;)J
lstore 12
start local 12 14: aload 0
aload 6
iconst_1
ldc "seconds"
invokestatic java.time.Duration.parseNumber:(Ljava/lang/CharSequence;Ljava/lang/String;ILjava/lang/String;)J
lstore 14
start local 14 15: aload 0
aload 7
lload 14
lconst_0
lcmp
ifge 16
iconst_m1
goto 17
StackMap locals: java.lang.CharSequence java.util.regex.Matcher int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String long long long long
StackMap stack: java.lang.CharSequence java.lang.String
16: iconst_1
StackMap locals: java.lang.CharSequence java.util.regex.Matcher int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String long long long long
StackMap stack: java.lang.CharSequence java.lang.String int
17: invokestatic java.time.Duration.parseFraction:(Ljava/lang/CharSequence;Ljava/lang/String;I)I
istore 16
start local 16 18: iload 2
lload 8
lload 10
lload 12
lload 14
iload 16
invokestatic java.time.Duration.create:(ZJJJJI)Ljava/time/Duration;
19: areturn
20: StackMap locals: java.lang.CharSequence java.util.regex.Matcher int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String long long long long int
StackMap stack: java.lang.ArithmeticException
astore 17
start local 17 21: new java.time.format.DateTimeParseException
dup
ldc "Text cannot be parsed to a Duration: overflow"
aload 0
iconst_0
invokespecial java.time.format.DateTimeParseException.<init>:(Ljava/lang/String;Ljava/lang/CharSequence;I)V
aload 17
invokevirtual java.time.format.DateTimeParseException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
checkcast java.time.format.DateTimeParseException
athrow
end local 17 end local 16 end local 14 end local 12 end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 22: StackMap locals: java.lang.CharSequence java.util.regex.Matcher
StackMap stack:
new java.time.format.DateTimeParseException
dup
ldc "Text cannot be parsed to a Duration"
aload 0
iconst_0
invokespecial java.time.format.DateTimeParseException.<init>:(Ljava/lang/String;Ljava/lang/CharSequence;I)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 text Ljava/lang/CharSequence;
2 23 1 matcher Ljava/util/regex/Matcher;
5 22 2 negate Z
6 22 3 dayMatch Ljava/lang/String;
7 22 4 hourMatch Ljava/lang/String;
8 22 5 minuteMatch Ljava/lang/String;
9 22 6 secondMatch Ljava/lang/String;
10 22 7 fractionMatch Ljava/lang/String;
12 22 8 daysAsSecs J
13 22 10 hoursAsSecs J
14 22 12 minsAsSecs J
15 22 14 seconds J
18 22 16 nanos I
21 22 17 ex Ljava/lang/ArithmeticException;
Exception table:
from to target type
18 19 20 Class java.lang.ArithmeticException
MethodParameters:
Name Flags
text
private static long parseNumber(java.lang.CharSequence, java.lang.String, int, java.lang.String);
descriptor: (Ljava/lang/CharSequence;Ljava/lang/String;ILjava/lang/String;)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: lconst_0
lreturn
2: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lstore 4
start local 4 3: lload 4
iload 2
i2l
invokestatic java.lang.Math.multiplyExact:(JJ)J
4: lreturn
end local 4 5: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 4
start local 4 6: new java.time.format.DateTimeParseException
dup
new java.lang.StringBuilder
dup
ldc "Text cannot be parsed to a Duration: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
iconst_0
invokespecial java.time.format.DateTimeParseException.<init>:(Ljava/lang/String;Ljava/lang/CharSequence;I)V
aload 4
invokevirtual java.time.format.DateTimeParseException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
checkcast java.time.format.DateTimeParseException
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 text Ljava/lang/CharSequence;
0 7 1 parsed Ljava/lang/String;
0 7 2 multiplier I
0 7 3 errorText Ljava/lang/String;
3 5 4 val J
6 7 4 ex Ljava/lang/RuntimeException;
Exception table:
from to target type
2 4 5 Class java.lang.NumberFormatException
2 4 5 Class java.lang.ArithmeticException
MethodParameters:
Name Flags
text
parsed
multiplier
errorText
private static int parseFraction(java.lang.CharSequence, java.lang.String, int);
descriptor: (Ljava/lang/CharSequence;Ljava/lang/String;I)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 1
invokevirtual java.lang.String.length:()I
ifne 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "000000000"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
bipush 9
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 1
3: aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
iload 2
imul
4: ireturn
5: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 3
start local 3 6: new java.time.format.DateTimeParseException
dup
ldc "Text cannot be parsed to a Duration: fraction"
aload 0
iconst_0
invokespecial java.time.format.DateTimeParseException.<init>:(Ljava/lang/String;Ljava/lang/CharSequence;I)V
aload 3
invokevirtual java.time.format.DateTimeParseException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
checkcast java.time.format.DateTimeParseException
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 text Ljava/lang/CharSequence;
0 7 1 parsed Ljava/lang/String;
0 7 2 negate I
6 7 3 ex Ljava/lang/RuntimeException;
Exception table:
from to target type
2 4 5 Class java.lang.NumberFormatException
2 4 5 Class java.lang.ArithmeticException
MethodParameters:
Name Flags
text
parsed
negate
private static java.time.Duration create(boolean, long, long, long, long, int);
descriptor: (ZJJJJI)Ljava/time/Duration;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=12, args_size=6
start local 0 start local 1 start local 3 start local 5 start local 7 start local 9 0: lload 1
lload 3
lload 5
lload 7
invokestatic java.lang.Math.addExact:(JJ)J
invokestatic java.lang.Math.addExact:(JJ)J
invokestatic java.lang.Math.addExact:(JJ)J
lstore 10
start local 10 1: iload 0
ifeq 3
2: lload 10
iload 9
i2l
invokestatic java.time.Duration.ofSeconds:(JJ)Ljava/time/Duration;
invokevirtual java.time.Duration.negated:()Ljava/time/Duration;
areturn
3: StackMap locals: long
StackMap stack:
lload 10
iload 9
i2l
invokestatic java.time.Duration.ofSeconds:(JJ)Ljava/time/Duration;
areturn
end local 10 end local 9 end local 7 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 negate Z
0 4 1 daysAsSecs J
0 4 3 hoursAsSecs J
0 4 5 minsAsSecs J
0 4 7 secs J
0 4 9 nanos I
1 4 10 seconds J
MethodParameters:
Name Flags
negate
daysAsSecs
hoursAsSecs
minsAsSecs
secs
nanos
public static java.time.Duration between(java.time.temporal.Temporal, java.time.temporal.Temporal);
descriptor: (Ljava/time/temporal/Temporal;Ljava/time/temporal/Temporal;)Ljava/time/Duration;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic java.time.temporal.ChronoUnit.NANOS:Ljava/time/temporal/ChronoUnit;
invokeinterface java.time.temporal.Temporal.until:(Ljava/time/temporal/Temporal;Ljava/time/temporal/TemporalUnit;)J
invokestatic java.time.Duration.ofNanos:(J)Ljava/time/Duration;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.RuntimeException
pop
3: aload 0
aload 1
getstatic java.time.temporal.ChronoUnit.SECONDS:Ljava/time/temporal/ChronoUnit;
invokeinterface java.time.temporal.Temporal.until:(Ljava/time/temporal/Temporal;Ljava/time/temporal/TemporalUnit;)J
lstore 2
start local 2 4: aload 1
getstatic java.time.temporal.ChronoField.NANO_OF_SECOND:Ljava/time/temporal/ChronoField;
invokeinterface java.time.temporal.Temporal.getLong:(Ljava/time/temporal/TemporalField;)J
aload 0
getstatic java.time.temporal.ChronoField.NANO_OF_SECOND:Ljava/time/temporal/ChronoField;
invokeinterface java.time.temporal.Temporal.getLong:(Ljava/time/temporal/TemporalField;)J
lsub
lstore 4
start local 4 5: lload 2
lconst_0
lcmp
ifle 8
lload 4
lconst_0
lcmp
ifge 8
6: lload 2
lconst_1
ladd
lstore 2
7: goto 13
StackMap locals: long long
StackMap stack:
8: lload 2
lconst_0
lcmp
ifge 13
lload 4
lconst_0
lcmp
ifle 13
9: lload 2
lconst_1
lsub
lstore 2
10: goto 13
end local 4 StackMap locals: java.time.temporal.Temporal java.time.temporal.Temporal long
StackMap stack: java.time.DateTimeException
11: pop
12: lconst_0
lstore 4
start local 4 13: StackMap locals: long
StackMap stack:
lload 2
lload 4
invokestatic java.time.Duration.ofSeconds:(JJ)Ljava/time/Duration;
areturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 startInclusive Ljava/time/temporal/Temporal;
0 14 1 endExclusive Ljava/time/temporal/Temporal;
4 14 2 secs J
5 11 4 nanos J
13 14 4 nanos J
Exception table:
from to target type
0 1 2 Class java.time.DateTimeException
0 1 2 Class java.lang.ArithmeticException
4 10 11 Class java.time.DateTimeException
MethodParameters:
Name Flags
startInclusive
endExclusive
private static java.time.Duration create(long, int);
descriptor: (JI)Ljava/time/Duration;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 2 0: lload 0
iload 2
i2l
lor
lconst_0
lcmp
ifne 2
1: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
areturn
2: StackMap locals:
StackMap stack:
new java.time.Duration
dup
lload 0
iload 2
invokespecial java.time.Duration.<init>:(JI)V
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 seconds J
0 3 2 nanoAdjustment I
MethodParameters:
Name Flags
seconds
nanoAdjustment
private void <init>(long, int);
descriptor: (JI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
lload 1
putfield java.time.Duration.seconds:J
2: aload 0
iload 3
putfield java.time.Duration.nanos:I
3: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/time/Duration;
0 4 1 seconds J
0 4 3 nanos I
MethodParameters:
Name Flags
seconds
nanos
public long get(java.time.temporal.TemporalUnit);
descriptor: (Ljava/time/temporal/TemporalUnit;)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getstatic java.time.temporal.ChronoUnit.SECONDS:Ljava/time/temporal/ChronoUnit;
if_acmpne 2
1: aload 0
getfield java.time.Duration.seconds:J
lreturn
2: StackMap locals:
StackMap stack:
aload 1
getstatic java.time.temporal.ChronoUnit.NANOS:Ljava/time/temporal/ChronoUnit;
if_acmpne 4
3: aload 0
getfield java.time.Duration.nanos:I
i2l
lreturn
4: StackMap locals:
StackMap stack:
new java.time.temporal.UnsupportedTemporalTypeException
dup
new java.lang.StringBuilder
dup
ldc "Unsupported unit: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.time.temporal.UnsupportedTemporalTypeException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/time/Duration;
0 5 1 unit Ljava/time/temporal/TemporalUnit;
MethodParameters:
Name Flags
unit
public java.util.List<java.time.temporal.TemporalUnit> getUnits();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic java.time.Duration$DurationUnits.UNITS:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
Signature: ()Ljava/util/List<Ljava/time/temporal/TemporalUnit;>;
public boolean isZero();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
aload 0
getfield java.time.Duration.nanos:I
i2l
lor
lconst_0
lcmp
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/time/Duration;
public boolean isNegative();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
lconst_0
lcmp
ifge 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/time/Duration;
public long getSeconds();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
public int getNano();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.nanos:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
public java.time.Duration withSeconds(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: lload 1
aload 0
getfield java.time.Duration.nanos:I
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 seconds J
MethodParameters:
Name Flags
seconds
public java.time.Duration withNanos(int);
descriptor: (I)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.time.temporal.ChronoField.NANO_OF_SECOND:Ljava/time/temporal/ChronoField;
iload 1
i2l
invokevirtual java.time.temporal.ChronoField.checkValidIntValue:(J)I
pop
1: aload 0
getfield java.time.Duration.seconds:J
iload 1
invokestatic java.time.Duration.create:(JI)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/time/Duration;
0 2 1 nanoOfSecond I
MethodParameters:
Name Flags
nanoOfSecond
public java.time.Duration plus(java.time.Duration);
descriptor: (Ljava/time/Duration;)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.time.Duration.getSeconds:()J
aload 1
invokevirtual java.time.Duration.getNano:()I
i2l
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 duration Ljava/time/Duration;
MethodParameters:
Name Flags
duration
public java.time.Duration plus(long, java.time.temporal.TemporalUnit);
descriptor: (JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 3 0: aload 3
ldc "unit"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 3
getstatic java.time.temporal.ChronoUnit.DAYS:Ljava/time/temporal/ChronoUnit;
if_acmpne 3
2: aload 0
lload 1
ldc 86400
invokestatic java.lang.Math.multiplyExact:(JJ)J
lconst_0
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
3: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.time.temporal.TemporalUnit.isDurationEstimated:()Z
ifeq 5
4: new java.time.temporal.UnsupportedTemporalTypeException
dup
ldc "Unit must not have an estimated duration"
invokespecial java.time.temporal.UnsupportedTemporalTypeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
lload 1
lconst_0
lcmp
ifne 7
6: aload 0
areturn
7: StackMap locals:
StackMap stack:
aload 3
instanceof java.time.temporal.ChronoUnit
ifeq 14
8: invokestatic java.time.Duration.$SWITCH_TABLE$java$time$temporal$ChronoUnit:()[I
aload 3
checkcast java.time.temporal.ChronoUnit
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 9
2: 10
3: 11
4: 12
default: 13
}
9: StackMap locals:
StackMap stack:
aload 0
lload 1
invokevirtual java.time.Duration.plusNanos:(J)Ljava/time/Duration;
areturn
10: StackMap locals:
StackMap stack:
aload 0
lload 1
ldc 1000000000
ldiv
ldc 1000
lmul
invokevirtual java.time.Duration.plusSeconds:(J)Ljava/time/Duration;
lload 1
ldc 1000000000
lrem
ldc 1000
lmul
invokevirtual java.time.Duration.plusNanos:(J)Ljava/time/Duration;
areturn
11: StackMap locals:
StackMap stack:
aload 0
lload 1
invokevirtual java.time.Duration.plusMillis:(J)Ljava/time/Duration;
areturn
12: StackMap locals:
StackMap stack:
aload 0
lload 1
invokevirtual java.time.Duration.plusSeconds:(J)Ljava/time/Duration;
areturn
13: StackMap locals:
StackMap stack:
aload 0
aload 3
invokeinterface java.time.temporal.TemporalUnit.getDuration:()Ljava/time/Duration;
getfield java.time.Duration.seconds:J
lload 1
invokestatic java.lang.Math.multiplyExact:(JJ)J
invokevirtual java.time.Duration.plusSeconds:(J)Ljava/time/Duration;
areturn
14: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.time.temporal.TemporalUnit.getDuration:()Ljava/time/Duration;
lload 1
invokevirtual java.time.Duration.multipliedBy:(J)Ljava/time/Duration;
astore 4
start local 4 15: aload 0
aload 4
invokevirtual java.time.Duration.getSeconds:()J
invokevirtual java.time.Duration.plusSeconds:(J)Ljava/time/Duration;
aload 4
invokevirtual java.time.Duration.getNano:()I
i2l
invokevirtual java.time.Duration.plusNanos:(J)Ljava/time/Duration;
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljava/time/Duration;
0 16 1 amountToAdd J
0 16 3 unit Ljava/time/temporal/TemporalUnit;
15 16 4 duration Ljava/time/Duration;
MethodParameters:
Name Flags
amountToAdd
unit
public java.time.Duration plusDays(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
ldc 86400
invokestatic java.lang.Math.multiplyExact:(JJ)J
lconst_0
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 daysToAdd J
MethodParameters:
Name Flags
daysToAdd
public java.time.Duration plusHours(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
ldc 3600
invokestatic java.lang.Math.multiplyExact:(JJ)J
lconst_0
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 hoursToAdd J
MethodParameters:
Name Flags
hoursToAdd
public java.time.Duration plusMinutes(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
ldc 60
invokestatic java.lang.Math.multiplyExact:(JJ)J
lconst_0
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 minutesToAdd J
MethodParameters:
Name Flags
minutesToAdd
public java.time.Duration plusSeconds(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
lconst_0
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 secondsToAdd J
MethodParameters:
Name Flags
secondsToAdd
public java.time.Duration plusMillis(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
ldc 1000
ldiv
lload 1
ldc 1000
lrem
ldc 1000000
lmul
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 millisToAdd J
MethodParameters:
Name Flags
millisToAdd
public java.time.Duration plusNanos(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lconst_0
lload 1
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 nanosToAdd J
MethodParameters:
Name Flags
nanosToAdd
private java.time.Duration plus(long, long);
descriptor: (JJ)Ljava/time/Duration;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=9, args_size=3
start local 0 start local 1 start local 3 0: lload 1
lload 3
lor
lconst_0
lcmp
ifne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.time.Duration.seconds:J
lload 1
invokestatic java.lang.Math.addExact:(JJ)J
lstore 5
start local 5 3: lload 5
lload 3
ldc 1000000000
ldiv
invokestatic java.lang.Math.addExact:(JJ)J
lstore 5
4: lload 3
ldc 1000000000
lrem
lstore 3
5: aload 0
getfield java.time.Duration.nanos:I
i2l
lload 3
ladd
lstore 7
start local 7 6: lload 5
lload 7
invokestatic java.time.Duration.ofSeconds:(JJ)Ljava/time/Duration;
areturn
end local 7 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/time/Duration;
0 7 1 secondsToAdd J
0 7 3 nanosToAdd J
3 7 5 epochSec J
6 7 7 nanoAdjustment J
MethodParameters:
Name Flags
secondsToAdd
nanosToAdd
public java.time.Duration minus(java.time.Duration);
descriptor: (Ljava/time/Duration;)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.time.Duration.getSeconds:()J
lstore 2
start local 2 1: aload 1
invokevirtual java.time.Duration.getNano:()I
istore 4
start local 4 2: lload 2
ldc -9223372036854775808
lcmp
ifne 4
3: aload 0
ldc 9223372036854775807
iload 4
ineg
i2l
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
lconst_1
lconst_0
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
4: StackMap locals: long int
StackMap stack:
aload 0
lload 2
lneg
iload 4
ineg
i2l
invokevirtual java.time.Duration.plus:(JJ)Ljava/time/Duration;
areturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/time/Duration;
0 5 1 duration Ljava/time/Duration;
1 5 2 secsToSubtract J
2 5 4 nanosToSubtract I
MethodParameters:
Name Flags
duration
public java.time.Duration minus(long, java.time.temporal.TemporalUnit);
descriptor: (JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 3 0: lload 1
ldc -9223372036854775808
lcmp
ifne 1
aload 0
ldc 9223372036854775807
aload 3
invokevirtual java.time.Duration.plus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
lconst_1
aload 3
invokevirtual java.time.Duration.plus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
lload 1
lneg
aload 3
invokevirtual java.time.Duration.plus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/Duration;
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 amountToSubtract J
0 3 3 unit Ljava/time/temporal/TemporalUnit;
MethodParameters:
Name Flags
amountToSubtract
unit
public java.time.Duration minusDays(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc -9223372036854775808
lcmp
ifne 1
aload 0
ldc 9223372036854775807
invokevirtual java.time.Duration.plusDays:(J)Ljava/time/Duration;
lconst_1
invokevirtual java.time.Duration.plusDays:(J)Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
lload 1
lneg
invokevirtual java.time.Duration.plusDays:(J)Ljava/time/Duration;
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 daysToSubtract J
MethodParameters:
Name Flags
daysToSubtract
public java.time.Duration minusHours(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc -9223372036854775808
lcmp
ifne 1
aload 0
ldc 9223372036854775807
invokevirtual java.time.Duration.plusHours:(J)Ljava/time/Duration;
lconst_1
invokevirtual java.time.Duration.plusHours:(J)Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
lload 1
lneg
invokevirtual java.time.Duration.plusHours:(J)Ljava/time/Duration;
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 hoursToSubtract J
MethodParameters:
Name Flags
hoursToSubtract
public java.time.Duration minusMinutes(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc -9223372036854775808
lcmp
ifne 1
aload 0
ldc 9223372036854775807
invokevirtual java.time.Duration.plusMinutes:(J)Ljava/time/Duration;
lconst_1
invokevirtual java.time.Duration.plusMinutes:(J)Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
lload 1
lneg
invokevirtual java.time.Duration.plusMinutes:(J)Ljava/time/Duration;
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 minutesToSubtract J
MethodParameters:
Name Flags
minutesToSubtract
public java.time.Duration minusSeconds(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc -9223372036854775808
lcmp
ifne 1
aload 0
ldc 9223372036854775807
invokevirtual java.time.Duration.plusSeconds:(J)Ljava/time/Duration;
lconst_1
invokevirtual java.time.Duration.plusSeconds:(J)Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
lload 1
lneg
invokevirtual java.time.Duration.plusSeconds:(J)Ljava/time/Duration;
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 secondsToSubtract J
MethodParameters:
Name Flags
secondsToSubtract
public java.time.Duration minusMillis(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc -9223372036854775808
lcmp
ifne 1
aload 0
ldc 9223372036854775807
invokevirtual java.time.Duration.plusMillis:(J)Ljava/time/Duration;
lconst_1
invokevirtual java.time.Duration.plusMillis:(J)Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
lload 1
lneg
invokevirtual java.time.Duration.plusMillis:(J)Ljava/time/Duration;
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 millisToSubtract J
MethodParameters:
Name Flags
millisToSubtract
public java.time.Duration minusNanos(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc -9223372036854775808
lcmp
ifne 1
aload 0
ldc 9223372036854775807
invokevirtual java.time.Duration.plusNanos:(J)Ljava/time/Duration;
lconst_1
invokevirtual java.time.Duration.plusNanos:(J)Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
lload 1
lneg
invokevirtual java.time.Duration.plusNanos:(J)Ljava/time/Duration;
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 nanosToSubtract J
MethodParameters:
Name Flags
nanosToSubtract
public java.time.Duration multipliedBy(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifne 2
1: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
areturn
2: StackMap locals:
StackMap stack:
lload 1
lconst_1
lcmp
ifne 4
3: aload 0
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.time.Duration.toSeconds:()Ljava/math/BigDecimal;
lload 1
invokestatic java.math.BigDecimal.valueOf:(J)Ljava/math/BigDecimal;
invokevirtual java.math.BigDecimal.multiply:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
invokestatic java.time.Duration.create:(Ljava/math/BigDecimal;)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/time/Duration;
0 5 1 multiplicand J
MethodParameters:
Name Flags
multiplicand
public java.time.Duration dividedBy(long);
descriptor: (J)Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifne 2
1: new java.lang.ArithmeticException
dup
ldc "Cannot divide by zero"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
lload 1
lconst_1
lcmp
ifne 4
3: aload 0
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.time.Duration.toSeconds:()Ljava/math/BigDecimal;
lload 1
invokestatic java.math.BigDecimal.valueOf:(J)Ljava/math/BigDecimal;
getstatic java.math.RoundingMode.DOWN:Ljava/math/RoundingMode;
invokevirtual java.math.BigDecimal.divide:(Ljava/math/BigDecimal;Ljava/math/RoundingMode;)Ljava/math/BigDecimal;
invokestatic java.time.Duration.create:(Ljava/math/BigDecimal;)Ljava/time/Duration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/time/Duration;
0 5 1 divisor J
MethodParameters:
Name Flags
divisor
private java.math.BigDecimal toSeconds();
descriptor: ()Ljava/math/BigDecimal;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
invokestatic java.math.BigDecimal.valueOf:(J)Ljava/math/BigDecimal;
aload 0
getfield java.time.Duration.nanos:I
i2l
bipush 9
invokestatic java.math.BigDecimal.valueOf:(JI)Ljava/math/BigDecimal;
invokevirtual java.math.BigDecimal.add:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
private static java.time.Duration create(java.math.BigDecimal);
descriptor: (Ljava/math/BigDecimal;)Ljava/time/Duration;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
bipush 9
invokevirtual java.math.BigDecimal.movePointRight:(I)Ljava/math/BigDecimal;
invokevirtual java.math.BigDecimal.toBigIntegerExact:()Ljava/math/BigInteger;
astore 1
start local 1 1: aload 1
getstatic java.time.Duration.BI_NANOS_PER_SECOND:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divideAndRemainder:(Ljava/math/BigInteger;)[Ljava/math/BigInteger;
astore 2
start local 2 2: aload 2
iconst_0
aaload
invokevirtual java.math.BigInteger.bitLength:()I
bipush 63
if_icmple 4
3: new java.lang.ArithmeticException
dup
new java.lang.StringBuilder
dup
ldc "Exceeds capacity of Duration: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: java.math.BigInteger java.math.BigInteger[]
StackMap stack:
aload 2
iconst_0
aaload
invokevirtual java.math.BigInteger.longValue:()J
aload 2
iconst_1
aaload
invokevirtual java.math.BigInteger.intValue:()I
i2l
invokestatic java.time.Duration.ofSeconds:(JJ)Ljava/time/Duration;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 seconds Ljava/math/BigDecimal;
1 5 1 nanos Ljava/math/BigInteger;
2 5 2 divRem [Ljava/math/BigInteger;
MethodParameters:
Name Flags
seconds
public java.time.Duration negated();
descriptor: ()Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc -1
invokevirtual java.time.Duration.multipliedBy:(J)Ljava/time/Duration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
public java.time.Duration abs();
descriptor: ()Ljava/time/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.time.Duration.isNegative:()Z
ifeq 1
aload 0
invokevirtual java.time.Duration.negated:()Ljava/time/Duration;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
StackMap locals:
StackMap stack: java.time.Duration
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
public java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
descriptor: (Ljava/time/temporal/Temporal;)Ljava/time/temporal/Temporal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.time.Duration.seconds:J
lconst_0
lcmp
ifeq 2
1: aload 1
aload 0
getfield java.time.Duration.seconds:J
getstatic java.time.temporal.ChronoUnit.SECONDS:Ljava/time/temporal/ChronoUnit;
invokeinterface java.time.temporal.Temporal.plus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/temporal/Temporal;
astore 1
2: StackMap locals:
StackMap stack:
aload 0
getfield java.time.Duration.nanos:I
ifeq 4
3: aload 1
aload 0
getfield java.time.Duration.nanos:I
i2l
getstatic java.time.temporal.ChronoUnit.NANOS:Ljava/time/temporal/ChronoUnit;
invokeinterface java.time.temporal.Temporal.plus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/temporal/Temporal;
astore 1
4: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/time/Duration;
0 5 1 temporal Ljava/time/temporal/Temporal;
MethodParameters:
Name Flags
temporal
public java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
descriptor: (Ljava/time/temporal/Temporal;)Ljava/time/temporal/Temporal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.time.Duration.seconds:J
lconst_0
lcmp
ifeq 2
1: aload 1
aload 0
getfield java.time.Duration.seconds:J
getstatic java.time.temporal.ChronoUnit.SECONDS:Ljava/time/temporal/ChronoUnit;
invokeinterface java.time.temporal.Temporal.minus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/temporal/Temporal;
astore 1
2: StackMap locals:
StackMap stack:
aload 0
getfield java.time.Duration.nanos:I
ifeq 4
3: aload 1
aload 0
getfield java.time.Duration.nanos:I
i2l
getstatic java.time.temporal.ChronoUnit.NANOS:Ljava/time/temporal/ChronoUnit;
invokeinterface java.time.temporal.Temporal.minus:(JLjava/time/temporal/TemporalUnit;)Ljava/time/temporal/Temporal;
astore 1
4: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/time/Duration;
0 5 1 temporal Ljava/time/temporal/Temporal;
MethodParameters:
Name Flags
temporal
public long toDays();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
ldc 86400
ldiv
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
public long toHours();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
ldc 3600
ldiv
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
public long toMinutes();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
ldc 60
ldiv
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
public long toMillis();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
ldc 1000
invokestatic java.lang.Math.multiplyExact:(JJ)J
lstore 1
start local 1 1: lload 1
aload 0
getfield java.time.Duration.nanos:I
ldc 1000000
idiv
i2l
invokestatic java.lang.Math.addExact:(JJ)J
lstore 1
2: lload 1
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
1 3 1 millis J
public long toNanos();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
ldc 1000000000
invokestatic java.lang.Math.multiplyExact:(JJ)J
lstore 1
start local 1 1: lload 1
aload 0
getfield java.time.Duration.nanos:I
i2l
invokestatic java.lang.Math.addExact:(JJ)J
lstore 1
2: lload 1
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
1 3 1 totalNanos J
public int compareTo(java.time.Duration);
descriptor: (Ljava/time/Duration;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.time.Duration.seconds:J
aload 1
getfield java.time.Duration.seconds:J
invokestatic java.lang.Long.compare:(JJ)I
istore 2
start local 2 1: iload 2
ifeq 3
2: iload 2
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
getfield java.time.Duration.nanos:I
aload 1
getfield java.time.Duration.nanos:I
isub
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/time/Duration;
0 4 1 otherDuration Ljava/time/Duration;
1 4 2 cmp I
MethodParameters:
Name Flags
otherDuration
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof java.time.Duration
ifeq 8
3: aload 1
checkcast java.time.Duration
astore 2
start local 2 4: aload 0
getfield java.time.Duration.seconds:J
aload 2
getfield java.time.Duration.seconds:J
lcmp
ifne 7
5: aload 0
getfield java.time.Duration.nanos:I
aload 2
getfield java.time.Duration.nanos:I
if_icmpne 7
6: iconst_1
ireturn
StackMap locals: java.time.Duration
StackMap stack:
7: iconst_0
ireturn
end local 2 8: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/time/Duration;
0 9 1 otherDuration Ljava/lang/Object;
4 8 2 other Ljava/time/Duration;
MethodParameters:
Name Flags
otherDuration
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield java.time.Duration.seconds:J
aload 0
getfield java.time.Duration.seconds:J
bipush 32
lushr
lxor
l2i
bipush 51
aload 0
getfield java.time.Duration.nanos:I
imul
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: aload 0
getstatic java.time.Duration.ZERO:Ljava/time/Duration;
if_acmpne 2
1: ldc "PT0S"
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.time.Duration.seconds:J
ldc 3600
ldiv
lstore 1
start local 1 3: aload 0
getfield java.time.Duration.seconds:J
ldc 3600
lrem
ldc 60
ldiv
l2i
istore 3
start local 3 4: aload 0
getfield java.time.Duration.seconds:J
ldc 60
lrem
l2i
istore 4
start local 4 5: new java.lang.StringBuilder
dup
bipush 24
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 5
start local 5 6: aload 5
ldc "PT"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: lload 1
lconst_0
lcmp
ifeq 9
8: aload 5
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 72
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: StackMap locals: java.time.Duration long int int java.lang.StringBuilder
StackMap stack:
iload 3
ifeq 11
10: aload 5
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 77
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: StackMap locals:
StackMap stack:
iload 4
ifne 13
aload 0
getfield java.time.Duration.nanos:I
ifne 13
aload 5
invokevirtual java.lang.StringBuilder.length:()I
iconst_2
if_icmple 13
12: aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
13: StackMap locals:
StackMap stack:
iload 4
ifge 19
aload 0
getfield java.time.Duration.nanos:I
ifle 19
14: iload 4
iconst_m1
if_icmpne 17
15: aload 5
ldc "-0"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
16: goto 20
17: StackMap locals:
StackMap stack:
aload 5
iload 4
iconst_1
iadd
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
18: goto 20
19: StackMap locals:
StackMap stack:
aload 5
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
20: StackMap locals:
StackMap stack:
aload 0
getfield java.time.Duration.nanos:I
ifle 30
21: aload 5
invokevirtual java.lang.StringBuilder.length:()I
istore 6
start local 6 22: iload 4
ifge 25
23: aload 5
ldc 2000000000
aload 0
getfield java.time.Duration.nanos:I
i2l
lsub
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
pop
24: goto 28
25: StackMap locals: int
StackMap stack:
aload 5
aload 0
getfield java.time.Duration.nanos:I
i2l
ldc 1000000000
ladd
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
pop
26: goto 28
27: StackMap locals:
StackMap stack:
aload 5
aload 5
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
28: StackMap locals:
StackMap stack:
aload 5
aload 5
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.charAt:(I)C
bipush 48
if_icmpeq 27
29: aload 5
iload 6
bipush 46
invokevirtual java.lang.StringBuilder.setCharAt:(IC)V
end local 6 30: StackMap locals:
StackMap stack:
aload 5
bipush 83
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
31: aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Ljava/time/Duration;
3 32 1 hours J
4 32 3 minutes I
5 32 4 secs I
6 32 5 buf Ljava/lang/StringBuilder;
22 30 6 pos I
private java.lang.Object writeReplace();
descriptor: ()Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: new java.time.Ser
dup
iconst_1
aload 0
invokespecial java.time.Ser.<init>:(BLjava/lang/Object;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.io.InvalidObjectException
dup
ldc "Deserialization via serialization delegate"
invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/time/Duration;
0 1 1 s Ljava/io/ObjectInputStream;
Exceptions:
throws java.io.InvalidObjectException
MethodParameters:
Name Flags
s
void writeExternal(java.io.DataOutput);
descriptor: (Ljava/io/DataOutput;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield java.time.Duration.seconds:J
invokeinterface java.io.DataOutput.writeLong:(J)V
1: aload 1
aload 0
getfield java.time.Duration.nanos:I
invokeinterface java.io.DataOutput.writeInt:(I)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/time/Duration;
0 3 1 out Ljava/io/DataOutput;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
static java.time.Duration readExternal(java.io.DataInput);
descriptor: (Ljava/io/DataInput;)Ljava/time/Duration;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
invokeinterface java.io.DataInput.readLong:()J
lstore 1
start local 1 1: aload 0
invokeinterface java.io.DataInput.readInt:()I
istore 3
start local 3 2: lload 1
iload 3
i2l
invokestatic java.time.Duration.ofSeconds:(JJ)Ljava/time/Duration;
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 in Ljava/io/DataInput;
1 3 1 seconds J
2 3 3 nanos I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
in
public int compareTo(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.time.Duration
invokevirtual java.time.Duration.compareTo:(Ljava/time/Duration;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
static int[] $SWITCH_TABLE$java$time$temporal$ChronoUnit();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic java.time.Duration.$SWITCH_TABLE$java$time$temporal$ChronoUnit:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic java.time.temporal.ChronoUnit.values:()[Ljava/time/temporal/ChronoUnit;
arraylength
newarray 10
astore 0
2: aload 0
getstatic java.time.temporal.ChronoUnit.CENTURIES:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 13
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic java.time.temporal.ChronoUnit.DAYS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.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 java.time.temporal.ChronoUnit.DECADES:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 12
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic java.time.temporal.ChronoUnit.ERAS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 15
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic java.time.temporal.ChronoUnit.FOREVER:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 16
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic java.time.temporal.ChronoUnit.HALF_DAYS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 7
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic java.time.temporal.ChronoUnit.HOURS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 6
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic java.time.temporal.ChronoUnit.MICROS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
iconst_2
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic java.time.temporal.ChronoUnit.MILLENNIA:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 14
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic java.time.temporal.ChronoUnit.MILLIS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
iconst_3
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic java.time.temporal.ChronoUnit.MINUTES:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
iconst_5
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic java.time.temporal.ChronoUnit.MONTHS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 10
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic java.time.temporal.ChronoUnit.NANOS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
iconst_1
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
getstatic java.time.temporal.ChronoUnit.SECONDS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
iconst_4
iastore
42: goto 44
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
43: pop
StackMap locals:
StackMap stack:
44: aload 0
getstatic java.time.temporal.ChronoUnit.WEEKS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 9
iastore
45: goto 47
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
46: pop
StackMap locals:
StackMap stack:
47: aload 0
getstatic java.time.temporal.ChronoUnit.YEARS:Ljava/time/temporal/ChronoUnit;
invokevirtual java.time.temporal.ChronoUnit.ordinal:()I
bipush 11
iastore
48: goto 50
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
49: pop
StackMap locals:
StackMap stack:
50: aload 0
dup
putstatic java.time.Duration.$SWITCH_TABLE$java$time$temporal$ChronoUnit:[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
41 42 43 Class java.lang.NoSuchFieldError
44 45 46 Class java.lang.NoSuchFieldError
47 48 49 Class java.lang.NoSuchFieldError
}
Signature: Ljava/lang/Object;Ljava/time/temporal/TemporalAmount;Ljava/lang/Comparable<Ljava/time/Duration;>;Ljava/io/Serializable;
SourceFile: "Duration.java"
NestMembers:
java.time.Duration$DurationUnits
InnerClasses:
private DurationUnits = java.time.Duration$DurationUnits of java.time.Duration