class sun.nio.fs.WindowsFileAttributes implements java.nio.file.attribute.DosFileAttributes
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.fs.WindowsFileAttributes
super_class: java.lang.Object
{
private static final sun.misc.Unsafe unsafe;
descriptor: Lsun/misc/Unsafe;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final short SIZEOF_FILE_INFORMATION;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 52
private static final short OFFSETOF_FILE_INFORMATION_ATTRIBUTES;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final short OFFSETOF_FILE_INFORMATION_CREATETIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final short OFFSETOF_FILE_INFORMATION_LASTACCESSTIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 12
private static final short OFFSETOF_FILE_INFORMATION_LASTWRITETIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 20
private static final short OFFSETOF_FILE_INFORMATION_VOLSERIALNUM;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 28
private static final short OFFSETOF_FILE_INFORMATION_SIZEHIGH;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 32
private static final short OFFSETOF_FILE_INFORMATION_SIZELOW;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 36
private static final short OFFSETOF_FILE_INFORMATION_INDEXHIGH;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 44
private static final short OFFSETOF_FILE_INFORMATION_INDEXLOW;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 48
private static final short SIZEOF_FILE_ATTRIBUTE_DATA;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 36
private static final short OFFSETOF_FILE_ATTRIBUTE_DATA_ATTRIBUTES;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final short OFFSETOF_FILE_ATTRIBUTE_DATA_CREATETIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final short OFFSETOF_FILE_ATTRIBUTE_DATA_LASTACCESSTIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 12
private static final short OFFSETOF_FILE_ATTRIBUTE_DATA_LASTWRITETIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 20
private static final short OFFSETOF_FILE_ATTRIBUTE_DATA_SIZEHIGH;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 28
private static final short OFFSETOF_FILE_ATTRIBUTE_DATA_SIZELOW;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 32
private static final short SIZEOF_FIND_DATA;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 592
private static final short OFFSETOF_FIND_DATA_ATTRIBUTES;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final short OFFSETOF_FIND_DATA_CREATETIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final short OFFSETOF_FIND_DATA_LASTACCESSTIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 12
private static final short OFFSETOF_FIND_DATA_LASTWRITETIME;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 20
private static final short OFFSETOF_FIND_DATA_SIZEHIGH;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 28
private static final short OFFSETOF_FIND_DATA_SIZELOW;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 32
private static final short OFFSETOF_FIND_DATA_RESERVED0;
descriptor: S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 36
private static final long WINDOWS_EPOCH_IN_MICROSECONDS;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -11644473600000000
private static final boolean ensureAccurateMetadata;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final int fileAttrs;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long creationTime;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long lastAccessTime;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long lastWriteTime;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long size;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int reparseTag;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int volSerialNumber;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int fileIndexHigh;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int fileIndexLow;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: invokestatic sun.misc.Unsafe.getUnsafe:()Lsun/misc/Unsafe;
putstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
1: new sun.security.action.GetPropertyAction
dup
ldc "sun.nio.fs.ensureAccurateMetadata"
ldc "false"
invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;Ljava/lang/String;)V
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 0
start local 0 3: aload 0
invokevirtual java.lang.String.length:()I
ifne 5
4: iconst_1
goto 6
StackMap locals: java.lang.String
StackMap stack:
5: aload 0
invokestatic java.lang.Boolean.valueOf:(Ljava/lang/String;)Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.booleanValue:()Z
6: StackMap locals:
StackMap stack: int
putstatic sun.nio.fs.WindowsFileAttributes.ensureAccurateMetadata:Z
end local 0 7: return
LocalVariableTable:
Start End Slot Name Signature
3 7 0 propValue Ljava/lang/String;
static java.nio.file.attribute.FileTime toFileTime(long);
descriptor: (J)Ljava/nio/file/attribute/FileTime;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc 10
ldiv
lstore 0
1: lload 0
ldc -11644473600000000
ladd
lstore 0
2: lload 0
getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
invokestatic java.nio.file.attribute.FileTime.from:(JLjava/util/concurrent/TimeUnit;)Ljava/nio/file/attribute/FileTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 time J
MethodParameters:
Name Flags
time
static long toWindowsTime(java.nio.file.attribute.FileTime);
descriptor: (Ljava/nio/file/attribute/FileTime;)J
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.nio.file.attribute.FileTime.to:(Ljava/util/concurrent/TimeUnit;)J
lstore 1
start local 1 1: lload 1
ldc -11644473600000000
lsub
lstore 1
2: lload 1
ldc 10
lmul
lstore 1
3: lload 1
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 time Ljava/nio/file/attribute/FileTime;
1 4 1 value J
MethodParameters:
Name Flags
time
private void <init>(int, long, long, long, long, int, int, int, int);
descriptor: (IJJJJIIII)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=14, args_size=10
start local 0 start local 1 start local 2 start local 4 start local 6 start local 8 start local 10 start local 11 start local 12 start local 13 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
2: aload 0
lload 2
putfield sun.nio.fs.WindowsFileAttributes.creationTime:J
3: aload 0
lload 4
putfield sun.nio.fs.WindowsFileAttributes.lastAccessTime:J
4: aload 0
lload 6
putfield sun.nio.fs.WindowsFileAttributes.lastWriteTime:J
5: aload 0
lload 8
putfield sun.nio.fs.WindowsFileAttributes.size:J
6: aload 0
iload 10
putfield sun.nio.fs.WindowsFileAttributes.reparseTag:I
7: aload 0
iload 11
putfield sun.nio.fs.WindowsFileAttributes.volSerialNumber:I
8: aload 0
iload 12
putfield sun.nio.fs.WindowsFileAttributes.fileIndexHigh:I
9: aload 0
iload 13
putfield sun.nio.fs.WindowsFileAttributes.fileIndexLow:I
10: return
end local 13 end local 12 end local 11 end local 10 end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/nio/fs/WindowsFileAttributes;
0 11 1 fileAttrs I
0 11 2 creationTime J
0 11 4 lastAccessTime J
0 11 6 lastWriteTime J
0 11 8 size J
0 11 10 reparseTag I
0 11 11 volSerialNumber I
0 11 12 fileIndexHigh I
0 11 13 fileIndexLow I
MethodParameters:
Name Flags
fileAttrs
creationTime
lastAccessTime
lastWriteTime
size
reparseTag
volSerialNumber
fileIndexHigh
fileIndexLow
private static sun.nio.fs.WindowsFileAttributes fromFileInformation(long, int);
descriptor: (JI)Lsun/nio/fs/WindowsFileAttributes;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=15, locals=15, args_size=2
start local 0 start local 2 0: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
lconst_0
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
istore 3
start local 3 1: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 4
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 4
start local 4 2: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 12
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 6
start local 6 3: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 20
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 8
start local 8 4: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 32
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
i2l
bipush 32
lshl
5: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 36
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
i2l
ldc 4294967295
land
6: ladd
lstore 10
start local 10 7: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 28
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
istore 12
start local 12 8: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 44
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
istore 13
start local 13 9: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 48
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
istore 14
start local 14 10: new sun.nio.fs.WindowsFileAttributes
dup
iload 3
11: lload 4
12: lload 6
13: lload 8
14: lload 10
15: iload 2
16: iload 12
17: iload 13
18: iload 14
19: invokespecial sun.nio.fs.WindowsFileAttributes.<init>:(IJJJJIIII)V
areturn
end local 14 end local 13 end local 12 end local 10 end local 8 end local 6 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 address J
0 20 2 reparseTag I
1 20 3 fileAttrs I
2 20 4 creationTime J
3 20 6 lastAccessTime J
4 20 8 lastWriteTime J
7 20 10 size J
8 20 12 volSerialNumber I
9 20 13 fileIndexHigh I
10 20 14 fileIndexLow I
MethodParameters:
Name Flags
address
reparseTag
private static sun.nio.fs.WindowsFileAttributes fromFileAttributeData(long, int);
descriptor: (JI)Lsun/nio/fs/WindowsFileAttributes;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=15, locals=12, args_size=2
start local 0 start local 2 0: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
lconst_0
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
istore 3
start local 3 1: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 4
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 4
start local 4 2: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 12
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 6
start local 6 3: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 20
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 8
start local 8 4: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 28
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
i2l
bipush 32
lshl
5: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 32
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
i2l
ldc 4294967295
land
6: ladd
lstore 10
start local 10 7: new sun.nio.fs.WindowsFileAttributes
dup
iload 3
8: lload 4
9: lload 6
10: lload 8
11: lload 10
12: iload 2
13: iconst_0
14: iconst_0
15: iconst_0
16: invokespecial sun.nio.fs.WindowsFileAttributes.<init>:(IJJJJIIII)V
areturn
end local 10 end local 8 end local 6 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 address J
0 17 2 reparseTag I
1 17 3 fileAttrs I
2 17 4 creationTime J
3 17 6 lastAccessTime J
4 17 8 lastWriteTime J
7 17 10 size J
MethodParameters:
Name Flags
address
reparseTag
static sun.nio.fs.NativeBuffer getBufferForFindData();
descriptor: ()Lsun/nio/fs/NativeBuffer;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: sipush 592
invokestatic sun.nio.fs.NativeBuffers.getNativeBuffer:(I)Lsun/nio/fs/NativeBuffer;
areturn
LocalVariableTable:
Start End Slot Name Signature
static sun.nio.fs.WindowsFileAttributes fromFindData(long);
descriptor: (J)Lsun/nio/fs/WindowsFileAttributes;
flags: (0x0008) ACC_STATIC
Code:
stack=15, locals=12, args_size=1
start local 0 0: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
lconst_0
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
istore 2
start local 2 1: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 4
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 3
start local 3 2: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 12
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 5
start local 5 3: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 20
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
lstore 7
start local 7 4: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 28
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
i2l
bipush 32
lshl
5: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 32
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
i2l
ldc 4294967295
land
6: ladd
lstore 9
start local 9 7: iload 2
invokestatic sun.nio.fs.WindowsFileAttributes.isReparsePoint:(I)Z
ifeq 9
8: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
lload 0
ldc 36
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
goto 10
StackMap locals: long int long long long long
StackMap stack:
9: iconst_0
10: StackMap locals:
StackMap stack: int
istore 11
start local 11 11: new sun.nio.fs.WindowsFileAttributes
dup
iload 2
12: lload 3
13: lload 5
14: lload 7
15: lload 9
16: iload 11
17: iconst_0
18: iconst_0
19: iconst_0
20: invokespecial sun.nio.fs.WindowsFileAttributes.<init>:(IJJJJIIII)V
areturn
end local 11 end local 9 end local 7 end local 5 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 address J
1 21 2 fileAttrs I
2 21 3 creationTime J
3 21 5 lastAccessTime J
4 21 7 lastWriteTime J
7 21 9 size J
11 21 11 reparseTag I
MethodParameters:
Name Flags
address
static sun.nio.fs.WindowsFileAttributes readAttributes(long);
descriptor: (J)Lsun/nio/fs/WindowsFileAttributes;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=12, args_size=1
start local 0 0: bipush 52
invokestatic sun.nio.fs.NativeBuffers.getNativeBuffer:(I)Lsun/nio/fs/NativeBuffer;
1: astore 2
start local 2 2: aload 2
invokevirtual sun.nio.fs.NativeBuffer.address:()J
lstore 3
start local 3 3: lload 0
lload 3
invokestatic sun.nio.fs.WindowsNativeDispatcher.GetFileInformationByHandle:(JJ)V
4: iconst_0
istore 5
start local 5 5: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
6: lload 3
lconst_0
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
7: istore 6
start local 6 8: iload 6
invokestatic sun.nio.fs.WindowsFileAttributes.isReparsePoint:(I)Z
ifeq 18
9: sipush 16384
istore 7
start local 7 10: iload 7
invokestatic sun.nio.fs.NativeBuffers.getNativeBuffer:(I)Lsun/nio/fs/NativeBuffer;
astore 8
start local 8 11: lload 0
aload 8
invokevirtual sun.nio.fs.NativeBuffer.address:()J
iload 7
invokestatic sun.nio.fs.WindowsNativeDispatcher.DeviceIoControlGetReparsePoint:(JJI)V
12: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
aload 8
invokevirtual sun.nio.fs.NativeBuffer.address:()J
invokevirtual sun.misc.Unsafe.getLong:(J)J
l2i
istore 5
13: goto 17
StackMap locals: long sun.nio.fs.NativeBuffer long int int int sun.nio.fs.NativeBuffer
StackMap stack: java.lang.Throwable
14: astore 9
15: aload 8
invokevirtual sun.nio.fs.NativeBuffer.release:()V
16: aload 9
athrow
17: StackMap locals:
StackMap stack:
aload 8
invokevirtual sun.nio.fs.NativeBuffer.release:()V
end local 8 end local 7 18: StackMap locals:
StackMap stack:
lload 3
iload 5
invokestatic sun.nio.fs.WindowsFileAttributes.fromFileInformation:(JI)Lsun/nio/fs/WindowsFileAttributes;
astore 11
19: aload 2
invokevirtual sun.nio.fs.NativeBuffer.release:()V
20: aload 11
areturn
end local 6 end local 5 end local 3 21: StackMap locals: long sun.nio.fs.NativeBuffer
StackMap stack: java.lang.Throwable
astore 10
22: aload 2
invokevirtual sun.nio.fs.NativeBuffer.release:()V
23: aload 10
athrow
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 handle J
2 24 2 buffer Lsun/nio/fs/NativeBuffer;
3 21 3 address J
5 21 5 reparseTag I
8 21 6 fileAttrs I
10 18 7 size I
11 18 8 reparseBuffer Lsun/nio/fs/NativeBuffer;
Exception table:
from to target type
11 14 14 any
2 19 21 any
Exceptions:
throws sun.nio.fs.WindowsException
MethodParameters:
Name Flags
handle
static sun.nio.fs.WindowsFileAttributes get(sun.nio.fs.WindowsPath, boolean);
descriptor: (Lsun/nio/fs/WindowsPath;Z)Lsun/nio/fs/WindowsFileAttributes;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=11, args_size=2
start local 0 start local 1 0: getstatic sun.nio.fs.WindowsFileAttributes.ensureAccurateMetadata:Z
ifne 41
1: aconst_null
astore 2
start local 2 2: bipush 36
invokestatic sun.nio.fs.NativeBuffers.getNativeBuffer:(I)Lsun/nio/fs/NativeBuffer;
3: astore 3
start local 3 4: aload 3
invokevirtual sun.nio.fs.NativeBuffer.address:()J
lstore 4
start local 4 5: aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForWin32Calls:()Ljava/lang/String;
lload 4
invokestatic sun.nio.fs.WindowsNativeDispatcher.GetFileAttributesEx:(Ljava/lang/String;J)V
6: getstatic sun.nio.fs.WindowsFileAttributes.unsafe:Lsun/misc/Unsafe;
7: lload 4
lconst_0
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
8: istore 6
start local 6 9: iload 6
invokestatic sun.nio.fs.WindowsFileAttributes.isReparsePoint:(I)Z
ifne 21
10: lload 4
iconst_0
invokestatic sun.nio.fs.WindowsFileAttributes.fromFileAttributeData:(JI)Lsun/nio/fs/WindowsFileAttributes;
astore 8
11: aload 3
invokevirtual sun.nio.fs.NativeBuffer.release:()V
12: aload 8
areturn
end local 6 end local 4 13: StackMap locals: sun.nio.fs.WindowsPath int sun.nio.fs.WindowsException sun.nio.fs.NativeBuffer
StackMap stack: sun.nio.fs.WindowsException
astore 4
start local 4 14: aload 4
invokevirtual sun.nio.fs.WindowsException.lastError:()I
bipush 32
if_icmpeq 16
15: aload 4
athrow
16: StackMap locals: sun.nio.fs.WindowsException
StackMap stack:
aload 4
astore 2
end local 4 17: aload 3
invokevirtual sun.nio.fs.NativeBuffer.release:()V
goto 22
18: StackMap locals: sun.nio.fs.WindowsPath int sun.nio.fs.WindowsException sun.nio.fs.NativeBuffer
StackMap stack: java.lang.Throwable
astore 7
19: aload 3
invokevirtual sun.nio.fs.NativeBuffer.release:()V
20: aload 7
athrow
21: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.nio.fs.NativeBuffer.release:()V
22: StackMap locals:
StackMap stack:
aload 2
ifnull 41
23: aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForWin32Calls:()Ljava/lang/String;
astore 4
start local 4 24: aload 4
aload 4
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 25: iload 5
bipush 58
if_icmpeq 26
iload 5
bipush 92
if_icmpne 27
26: StackMap locals: java.lang.String int
StackMap stack:
aload 2
athrow
27: StackMap locals:
StackMap stack:
invokestatic sun.nio.fs.WindowsFileAttributes.getBufferForFindData:()Lsun/nio/fs/NativeBuffer;
astore 3
28: aload 4
aload 3
invokevirtual sun.nio.fs.NativeBuffer.address:()J
invokestatic sun.nio.fs.WindowsNativeDispatcher.FindFirstFile:(Ljava/lang/String;J)J
lstore 6
start local 6 29: lload 6
invokestatic sun.nio.fs.WindowsNativeDispatcher.FindClose:(J)V
30: aload 3
invokevirtual sun.nio.fs.NativeBuffer.address:()J
invokestatic sun.nio.fs.WindowsFileAttributes.fromFindData:(J)Lsun/nio/fs/WindowsFileAttributes;
astore 8
start local 8 31: aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isReparsePoint:()Z
ifeq 33
32: aload 2
athrow
33: StackMap locals: long sun.nio.fs.WindowsFileAttributes
StackMap stack:
aload 8
astore 10
34: aload 3
invokevirtual sun.nio.fs.NativeBuffer.release:()V
35: aload 10
areturn
end local 8 end local 6 36: StackMap locals: sun.nio.fs.WindowsPath int sun.nio.fs.WindowsException sun.nio.fs.NativeBuffer java.lang.String int
StackMap stack: sun.nio.fs.WindowsException
pop
37: aload 2
athrow
38: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
39: aload 3
invokevirtual sun.nio.fs.NativeBuffer.release:()V
40: aload 9
athrow
end local 5 end local 4 end local 3 end local 2 41: StackMap locals: sun.nio.fs.WindowsPath int
StackMap stack:
aload 0
iload 1
invokevirtual sun.nio.fs.WindowsPath.openForReadAttributeAccess:(Z)J
lstore 2
start local 2 42: lload 2
invokestatic sun.nio.fs.WindowsFileAttributes.readAttributes:(J)Lsun/nio/fs/WindowsFileAttributes;
astore 5
43: lload 2
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
44: aload 5
areturn
45: StackMap locals: sun.nio.fs.WindowsPath int long
StackMap stack: java.lang.Throwable
astore 4
46: lload 2
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
47: aload 4
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 path Lsun/nio/fs/WindowsPath;
0 48 1 followLinks Z
2 41 2 firstException Lsun/nio/fs/WindowsException;
4 41 3 buffer Lsun/nio/fs/NativeBuffer;
5 13 4 address J
9 13 6 fileAttrs I
14 17 4 x Lsun/nio/fs/WindowsException;
24 41 4 search Ljava/lang/String;
25 41 5 last C
29 36 6 handle J
31 36 8 attrs Lsun/nio/fs/WindowsFileAttributes;
42 48 2 handle J
Exception table:
from to target type
4 11 13 Class sun.nio.fs.WindowsException
4 11 18 any
13 17 18 any
28 34 36 Class sun.nio.fs.WindowsException
28 34 38 any
36 38 38 any
42 43 45 any
Exceptions:
throws sun.nio.fs.WindowsException
MethodParameters:
Name Flags
path
followLinks
static boolean isSameFile(sun.nio.fs.WindowsFileAttributes, sun.nio.fs.WindowsFileAttributes);
descriptor: (Lsun/nio/fs/WindowsFileAttributes;Lsun/nio/fs/WindowsFileAttributes;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.volSerialNumber:I
aload 1
getfield sun.nio.fs.WindowsFileAttributes.volSerialNumber:I
if_icmpne 4
1: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileIndexHigh:I
aload 1
getfield sun.nio.fs.WindowsFileAttributes.fileIndexHigh:I
if_icmpne 4
2: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileIndexLow:I
aload 1
getfield sun.nio.fs.WindowsFileAttributes.fileIndexLow:I
if_icmpne 4
3: iconst_1
ireturn
StackMap locals:
StackMap stack:
4: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 attrs1 Lsun/nio/fs/WindowsFileAttributes;
0 5 1 attrs2 Lsun/nio/fs/WindowsFileAttributes;
MethodParameters:
Name Flags
attrs1
attrs2
static boolean isReparsePoint(int);
descriptor: (I)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
sipush 1024
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 attributes I
MethodParameters:
Name Flags
attributes
int attributes();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsFileAttributes;
int volSerialNumber();
descriptor: ()I
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.volSerialNumber:I
ifne 2
1: new java.lang.AssertionError
dup
ldc "Should not get here"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsFileAttributes.volSerialNumber:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/fs/WindowsFileAttributes;
int fileIndexHigh();
descriptor: ()I
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.volSerialNumber:I
ifne 2
1: new java.lang.AssertionError
dup
ldc "Should not get here"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileIndexHigh:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/fs/WindowsFileAttributes;
int fileIndexLow();
descriptor: ()I
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.volSerialNumber:I
ifne 2
1: new java.lang.AssertionError
dup
ldc "Should not get here"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileIndexLow:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/fs/WindowsFileAttributes;
public long size();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.size:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsFileAttributes;
public java.nio.file.attribute.FileTime lastModifiedTime();
descriptor: ()Ljava/nio/file/attribute/FileTime;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.lastWriteTime:J
invokestatic sun.nio.fs.WindowsFileAttributes.toFileTime:(J)Ljava/nio/file/attribute/FileTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsFileAttributes;
public java.nio.file.attribute.FileTime lastAccessTime();
descriptor: ()Ljava/nio/file/attribute/FileTime;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.lastAccessTime:J
invokestatic sun.nio.fs.WindowsFileAttributes.toFileTime:(J)Ljava/nio/file/attribute/FileTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsFileAttributes;
public java.nio.file.attribute.FileTime creationTime();
descriptor: ()Ljava/nio/file/attribute/FileTime;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.creationTime:J
invokestatic sun.nio.fs.WindowsFileAttributes.toFileTime:(J)Ljava/nio/file/attribute/FileTime;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsFileAttributes;
public java.lang.Object fileKey();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsFileAttributes;
boolean isReparsePoint();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
invokestatic sun.nio.fs.WindowsFileAttributes.isReparsePoint:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsFileAttributes;
boolean isDirectoryLink();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsFileAttributes.isSymbolicLink:()Z
ifeq 1
aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
bipush 16
iand
ifeq 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 Lsun/nio/fs/WindowsFileAttributes;
public boolean isSymbolicLink();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.reparseTag:I
ldc -1610612724
if_icmpne 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 Lsun/nio/fs/WindowsFileAttributes;
public boolean isDirectory();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsFileAttributes.isSymbolicLink:()Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
bipush 16
iand
ifeq 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsFileAttributes;
public boolean isOther();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsFileAttributes.isSymbolicLink:()Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
sipush 1088
iand
ifeq 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsFileAttributes;
public boolean isRegularFile();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsFileAttributes.isSymbolicLink:()Z
ifne 1
aload 0
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifne 1
aload 0
invokevirtual sun.nio.fs.WindowsFileAttributes.isOther:()Z
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 Lsun/nio/fs/WindowsFileAttributes;
public boolean isReadOnly();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
iconst_1
iand
ifeq 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 Lsun/nio/fs/WindowsFileAttributes;
public boolean isHidden();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
iconst_2
iand
ifeq 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 Lsun/nio/fs/WindowsFileAttributes;
public boolean isArchive();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
bipush 32
iand
ifeq 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 Lsun/nio/fs/WindowsFileAttributes;
public boolean isSystem();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsFileAttributes.fileAttrs:I
iconst_4
iand
ifeq 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 Lsun/nio/fs/WindowsFileAttributes;
}
SourceFile: "WindowsFileAttributes.java"