public final class java.nio.file.attribute.FileTime implements java.lang.Comparable<java.nio.file.attribute.FileTime>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: java.nio.file.attribute.FileTime
super_class: java.lang.Object
{
private final java.util.concurrent.TimeUnit unit;
descriptor: Ljava/util/concurrent/TimeUnit;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long value;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.time.Instant instant;
descriptor: Ljava/time/Instant;
flags: (0x0002) ACC_PRIVATE
private java.lang.String valueAsString;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private static final long HOURS_PER_DAY;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 24
private static final long MINUTES_PER_HOUR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 60
private static final long SECONDS_PER_MINUTE;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 60
private static final long SECONDS_PER_HOUR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3600
private static final long SECONDS_PER_DAY;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 86400
private static final long MILLIS_PER_SECOND;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private static final long MICROS_PER_SECOND;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000000
private static final long NANOS_PER_SECOND;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000000000
private static final int NANOS_PER_MILLI;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000000
private static final int NANOS_PER_MICRO;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private static final long MIN_SECOND;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -31557014167219200
private static final long MAX_SECOND;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 31556889864403199
private static final long DAYS_PER_10000_YEARS;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3652425
private static final long SECONDS_PER_10000_YEARS;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 315569520000
private static final long SECONDS_0000_TO_1970;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 62167219200
private static volatile int[] $SWITCH_TABLE$java$util$concurrent$TimeUnit;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private void <init>(long, java.util.concurrent.TimeUnit, java.time.Instant);
descriptor: (JLjava/util/concurrent/TimeUnit;Ljava/time/Instant;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
lload 1
putfield java.nio.file.attribute.FileTime.value:J
2: aload 0
aload 3
putfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
3: aload 0
aload 4
putfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
4: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/nio/file/attribute/FileTime;
0 5 1 value J
0 5 3 unit Ljava/util/concurrent/TimeUnit;
0 5 4 instant Ljava/time/Instant;
MethodParameters:
Name Flags
value
unit
instant
public static java.nio.file.attribute.FileTime from(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Ljava/nio/file/attribute/FileTime;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 2 0: aload 2
ldc "unit"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: new java.nio.file.attribute.FileTime
dup
lload 0
aload 2
aconst_null
invokespecial java.nio.file.attribute.FileTime.<init>:(JLjava/util/concurrent/TimeUnit;Ljava/time/Instant;)V
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 value J
0 2 2 unit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
value
unit
public static java.nio.file.attribute.FileTime fromMillis(long);
descriptor: (J)Ljava/nio/file/attribute/FileTime;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: new java.nio.file.attribute.FileTime
dup
lload 0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
aconst_null
invokespecial java.nio.file.attribute.FileTime.<init>:(JLjava/util/concurrent/TimeUnit;Ljava/time/Instant;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 value J
MethodParameters:
Name Flags
value
public static java.nio.file.attribute.FileTime from(java.time.Instant);
descriptor: (Ljava/time/Instant;)Ljava/nio/file/attribute/FileTime;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "instant"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: new java.nio.file.attribute.FileTime
dup
lconst_0
aconst_null
aload 0
invokespecial java.nio.file.attribute.FileTime.<init>:(JLjava/util/concurrent/TimeUnit;Ljava/time/Instant;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 instant Ljava/time/Instant;
MethodParameters:
Name Flags
instant
public long to(java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/concurrent/TimeUnit;)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: aload 1
ldc "unit"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
ifnull 3
2: aload 1
aload 0
getfield java.nio.file.attribute.FileTime.value:J
aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
lreturn
3: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
invokevirtual java.time.Instant.getEpochSecond:()J
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
lstore 2
start local 2 4: lload 2
ldc -9223372036854775808
lcmp
ifeq 5
lload 2
ldc 9223372036854775807
lcmp
ifne 6
5: StackMap locals: long
StackMap stack:
lload 2
lreturn
6: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
invokevirtual java.time.Instant.getNano:()I
i2l
getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
lstore 4
start local 4 7: lload 2
lload 4
ladd
lstore 6
start local 6 8: lload 2
lload 6
lxor
lload 4
lload 6
lxor
land
lconst_0
lcmp
ifge 12
9: lload 2
lconst_0
lcmp
ifge 10
ldc -9223372036854775808
goto 11
StackMap locals: long long
StackMap stack:
10: ldc 9223372036854775807
StackMap locals:
StackMap stack: long
11: lreturn
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 this Ljava/nio/file/attribute/FileTime;
0 13 1 unit Ljava/util/concurrent/TimeUnit;
4 13 2 secs J
7 13 4 nanos J
8 13 6 r J
MethodParameters:
Name Flags
unit
public long toMillis();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=1
start local 0 0: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
ifnull 2
1: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
aload 0
getfield java.nio.file.attribute.FileTime.value:J
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
lreturn
2: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
invokevirtual java.time.Instant.getEpochSecond:()J
lstore 1
start local 1 3: aload 0
getfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
invokevirtual java.time.Instant.getNano:()I
istore 3
start local 3 4: lload 1
ldc 1000
lmul
lstore 4
start local 4 5: lload 1
invokestatic java.lang.Math.abs:(J)J
lstore 6
start local 6 6: lload 6
ldc 1000
lor
bipush 31
lushr
lconst_0
lcmp
ifeq 11
7: lload 4
ldc 1000
ldiv
lload 1
lcmp
ifeq 11
8: lload 1
lconst_0
lcmp
ifge 9
ldc -9223372036854775808
goto 10
StackMap locals: java.nio.file.attribute.FileTime long int long long
StackMap stack:
9: ldc 9223372036854775807
StackMap locals:
StackMap stack: long
10: lreturn
11: StackMap locals:
StackMap stack:
lload 4
iload 3
ldc 1000000
idiv
i2l
ladd
lreturn
end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/nio/file/attribute/FileTime;
3 12 1 secs J
4 12 3 nanos I
5 12 4 r J
6 12 6 ax J
private static long scale(long, long, long);
descriptor: (JJJ)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 2 start local 4 0: lload 0
lload 4
lcmp
ifle 1
ldc 9223372036854775807
lreturn
1: StackMap locals:
StackMap stack:
lload 0
lload 4
lneg
lcmp
ifge 2
ldc -9223372036854775808
lreturn
2: StackMap locals:
StackMap stack:
lload 0
lload 2
lmul
lreturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 d J
0 3 2 m J
0 3 4 over J
MethodParameters:
Name Flags
d
m
over
public java.time.Instant toInstant();
descriptor: ()Ljava/time/Instant;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
getfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
ifnonnull 37
1: lconst_0
lstore 1
start local 1 2: iconst_0
istore 3
start local 3 3: invokestatic java.nio.file.attribute.FileTime.$SWITCH_TABLE$java$util$concurrent$TimeUnit:()[I
aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
iaload
tableswitch { // 1 - 7
1: 28
2: 23
3: 18
4: 16
5: 12
6: 8
7: 4
default: 31
}
4: StackMap locals: long int
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 86400
5: ldc 106751991167300
6: invokestatic java.nio.file.attribute.FileTime.scale:(JJJ)J
lstore 1
7: goto 32
8: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 3600
9: ldc 2562047788015215
10: invokestatic java.nio.file.attribute.FileTime.scale:(JJJ)J
lstore 1
11: goto 32
12: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 60
13: ldc 153722867280912930
14: invokestatic java.nio.file.attribute.FileTime.scale:(JJJ)J
lstore 1
15: goto 32
16: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.value:J
lstore 1
17: goto 32
18: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 1000
invokestatic java.lang.Math.floorDiv:(JJ)J
lstore 1
19: aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 1000
invokestatic java.lang.Math.floorMod:(JJ)J
l2i
20: ldc 1000000
21: imul
istore 3
22: goto 32
23: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 1000000
invokestatic java.lang.Math.floorDiv:(JJ)J
lstore 1
24: aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 1000000
invokestatic java.lang.Math.floorMod:(JJ)J
l2i
25: sipush 1000
26: imul
istore 3
27: goto 32
28: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 1000000000
invokestatic java.lang.Math.floorDiv:(JJ)J
lstore 1
29: aload 0
getfield java.nio.file.attribute.FileTime.value:J
ldc 1000000000
invokestatic java.lang.Math.floorMod:(JJ)J
l2i
istore 3
30: goto 32
31: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
ldc "Unit not handled"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
32: StackMap locals:
StackMap stack:
lload 1
ldc -31557014167219200
lcmp
ifgt 34
33: aload 0
getstatic java.time.Instant.MIN:Ljava/time/Instant;
putfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
goto 37
34: StackMap locals:
StackMap stack:
lload 1
ldc 31556889864403199
lcmp
iflt 36
35: aload 0
getstatic java.time.Instant.MAX:Ljava/time/Instant;
putfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
goto 37
36: StackMap locals:
StackMap stack:
aload 0
lload 1
iload 3
i2l
invokestatic java.time.Instant.ofEpochSecond:(JJ)Ljava/time/Instant;
putfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
end local 3 end local 1 37: StackMap locals:
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Ljava/nio/file/attribute/FileTime;
2 37 1 secs J
3 37 3 nanos I
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.nio.file.attribute.FileTime
ifeq 2
aload 0
aload 1
checkcast java.nio.file.attribute.FileTime
invokevirtual java.nio.file.attribute.FileTime.compareTo:(Ljava/nio/file/attribute/FileTime;)I
ifne 1
iconst_1
goto 3
StackMap locals:
StackMap stack:
1: iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/nio/file/attribute/FileTime;
0 4 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.hashCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/nio/file/attribute/FileTime;
private long toDays();
descriptor: ()J
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
ifnull 2
1: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
aload 0
getfield java.nio.file.attribute.FileTime.value:J
invokevirtual java.util.concurrent.TimeUnit.toDays:(J)J
lreturn
2: StackMap locals:
StackMap stack:
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getEpochSecond:()J
invokevirtual java.util.concurrent.TimeUnit.toDays:(J)J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/nio/file/attribute/FileTime;
private long toExcessNanos(long);
descriptor: (J)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
ifnull 2
1: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
aload 0
getfield java.nio.file.attribute.FileTime.value:J
aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
lload 1
getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
lsub
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
lreturn
2: StackMap locals:
StackMap stack:
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getEpochSecond:()J
3: getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
lload 1
invokevirtual java.util.concurrent.TimeUnit.toSeconds:(J)J
lsub
4: invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/nio/file/attribute/FileTime;
0 5 1 days J
MethodParameters:
Name Flags
days
public int compareTo(java.nio.file.attribute.FileTime);
descriptor: (Ljava/nio/file/attribute/FileTime;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=2
start local 0 start local 1 0: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
ifnull 2
aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
aload 1
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
if_acmpne 2
1: aload 0
getfield java.nio.file.attribute.FileTime.value:J
aload 1
getfield java.nio.file.attribute.FileTime.value:J
invokestatic java.lang.Long.compare:(JJ)I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getEpochSecond:()J
lstore 2
start local 2 3: aload 1
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getEpochSecond:()J
lstore 4
start local 4 4: lload 2
lload 4
invokestatic java.lang.Long.compare:(JJ)I
istore 6
start local 6 5: iload 6
ifeq 7
6: iload 6
ireturn
7: StackMap locals: long long int
StackMap stack:
aload 0
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getNano:()I
i2l
aload 1
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getNano:()I
i2l
invokestatic java.lang.Long.compare:(JJ)I
istore 6
8: iload 6
ifeq 10
9: iload 6
ireturn
10: StackMap locals:
StackMap stack:
lload 2
ldc 31556889864403199
lcmp
ifeq 12
lload 2
ldc -31557014167219200
lcmp
ifeq 12
11: iconst_0
ireturn
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.nio.file.attribute.FileTime.toDays:()J
lstore 7
start local 7 13: aload 1
invokevirtual java.nio.file.attribute.FileTime.toDays:()J
lstore 9
start local 9 14: lload 7
lload 9
lcmp
ifne 16
15: aload 0
lload 7
invokevirtual java.nio.file.attribute.FileTime.toExcessNanos:(J)J
aload 1
lload 9
invokevirtual java.nio.file.attribute.FileTime.toExcessNanos:(J)J
invokestatic java.lang.Long.compare:(JJ)I
ireturn
16: StackMap locals: long long
StackMap stack:
lload 7
lload 9
invokestatic java.lang.Long.compare:(JJ)I
ireturn
end local 9 end local 7 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljava/nio/file/attribute/FileTime;
0 17 1 other Ljava/nio/file/attribute/FileTime;
3 17 2 secs J
4 17 4 secsOther J
5 17 6 cmp I
13 17 7 days J
14 17 9 daysOther J
MethodParameters:
Name Flags
other
private java.lang.StringBuilder append(java.lang.StringBuilder, int, int);
descriptor: (Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: goto 4
1: StackMap locals:
StackMap stack:
aload 1
iload 3
iload 2
idiv
bipush 48
iadd
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
2: iload 3
iload 2
irem
istore 3
3: iload 2
bipush 10
idiv
istore 2
4: StackMap locals:
StackMap stack:
iload 2
ifgt 1
5: aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/nio/file/attribute/FileTime;
0 6 1 sb Ljava/lang/StringBuilder;
0 6 2 w I
0 6 3 d I
MethodParameters:
Name Flags
sb
w
d
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=12, args_size=1
start local 0 0: aload 0
getfield java.nio.file.attribute.FileTime.valueAsString:Ljava/lang/String;
ifnonnull 53
1: lconst_0
lstore 1
start local 1 2: iconst_0
istore 3
start local 3 3: aload 0
getfield java.nio.file.attribute.FileTime.instant:Ljava/time/Instant;
ifnonnull 6
aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.compareTo:(Ljava/lang/Enum;)I
iflt 6
4: aload 0
getfield java.nio.file.attribute.FileTime.unit:Ljava/util/concurrent/TimeUnit;
aload 0
getfield java.nio.file.attribute.FileTime.value:J
invokevirtual java.util.concurrent.TimeUnit.toSeconds:(J)J
lstore 1
5: goto 8
6: StackMap locals: long int
StackMap stack:
aload 0
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getEpochSecond:()J
lstore 1
7: aload 0
invokevirtual java.nio.file.attribute.FileTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.getNano:()I
istore 3
8: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 9: lload 1
ldc -62167219200
lcmp
iflt 16
10: lload 1
ldc 315569520000
lsub
ldc 62167219200
ladd
lstore 6
start local 6 11: lload 6
ldc 315569520000
invokestatic java.lang.Math.floorDiv:(JJ)J
lconst_1
ladd
lstore 8
start local 8 12: lload 6
ldc 315569520000
invokestatic java.lang.Math.floorMod:(JJ)J
lstore 10
start local 10 13: lload 10
ldc 62167219200
lsub
iload 3
getstatic java.time.ZoneOffset.UTC:Ljava/time/ZoneOffset;
invokestatic java.time.LocalDateTime.ofEpochSecond:(JILjava/time/ZoneOffset;)Ljava/time/LocalDateTime;
astore 4
start local 4 14: aload 4
invokevirtual java.time.LocalDateTime.getYear:()I
lload 8
l2i
sipush 10000
imul
iadd
istore 5
end local 10 end local 8 end local 6 15: goto 21
end local 4 16: StackMap locals: java.nio.file.attribute.FileTime long int top int
StackMap stack:
lload 1
ldc 62167219200
ladd
lstore 6
start local 6 17: lload 6
ldc 315569520000
ldiv
lstore 8
start local 8 18: lload 6
ldc 315569520000
lrem
lstore 10
start local 10 19: lload 10
ldc 62167219200
lsub
iload 3
getstatic java.time.ZoneOffset.UTC:Ljava/time/ZoneOffset;
invokestatic java.time.LocalDateTime.ofEpochSecond:(JILjava/time/ZoneOffset;)Ljava/time/LocalDateTime;
astore 4
start local 4 20: aload 4
invokevirtual java.time.LocalDateTime.getYear:()I
lload 8
l2i
sipush 10000
imul
iadd
istore 5
end local 10 end local 8 end local 6 21: StackMap locals: java.nio.file.attribute.FileTime long int java.time.LocalDateTime int
StackMap stack:
iload 5
ifgt 23
22: iinc 5 -1
23: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.time.LocalDateTime.getNano:()I
istore 6
start local 6 24: new java.lang.StringBuilder
dup
bipush 64
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 7
start local 7 25: aload 7
iload 5
ifge 26
ldc "-"
goto 27
StackMap locals: java.nio.file.attribute.FileTime long int java.time.LocalDateTime int int java.lang.StringBuilder
StackMap stack: java.lang.StringBuilder
26: ldc ""
StackMap locals: java.nio.file.attribute.FileTime long int java.time.LocalDateTime int int java.lang.StringBuilder
StackMap stack: java.lang.StringBuilder java.lang.String
27: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
28: iload 5
invokestatic java.lang.Math.abs:(I)I
istore 5
29: iload 5
sipush 10000
if_icmpge 32
30: aload 0
aload 7
sipush 1000
iload 5
invokestatic java.lang.Math.abs:(I)I
invokevirtual java.nio.file.attribute.FileTime.append:(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
pop
31: goto 33
32: StackMap locals:
StackMap stack:
aload 7
iload 5
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
33: StackMap locals:
StackMap stack:
aload 7
bipush 45
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
34: aload 0
aload 7
bipush 10
aload 4
invokevirtual java.time.LocalDateTime.getMonthValue:()I
invokevirtual java.nio.file.attribute.FileTime.append:(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
pop
35: aload 7
bipush 45
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
36: aload 0
aload 7
bipush 10
aload 4
invokevirtual java.time.LocalDateTime.getDayOfMonth:()I
invokevirtual java.nio.file.attribute.FileTime.append:(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
pop
37: aload 7
bipush 84
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
38: aload 0
aload 7
bipush 10
aload 4
invokevirtual java.time.LocalDateTime.getHour:()I
invokevirtual java.nio.file.attribute.FileTime.append:(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
pop
39: aload 7
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
40: aload 0
aload 7
bipush 10
aload 4
invokevirtual java.time.LocalDateTime.getMinute:()I
invokevirtual java.nio.file.attribute.FileTime.append:(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
pop
41: aload 7
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
42: aload 0
aload 7
bipush 10
aload 4
invokevirtual java.time.LocalDateTime.getSecond:()I
invokevirtual java.nio.file.attribute.FileTime.append:(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
pop
43: iload 6
ifeq 51
44: aload 7
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
45: ldc 100000000
istore 8
start local 8 46: goto 49
47: StackMap locals: int
StackMap stack:
iload 6
bipush 10
idiv
istore 6
48: iload 8
bipush 10
idiv
istore 8
49: StackMap locals:
StackMap stack:
iload 6
bipush 10
irem
ifeq 47
50: aload 0
aload 7
iload 8
iload 6
invokevirtual java.nio.file.attribute.FileTime.append:(Ljava/lang/StringBuilder;II)Ljava/lang/StringBuilder;
pop
end local 8 51: StackMap locals:
StackMap stack:
aload 7
bipush 90
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
52: aload 0
aload 7
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield java.nio.file.attribute.FileTime.valueAsString:Ljava/lang/String;
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 53: StackMap locals: java.nio.file.attribute.FileTime
StackMap stack:
aload 0
getfield java.nio.file.attribute.FileTime.valueAsString:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 54 0 this Ljava/nio/file/attribute/FileTime;
2 53 1 secs J
3 53 3 nanos I
14 16 4 ldt Ljava/time/LocalDateTime;
20 53 4 ldt Ljava/time/LocalDateTime;
9 53 5 year I
11 15 6 zeroSecs J
12 15 8 hi J
13 15 10 lo J
17 21 6 zeroSecs J
18 21 8 hi J
19 21 10 lo J
24 53 6 fraction I
25 53 7 sb Ljava/lang/StringBuilder;
46 51 8 w I
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.nio.file.attribute.FileTime
invokevirtual java.nio.file.attribute.FileTime.compareTo:(Ljava/nio/file/attribute/FileTime;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
static int[] $SWITCH_TABLE$java$util$concurrent$TimeUnit();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic java.nio.file.attribute.FileTime.$SWITCH_TABLE$java$util$concurrent$TimeUnit:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic java.util.concurrent.TimeUnit.values:()[Ljava/util/concurrent/TimeUnit;
arraylength
newarray 10
astore 0
2: aload 0
getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
bipush 7
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic java.util.concurrent.TimeUnit.HOURS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
bipush 6
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic java.util.concurrent.TimeUnit.MINUTES:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
iconst_5
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
iconst_1
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.TimeUnit.ordinal:()I
iconst_4
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
dup
putstatic java.nio.file.attribute.FileTime.$SWITCH_TABLE$java$util$concurrent$TimeUnit:[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
}
Signature: Ljava/lang/Object;Ljava/lang/Comparable<Ljava/nio/file/attribute/FileTime;>;
SourceFile: "FileTime.java"