class sun.nio.fs.WindowsPath implements java.nio.file.Path
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.fs.WindowsPath
super_class: java.lang.Object
{
private static final int MAX_PATH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 247
private static final int MAX_LONG_PATH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 32000
private final sun.nio.fs.WindowsFileSystem fs;
descriptor: Lsun/nio/fs/WindowsFileSystem;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final sun.nio.fs.WindowsPathType type;
descriptor: Lsun/nio/fs/WindowsPathType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String root;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String path;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile java.lang.ref.WeakReference<java.lang.String> pathForWin32Calls;
descriptor: Ljava/lang/ref/WeakReference;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Ljava/lang/ref/WeakReference<Ljava/lang/String;>;
private volatile java.lang.Integer[] offsets;
descriptor: [Ljava/lang/Integer;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private int hash;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static volatile int[] $SWITCH_TABLE$sun$nio$fs$WindowsPathType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private void <init>(sun.nio.fs.WindowsFileSystem, sun.nio.fs.WindowsPathType, java.lang.String, java.lang.String);
descriptor: (Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.nio.fs.WindowsPath.fs:Lsun/nio/fs/WindowsFileSystem;
2: aload 0
aload 2
putfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
3: aload 0
aload 3
putfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
4: aload 0
aload 4
putfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/nio/fs/WindowsPath;
0 6 1 fs Lsun/nio/fs/WindowsFileSystem;
0 6 2 type Lsun/nio/fs/WindowsPathType;
0 6 3 root Ljava/lang/String;
0 6 4 path Ljava/lang/String;
MethodParameters:
Name Flags
fs
type
root
path
static sun.nio.fs.WindowsPath parse(sun.nio.fs.WindowsFileSystem, java.lang.String);
descriptor: (Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic sun.nio.fs.WindowsPathParser.parse:(Ljava/lang/String;)Lsun/nio/fs/WindowsPathParser$Result;
astore 2
start local 2 1: new sun.nio.fs.WindowsPath
dup
aload 0
aload 2
invokevirtual sun.nio.fs.WindowsPathParser$Result.type:()Lsun/nio/fs/WindowsPathType;
aload 2
invokevirtual sun.nio.fs.WindowsPathParser$Result.root:()Ljava/lang/String;
aload 2
invokevirtual sun.nio.fs.WindowsPathParser$Result.path:()Ljava/lang/String;
invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 fs Lsun/nio/fs/WindowsFileSystem;
0 2 1 path Ljava/lang/String;
1 2 2 result Lsun/nio/fs/WindowsPathParser$Result;
MethodParameters:
Name Flags
fs
path
static sun.nio.fs.WindowsPath createFromNormalizedPath(sun.nio.fs.WindowsFileSystem, java.lang.String, java.nio.file.attribute.BasicFileAttributes);
descriptor: (Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;Ljava/nio/file/attribute/BasicFileAttributes;)Lsun/nio/fs/WindowsPath;
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic sun.nio.fs.WindowsPathParser.parseNormalizedPath:(Ljava/lang/String;)Lsun/nio/fs/WindowsPathParser$Result;
1: astore 3
start local 3 2: aload 2
ifnonnull 9
3: new sun.nio.fs.WindowsPath
dup
aload 0
4: aload 3
invokevirtual sun.nio.fs.WindowsPathParser$Result.type:()Lsun/nio/fs/WindowsPathType;
5: aload 3
invokevirtual sun.nio.fs.WindowsPathParser$Result.root:()Ljava/lang/String;
6: aload 3
invokevirtual sun.nio.fs.WindowsPathParser$Result.path:()Ljava/lang/String;
7: invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
8: areturn
9: StackMap locals: sun.nio.fs.WindowsPathParser$Result
StackMap stack:
new sun.nio.fs.WindowsPath$WindowsPathWithAttributes
dup
aload 0
10: aload 3
invokevirtual sun.nio.fs.WindowsPathParser$Result.type:()Lsun/nio/fs/WindowsPathType;
11: aload 3
invokevirtual sun.nio.fs.WindowsPathParser$Result.root:()Ljava/lang/String;
12: aload 3
invokevirtual sun.nio.fs.WindowsPathParser$Result.path:()Ljava/lang/String;
13: aload 2
14: invokespecial sun.nio.fs.WindowsPath$WindowsPathWithAttributes.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;Ljava/nio/file/attribute/BasicFileAttributes;)V
15: areturn
end local 3 16: StackMap locals: sun.nio.fs.WindowsFileSystem java.lang.String java.nio.file.attribute.BasicFileAttributes
StackMap stack: java.nio.file.InvalidPathException
astore 3
start local 3 17: new java.lang.AssertionError
dup
aload 3
invokevirtual java.nio.file.InvalidPathException.getMessage:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 fs Lsun/nio/fs/WindowsFileSystem;
0 18 1 path Ljava/lang/String;
0 18 2 attrs Ljava/nio/file/attribute/BasicFileAttributes;
2 16 3 result Lsun/nio/fs/WindowsPathParser$Result;
17 18 3 x Ljava/nio/file/InvalidPathException;
Exception table:
from to target type
0 8 16 Class java.nio.file.InvalidPathException
9 15 16 Class java.nio.file.InvalidPathException
MethodParameters:
Name Flags
fs
path
attrs
static sun.nio.fs.WindowsPath createFromNormalizedPath(sun.nio.fs.WindowsFileSystem, java.lang.String);
descriptor: (Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokestatic sun.nio.fs.WindowsPath.createFromNormalizedPath:(Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;Ljava/nio/file/attribute/BasicFileAttributes;)Lsun/nio/fs/WindowsPath;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 fs Lsun/nio/fs/WindowsFileSystem;
0 1 1 path Ljava/lang/String;
MethodParameters:
Name Flags
fs
path
java.lang.String getPathForExceptionMessage();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsPath;
java.lang.String getPathForPermissionCheck();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsPath;
java.lang.String getPathForWin32Calls();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.isAbsolute:()Z
ifeq 2
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
sipush 247
if_icmpgt 2
1: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.pathForWin32Calls:Ljava/lang/ref/WeakReference;
astore 1
start local 1 3: aload 1
ifnull 4
aload 1
invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
checkcast java.lang.String
goto 5
StackMap locals: java.lang.ref.WeakReference
StackMap stack:
4: aconst_null
StackMap locals:
StackMap stack: java.lang.String
5: astore 2
start local 2 6: aload 2
ifnull 8
7: aload 2
areturn
8: StackMap locals: java.lang.String
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getAbsolutePath:()Ljava/lang/String;
astore 2
9: aload 2
invokevirtual java.lang.String.length:()I
sipush 247
if_icmple 13
10: aload 2
invokevirtual java.lang.String.length:()I
sipush 32000
if_icmple 12
11: new sun.nio.fs.WindowsException
dup
ldc "Cannot access file with path exceeding 32000 characters"
invokespecial sun.nio.fs.WindowsException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
aload 2
invokestatic sun.nio.fs.WindowsNativeDispatcher.GetFullPathName:(Ljava/lang/String;)Ljava/lang/String;
invokestatic sun.nio.fs.WindowsPath.addPrefixIfNeeded:(Ljava/lang/String;)Ljava/lang/String;
astore 2
13: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
getstatic sun.nio.fs.WindowsPathType.DRIVE_RELATIVE:Lsun/nio/fs/WindowsPathType;
if_acmpeq 20
14: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
dup
astore 3
monitorenter
15: aload 0
new java.lang.ref.WeakReference
dup
aload 2
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putfield sun.nio.fs.WindowsPath.pathForWin32Calls:Ljava/lang/ref/WeakReference;
16: aload 3
monitorexit
17: goto 20
StackMap locals: sun.nio.fs.WindowsPath java.lang.ref.WeakReference java.lang.String java.lang.String
StackMap stack: java.lang.Throwable
18: aload 3
monitorexit
19: athrow
20: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lsun/nio/fs/WindowsPath;
3 21 1 ref Ljava/lang/ref/WeakReference<Ljava/lang/String;>;
6 21 2 resolved Ljava/lang/String;
Exception table:
from to target type
15 17 18 any
18 19 18 any
Exceptions:
throws sun.nio.fs.WindowsException
private java.lang.String getAbsolutePath();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.isAbsolute:()Z
ifeq 2
1: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
getstatic sun.nio.fs.WindowsPathType.RELATIVE:Lsun/nio/fs/WindowsPathType;
if_acmpne 11
3: aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
invokevirtual sun.nio.fs.WindowsFileSystem.defaultDirectory:()Ljava/lang/String;
astore 1
start local 1 4: aload 0
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 6
5: aload 1
areturn
6: StackMap locals: java.lang.String
StackMap stack:
aload 1
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 8
7: 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
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
8: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 1
invokevirtual java.lang.String.length:()I
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iadd
iconst_1
iadd
invokespecial java.lang.StringBuilder.<init>:(I)V
9: astore 2
start local 2 10: aload 2
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 92
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 11: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
getstatic sun.nio.fs.WindowsPathType.DIRECTORY_RELATIVE:Lsun/nio/fs/WindowsPathType;
if_acmpne 14
12: aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
invokevirtual sun.nio.fs.WindowsFileSystem.defaultRoot:()Ljava/lang/String;
astore 1
start local 1 13: 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
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 14: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
invokevirtual sun.nio.fs.WindowsFileSystem.defaultRoot:()Ljava/lang/String;
invokestatic sun.nio.fs.WindowsPath.isSameDrive:(Ljava/lang/String;Ljava/lang/String;)Z
ifeq 22
15: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
start local 1 16: aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
invokevirtual sun.nio.fs.WindowsFileSystem.defaultDirectory:()Ljava/lang/String;
astore 2
start local 2 17: aload 1
invokevirtual java.lang.String.length:()I
ifne 19
18: aload 2
areturn
19: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 2
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 21
20: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
21: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 22: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.nio.fs.WindowsNativeDispatcher.GetDriveType:(Ljava/lang/String;)I
istore 2
start local 2 23: iload 2
ifeq 24
iload 2
iconst_1
if_icmpne 25
24: StackMap locals: sun.nio.fs.WindowsPath top int
StackMap stack:
new sun.nio.fs.WindowsException
dup
ldc ""
invokespecial sun.nio.fs.WindowsException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.nio.fs.WindowsNativeDispatcher.GetFullPathName:(Ljava/lang/String;)Ljava/lang/String;
astore 1
end local 2 start local 1 26: goto 31
end local 1 StackMap locals: sun.nio.fs.WindowsPath
StackMap stack: sun.nio.fs.WindowsException
27: pop
28: new sun.nio.fs.WindowsException
dup
new java.lang.StringBuilder
dup
ldc "Unable to get working directory of drive '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
29: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.toUpperCase:(C)C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
30: invokespecial sun.nio.fs.WindowsException.<init>:(Ljava/lang/String;)V
athrow
start local 1 31: StackMap locals: java.lang.String
StackMap stack:
aload 1
astore 2
start local 2 32: aload 1
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 35
33: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
34: goto 37
35: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmple 37
36: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
37: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lsun/nio/fs/WindowsPath;
4 11 1 defaultDirectory Ljava/lang/String;
10 11 2 sb Ljava/lang/StringBuilder;
13 14 1 defaultRoot Ljava/lang/String;
16 22 1 remaining Ljava/lang/String;
17 22 2 defaultDirectory Ljava/lang/String;
26 27 1 wd Ljava/lang/String;
31 38 1 wd Ljava/lang/String;
23 26 2 dt I
32 38 2 result Ljava/lang/String;
Exception table:
from to target type
22 26 27 Class sun.nio.fs.WindowsException
Exceptions:
throws sun.nio.fs.WindowsException
private static boolean isSameDrive(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.toUpperCase:(C)C
1: aload 1
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.toUpperCase:(C)C
2: if_icmpne 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 root1 Ljava/lang/String;
0 4 1 root2 Ljava/lang/String;
MethodParameters:
Name Flags
root1
root2
static java.lang.String addPrefixIfNeeded(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
sipush 247
if_icmple 5
1: aload 0
ldc "\\\\"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 4
2: new java.lang.StringBuilder
dup
ldc "\\\\?\\UNC"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
iconst_1
aload 0
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 0
3: goto 5
4: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "\\\\?\\"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 0
5: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 path Ljava/lang/String;
MethodParameters:
Name Flags
path
public sun.nio.fs.WindowsFileSystem getFileSystem();
descriptor: ()Lsun/nio/fs/WindowsFileSystem;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.fs:Lsun/nio/fs/WindowsFileSystem;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsPath;
private boolean isEmpty();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
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/WindowsPath;
private sun.nio.fs.WindowsPath emptyPath();
descriptor: ()Lsun/nio/fs/WindowsPath;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=1, args_size=1
start local 0 0: new sun.nio.fs.WindowsPath
dup
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
getstatic sun.nio.fs.WindowsPathType.RELATIVE:Lsun/nio/fs/WindowsPathType;
ldc ""
ldc ""
invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsPath;
public java.nio.file.Path getFileName();
descriptor: ()Ljava/nio/file/Path;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
istore 1
start local 1 1: iload 1
ifne 3
2: aload 0
areturn
3: StackMap locals: int
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iload 1
if_icmpne 5
4: aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
bipush 92
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 2
start local 2 6: iload 2
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmpge 8
7: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
istore 2
goto 9
8: StackMap locals: int
StackMap stack:
iinc 2 1
9: StackMap locals:
StackMap stack:
new sun.nio.fs.WindowsPath
dup
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
getstatic sun.nio.fs.WindowsPathType.RELATIVE:Lsun/nio/fs/WindowsPathType;
ldc ""
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
iload 2
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/nio/fs/WindowsPath;
1 10 1 len I
6 10 2 off I
public sun.nio.fs.WindowsPath getParent();
descriptor: ()Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmpne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
bipush 92
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 1
start local 1 3: iload 1
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmpge 5
4: aload 0
invokevirtual sun.nio.fs.WindowsPath.getRoot:()Lsun/nio/fs/WindowsPath;
areturn
5: StackMap locals: int
StackMap stack:
new sun.nio.fs.WindowsPath
dup
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
6: aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
7: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
8: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
iconst_0
iload 1
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
9: invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/nio/fs/WindowsPath;
3 10 1 off I
public sun.nio.fs.WindowsPath getRoot();
descriptor: ()Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
new sun.nio.fs.WindowsPath
dup
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/fs/WindowsPath;
sun.nio.fs.WindowsPathType type();
descriptor: ()Lsun/nio/fs/WindowsPathType;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsPath;
boolean isUnc();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
getstatic sun.nio.fs.WindowsPathType.UNC:Lsun/nio/fs/WindowsPathType;
if_acmpne 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/WindowsPath;
boolean needsSlashWhenResolving();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmple 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/WindowsPath;
public boolean isAbsolute();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
getstatic sun.nio.fs.WindowsPathType.ABSOLUTE:Lsun/nio/fs/WindowsPathType;
if_acmpeq 1
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
getstatic sun.nio.fs.WindowsPathType.UNC:Lsun/nio/fs/WindowsPathType;
if_acmpeq 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/nio/fs/WindowsPath;
static sun.nio.fs.WindowsPath toWindowsPath(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Lsun/nio/fs/WindowsPath;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
instanceof sun.nio.fs.WindowsPath
ifne 4
3: new java.nio.file.ProviderMismatchException
dup
invokespecial java.nio.file.ProviderMismatchException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
aload 0
checkcast sun.nio.fs.WindowsPath
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 path Ljava/nio/file/Path;
MethodParameters:
Name Flags
path
private boolean hasDotOrDotDot();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 10
3: StackMap locals: int int
StackMap stack:
aload 0
iload 2
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
astore 3
start local 3 4: aload 3
invokevirtual java.lang.String.length:()I
iconst_1
if_icmpne 6
aload 3
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 6
5: iconst_1
ireturn
6: StackMap locals: java.lang.String
StackMap stack:
aload 3
invokevirtual java.lang.String.length:()I
iconst_2
if_icmpne 9
7: aload 3
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 9
aload 3
iconst_1
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 9
8: iconst_1
ireturn
end local 3 9: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
10: iload 2
iload 1
if_icmplt 3
end local 2 11: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/nio/fs/WindowsPath;
1 12 1 n I
2 11 2 i I
4 9 3 name Ljava/lang/String;
public sun.nio.fs.WindowsPath relativize(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=14, args_size=2
start local 0 start local 1 0: aload 1
invokestatic sun.nio.fs.WindowsPath.toWindowsPath:(Ljava/nio/file/Path;)Lsun/nio/fs/WindowsPath;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual sun.nio.fs.WindowsPath.equals:(Ljava/lang/Object;)Z
ifeq 3
2: aload 0
invokevirtual sun.nio.fs.WindowsPath.emptyPath:()Lsun/nio/fs/WindowsPath;
areturn
3: StackMap locals: sun.nio.fs.WindowsPath
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
aload 2
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
if_acmpeq 5
4: new java.lang.IllegalArgumentException
dup
ldc "'other' is different type of Path"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
aload 2
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 7
6: new java.lang.IllegalArgumentException
dup
ldc "'other' has different root"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 9
8: aload 2
areturn
9: StackMap locals:
StackMap stack:
aload 0
astore 3
start local 3 10: aload 3
invokevirtual sun.nio.fs.WindowsPath.hasDotOrDotDot:()Z
ifne 11
aload 2
invokevirtual sun.nio.fs.WindowsPath.hasDotOrDotDot:()Z
ifeq 13
11: StackMap locals: sun.nio.fs.WindowsPath
StackMap stack:
aload 3
invokevirtual sun.nio.fs.WindowsPath.normalize:()Lsun/nio/fs/WindowsPath;
astore 3
12: aload 2
invokevirtual sun.nio.fs.WindowsPath.normalize:()Lsun/nio/fs/WindowsPath;
astore 2
13: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 4
start local 4 14: aload 2
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 5
start local 5 15: iload 4
iload 5
invokestatic java.lang.Math.min:(II)I
istore 6
start local 6 16: iconst_0
istore 7
start local 7 17: goto 21
18: StackMap locals: sun.nio.fs.WindowsPath java.nio.file.Path sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath int int int int
StackMap stack:
aload 3
iload 7
invokevirtual sun.nio.fs.WindowsPath.getName:(I)Lsun/nio/fs/WindowsPath;
aload 2
iload 7
invokevirtual sun.nio.fs.WindowsPath.getName:(I)Lsun/nio/fs/WindowsPath;
invokevirtual sun.nio.fs.WindowsPath.equals:(Ljava/lang/Object;)Z
ifne 20
19: goto 22
20: StackMap locals:
StackMap stack:
iinc 7 1
21: StackMap locals:
StackMap stack:
iload 7
iload 6
if_icmplt 18
22: StackMap locals:
StackMap stack:
iload 7
iload 5
if_icmpne 26
23: aload 0
invokevirtual sun.nio.fs.WindowsPath.emptyPath:()Lsun/nio/fs/WindowsPath;
astore 8
start local 8 24: iconst_1
istore 9
start local 9 25: goto 28
end local 9 end local 8 26: StackMap locals:
StackMap stack:
aload 2
iload 7
iload 5
invokevirtual sun.nio.fs.WindowsPath.subpath:(II)Lsun/nio/fs/WindowsPath;
astore 8
start local 8 27: aload 8
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
istore 9
start local 9 28: StackMap locals: sun.nio.fs.WindowsPath int
StackMap stack:
iload 7
iload 4
if_icmpne 30
29: aload 8
areturn
30: StackMap locals:
StackMap stack:
aload 3
iload 7
iload 4
invokevirtual sun.nio.fs.WindowsPath.subpath:(II)Lsun/nio/fs/WindowsPath;
astore 10
start local 10 31: aload 10
invokevirtual sun.nio.fs.WindowsPath.hasDotOrDotDot:()Z
ifeq 35
32: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unable to compute relative path from "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
33: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
34: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
35: StackMap locals: sun.nio.fs.WindowsPath
StackMap stack:
aload 10
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 37
36: aload 8
areturn
37: StackMap locals:
StackMap stack:
aload 10
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 11
start local 11 38: iload 11
ifne 40
39: aload 8
areturn
40: StackMap locals: int
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 12
start local 12 41: iconst_0
istore 13
start local 13 42: goto 45
43: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 12
ldc "..\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
44: iinc 13 1
StackMap locals:
StackMap stack:
45: iload 13
iload 11
if_icmplt 43
end local 13 46: iload 9
ifne 53
47: iconst_0
istore 13
start local 13 48: goto 52
49: StackMap locals:
StackMap stack:
aload 12
aload 8
iload 13
invokevirtual sun.nio.fs.WindowsPath.getName:(I)Lsun/nio/fs/WindowsPath;
invokevirtual sun.nio.fs.WindowsPath.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
50: aload 12
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
51: iinc 13 1
StackMap locals:
StackMap stack:
52: iload 13
aload 8
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
if_icmplt 49
end local 13 53: StackMap locals:
StackMap stack:
aload 12
aload 12
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
54: aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 12
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.nio.fs.WindowsPath.createFromNormalizedPath:(Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 55 0 this Lsun/nio/fs/WindowsPath;
0 55 1 obj Ljava/nio/file/Path;
1 55 2 child Lsun/nio/fs/WindowsPath;
10 55 3 base Lsun/nio/fs/WindowsPath;
14 55 4 baseCount I
15 55 5 childCount I
16 55 6 n I
17 55 7 i I
24 26 8 childRemaining Lsun/nio/fs/WindowsPath;
27 55 8 childRemaining Lsun/nio/fs/WindowsPath;
25 26 9 isChildEmpty Z
28 55 9 isChildEmpty Z
31 55 10 baseRemaining Lsun/nio/fs/WindowsPath;
38 55 11 dotdots I
41 55 12 result Ljava/lang/StringBuilder;
42 46 13 j I
48 53 13 j I
MethodParameters:
Name Flags
obj
public sun.nio.fs.WindowsPath normalize();
descriptor: ()Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=10, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 1
start local 1 1: iload 1
ifeq 2
aload 0
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 3
2: StackMap locals: int
StackMap stack:
aload 0
areturn
3: StackMap locals:
StackMap stack:
iload 1
newarray 4
astore 2
start local 2 4: iload 1
istore 3
start local 3 5: StackMap locals: boolean[] int
StackMap stack:
iload 3
istore 4
start local 4 6: iconst_m1
istore 5
start local 5 7: iconst_0
istore 6
start local 6 8: goto 44
9: StackMap locals: int int int
StackMap stack:
aload 2
iload 6
baload
ifeq 11
10: goto 43
11: StackMap locals:
StackMap stack:
aload 0
iload 6
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
astore 7
start local 7 12: aload 7
invokevirtual java.lang.String.length:()I
iconst_2
if_icmple 15
13: iload 6
istore 5
14: goto 43
15: StackMap locals: java.lang.String
StackMap stack:
aload 7
invokevirtual java.lang.String.length:()I
iconst_1
if_icmpne 22
16: aload 7
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 20
17: aload 2
iload 6
iconst_1
bastore
18: iinc 3 -1
19: goto 43
20: StackMap locals:
StackMap stack:
iload 6
istore 5
21: goto 43
22: StackMap locals:
StackMap stack:
aload 7
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 23
aload 7
iconst_1
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpeq 25
23: StackMap locals:
StackMap stack:
iload 6
istore 5
24: goto 43
25: StackMap locals:
StackMap stack:
iload 5
iflt 31
26: aload 2
iload 5
iconst_1
bastore
27: aload 2
iload 6
iconst_1
bastore
28: iinc 3 -2
29: iconst_m1
istore 5
30: goto 43
31: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.isAbsolute:()Z
ifne 32
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
getstatic sun.nio.fs.WindowsPathType.DIRECTORY_RELATIVE:Lsun/nio/fs/WindowsPathType;
if_acmpne 43
32: StackMap locals:
StackMap stack:
iconst_0
istore 8
start local 8 33: iconst_0
istore 9
start local 9 34: goto 39
35: StackMap locals: int int
StackMap stack:
aload 2
iload 9
baload
ifne 38
36: iconst_1
istore 8
37: goto 40
38: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
39: iload 9
iload 6
if_icmplt 35
end local 9 40: StackMap locals:
StackMap stack:
iload 8
ifne 43
41: aload 2
iload 6
iconst_1
bastore
42: iinc 3 -1
end local 8 end local 7 43: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
44: iload 6
iload 1
if_icmplt 9
end local 6 end local 5 45: iload 4
iload 3
46: if_icmpgt 5
47: iload 3
iload 1
if_icmpne 49
48: aload 0
areturn
49: StackMap locals:
StackMap stack:
iload 3
ifne 53
50: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
ifne 51
aload 0
invokevirtual sun.nio.fs.WindowsPath.emptyPath:()Lsun/nio/fs/WindowsPath;
goto 52
StackMap locals:
StackMap stack:
51: aload 0
invokevirtual sun.nio.fs.WindowsPath.getRoot:()Lsun/nio/fs/WindowsPath;
StackMap locals:
StackMap stack: sun.nio.fs.WindowsPath
52: areturn
53: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 5
start local 5 54: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
ifnull 56
55: aload 5
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
56: StackMap locals: java.lang.StringBuilder
StackMap stack:
iconst_0
istore 6
start local 6 57: goto 62
58: StackMap locals: int
StackMap stack:
aload 2
iload 6
baload
ifne 61
59: aload 5
aload 0
iload 6
invokevirtual sun.nio.fs.WindowsPath.getName:(I)Lsun/nio/fs/WindowsPath;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
60: aload 5
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
61: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
62: iload 6
iload 1
if_icmplt 58
end local 6 63: aload 5
aload 5
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
64: aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.nio.fs.WindowsPath.createFromNormalizedPath:(Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lsun/nio/fs/WindowsPath;
1 65 1 count I
4 65 2 ignore [Z
5 65 3 remaining I
6 65 4 prevRemaining I
7 45 5 prevName I
8 45 6 i I
12 43 7 name Ljava/lang/String;
33 43 8 hasPrevious Z
34 40 9 j I
54 65 5 result Ljava/lang/StringBuilder;
57 63 6 i I
public sun.nio.fs.WindowsPath resolve(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokestatic sun.nio.fs.WindowsPath.toWindowsPath:(Ljava/nio/file/Path;)Lsun/nio/fs/WindowsPath;
astore 2
start local 2 1: aload 2
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 3
2: aload 0
areturn
3: StackMap locals: sun.nio.fs.WindowsPath
StackMap stack:
aload 2
invokevirtual sun.nio.fs.WindowsPath.isAbsolute:()Z
ifeq 5
4: aload 2
areturn
5: StackMap locals:
StackMap stack:
invokestatic sun.nio.fs.WindowsPath.$SWITCH_TABLE$sun$nio$fs$WindowsPathType:()[I
aload 2
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
invokevirtual sun.nio.fs.WindowsPathType.ordinal:()I
iaload
tableswitch { // 3 - 5
3: 6
4: 11
5: 16
default: 27
}
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 7
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmpne 9
7: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 8: goto 10
end local 3 9: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 10: StackMap locals: java.lang.String
StackMap stack:
new sun.nio.fs.WindowsPath
dup
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 0
getfield sun.nio.fs.WindowsPath.type:Lsun/nio/fs/WindowsPathType;
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
aload 3
invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 3 11: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 14
12: new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 13: goto 15
end local 3 14: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 15: StackMap locals: java.lang.String
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 3
invokestatic sun.nio.fs.WindowsPath.createFromNormalizedPath:(Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
areturn
end local 3 16: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 18
17: aload 2
areturn
18: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
iconst_0
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 3
start local 3 19: aload 3
aload 2
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 21
20: aload 2
areturn
21: StackMap locals: java.lang.String
StackMap stack:
aload 2
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
aload 2
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 4
start local 4 22: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
ldc "\\"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 25
23: new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 24: goto 26
end local 5 25: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 26: StackMap locals: java.lang.String
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 5
invokestatic sun.nio.fs.WindowsPath.createFromNormalizedPath:(Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
areturn
end local 5 end local 4 end local 3 27: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lsun/nio/fs/WindowsPath;
0 28 1 obj Ljava/nio/file/Path;
1 28 2 other Lsun/nio/fs/WindowsPath;
8 9 3 result Ljava/lang/String;
10 11 3 result Ljava/lang/String;
13 14 3 result Ljava/lang/String;
15 16 3 result Ljava/lang/String;
19 27 3 thisRoot Ljava/lang/String;
22 27 4 remaining Ljava/lang/String;
24 25 5 result Ljava/lang/String;
26 27 5 result Ljava/lang/String;
MethodParameters:
Name Flags
obj
private void initOffsets();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
ifnonnull 23
1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 2: aload 0
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 5
3: aload 1
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
4: goto 16
5: StackMap locals: java.util.ArrayList
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
istore 2
start local 2 6: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
istore 3
start local 3 7: goto 13
8: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
iload 3
invokevirtual java.lang.String.charAt:(I)C
bipush 92
if_icmpeq 11
9: iinc 3 1
10: goto 13
11: StackMap locals:
StackMap stack:
aload 1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
12: iinc 3 1
iload 3
istore 2
13: StackMap locals:
StackMap stack:
iload 3
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmplt 8
14: iload 2
iload 3
if_icmpeq 16
15: aload 1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 3 end local 2 16: StackMap locals:
StackMap stack:
aload 0
dup
astore 2
monitorenter
17: aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
ifnonnull 19
18: aload 0
aload 1
aload 1
invokevirtual java.util.ArrayList.size:()I
anewarray java.lang.Integer
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.Integer[]
putfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
19: StackMap locals: sun.nio.fs.WindowsPath
StackMap stack:
aload 2
monitorexit
20: goto 23
StackMap locals:
StackMap stack: java.lang.Throwable
21: aload 2
monitorexit
22: athrow
end local 1 23: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lsun/nio/fs/WindowsPath;
2 23 1 list Ljava/util/ArrayList<Ljava/lang/Integer;>;
6 16 2 start I
7 16 3 off I
Exception table:
from to target type
17 20 21 any
21 22 21 any
public int getNameCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.initOffsets:()V
1: aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
arraylength
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/nio/fs/WindowsPath;
private java.lang.String elementAsString(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.initOffsets:()V
1: iload 1
aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
arraylength
iconst_1
isub
if_icmpne 3
2: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
iload 1
aaload
invokevirtual java.lang.Integer.intValue:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
iload 1
aaload
invokevirtual java.lang.Integer.intValue:()I
aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
iload 1
iconst_1
iadd
aaload
invokevirtual java.lang.Integer.intValue:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsPath;
0 4 1 i I
MethodParameters:
Name Flags
i
public sun.nio.fs.WindowsPath getName(int);
descriptor: (I)Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.initOffsets:()V
1: iload 1
iflt 2
iload 1
aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
arraylength
if_icmplt 3
2: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
new sun.nio.fs.WindowsPath
dup
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
getstatic sun.nio.fs.WindowsPathType.RELATIVE:Lsun/nio/fs/WindowsPathType;
ldc ""
aload 0
iload 1
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsPath;
0 4 1 index I
MethodParameters:
Name Flags
index
public sun.nio.fs.WindowsPath subpath(int, int);
descriptor: (II)Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.initOffsets:()V
1: iload 1
ifge 3
2: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
iload 1
aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
arraylength
if_icmplt 5
4: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
iload 2
aload 0
getfield sun.nio.fs.WindowsPath.offsets:[Ljava/lang/Integer;
arraylength
if_icmple 7
6: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
iload 1
iload 2
if_icmplt 9
8: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 10: iload 2
iload 1
isub
anewarray java.lang.Integer
astore 4
start local 4 11: iload 1
istore 5
start local 5 12: goto 18
13: StackMap locals: java.lang.StringBuilder java.lang.Integer[] int
StackMap stack:
aload 4
iload 5
iload 1
isub
aload 3
invokevirtual java.lang.StringBuilder.length:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
14: aload 3
aload 0
iload 5
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: iload 5
iload 2
iconst_1
isub
if_icmpeq 17
16: aload 3
ldc "\\"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
17: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
18: iload 5
iload 2
if_icmplt 13
end local 5 19: new sun.nio.fs.WindowsPath
dup
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
getstatic sun.nio.fs.WindowsPathType.RELATIVE:Lsun/nio/fs/WindowsPathType;
ldc ""
aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial sun.nio.fs.WindowsPath.<init>:(Lsun/nio/fs/WindowsFileSystem;Lsun/nio/fs/WindowsPathType;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lsun/nio/fs/WindowsPath;
0 20 1 beginIndex I
0 20 2 endIndex I
10 20 3 sb Ljava/lang/StringBuilder;
11 20 4 nelems [Ljava/lang/Integer;
12 19 5 i I
MethodParameters:
Name Flags
beginIndex
endIndex
public boolean startsWith(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
instanceof sun.nio.fs.WindowsPath
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast sun.nio.fs.WindowsPath
astore 2
start local 2 3: aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
aload 2
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 5
4: iconst_0
ireturn
5: StackMap locals: sun.nio.fs.WindowsPath
StackMap stack:
aload 2
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 7
6: aload 0
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ireturn
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 3
start local 3 8: aload 2
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 4
start local 4 9: iload 4
iload 3
if_icmpgt 17
10: goto 15
11: StackMap locals: int int
StackMap stack:
aload 0
iload 4
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
astore 5
start local 5 12: aload 2
iload 4
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
astore 6
start local 6 13: aload 5
aload 6
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 15
14: iconst_0
ireturn
end local 6 end local 5 15: StackMap locals:
StackMap stack:
iinc 4 -1
iload 4
ifge 11
16: iconst_1
ireturn
17: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/nio/fs/WindowsPath;
0 18 1 obj Ljava/nio/file/Path;
3 18 2 other Lsun/nio/fs/WindowsPath;
8 18 3 thisCount I
9 18 4 otherCount I
12 15 5 thisElement Ljava/lang/String;
13 15 6 otherElement Ljava/lang/String;
MethodParameters:
Name Flags
obj
public boolean endsWith(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
instanceof sun.nio.fs.WindowsPath
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast sun.nio.fs.WindowsPath
astore 2
start local 2 3: aload 2
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmple 5
4: iconst_0
ireturn
5: StackMap locals: sun.nio.fs.WindowsPath
StackMap stack:
aload 2
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ifeq 7
6: aload 0
invokevirtual sun.nio.fs.WindowsPath.isEmpty:()Z
ireturn
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 3
start local 3 8: aload 2
invokevirtual sun.nio.fs.WindowsPath.getNameCount:()I
istore 4
start local 4 9: iload 4
iload 3
if_icmple 11
10: iconst_0
ireturn
11: StackMap locals: int int
StackMap stack:
aload 2
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
ifle 16
12: iload 4
iload 3
if_icmpge 14
13: iconst_0
ireturn
14: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
aload 2
getfield sun.nio.fs.WindowsPath.root:Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 16
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
iload 3
iload 4
isub
istore 5
start local 5 17: goto 22
18: StackMap locals: int
StackMap stack:
aload 0
iload 5
iload 4
iadd
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
astore 6
start local 6 19: aload 2
iload 4
invokevirtual sun.nio.fs.WindowsPath.elementAsString:(I)Ljava/lang/String;
astore 7
start local 7 20: aload 6
aload 7
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 22
21: iconst_0
ireturn
end local 7 end local 6 22: StackMap locals:
StackMap stack:
iinc 4 -1
iload 4
ifge 18
23: iconst_1
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lsun/nio/fs/WindowsPath;
0 24 1 obj Ljava/nio/file/Path;
3 24 2 other Lsun/nio/fs/WindowsPath;
8 24 3 thisCount I
9 24 4 otherCount I
17 24 5 off I
19 22 6 thisElement Ljava/lang/String;
20 22 7 otherElement Ljava/lang/String;
MethodParameters:
Name Flags
obj
public int compareTo(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=10, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
astore 2
start local 2 3: aload 1
checkcast sun.nio.fs.WindowsPath
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
astore 3
start local 3 4: aload 2
invokevirtual java.lang.String.length:()I
istore 4
start local 4 5: aload 3
invokevirtual java.lang.String.length:()I
istore 5
start local 5 6: iload 4
iload 5
invokestatic java.lang.Math.min:(II)I
istore 6
start local 6 7: iconst_0
istore 7
start local 7 8: goto 17
9: StackMap locals: sun.nio.fs.WindowsPath java.nio.file.Path java.lang.String java.lang.String int int int int
StackMap stack:
aload 2
iload 7
invokevirtual java.lang.String.charAt:(I)C
istore 8
start local 8 10: aload 3
iload 7
invokevirtual java.lang.String.charAt:(I)C
istore 9
start local 9 11: iload 8
iload 9
if_icmpeq 16
12: iload 8
invokestatic java.lang.Character.toUpperCase:(C)C
istore 8
13: iload 9
invokestatic java.lang.Character.toUpperCase:(C)C
istore 9
14: iload 8
iload 9
if_icmpeq 16
15: iload 8
iload 9
isub
ireturn
end local 9 end local 8 16: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
17: iload 7
iload 6
if_icmplt 9
end local 7 18: iload 4
iload 5
isub
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/nio/fs/WindowsPath;
0 19 1 obj Ljava/nio/file/Path;
3 19 2 s1 Ljava/lang/String;
4 19 3 s2 Ljava/lang/String;
5 19 4 n1 I
6 19 5 n2 I
7 19 6 min I
8 18 7 i I
10 16 8 c1 C
11 16 9 c2 C
MethodParameters:
Name Flags
obj
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
ifnull 3
aload 1
instanceof sun.nio.fs.WindowsPath
ifeq 3
1: aload 0
aload 1
checkcast java.nio.file.Path
invokevirtual sun.nio.fs.WindowsPath.compareTo:(Ljava/nio/file/Path;)I
ifne 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsPath;
0 4 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.hash:I
istore 1
start local 1 1: iload 1
ifne 8
2: iconst_0
istore 2
start local 2 3: goto 6
4: StackMap locals: int int
StackMap stack:
bipush 31
iload 1
imul
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
iload 2
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.toUpperCase:(C)C
iadd
istore 1
5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmplt 4
end local 2 7: aload 0
iload 1
putfield sun.nio.fs.WindowsPath.hash:I
8: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/nio/fs/WindowsPath;
1 9 1 h I
3 7 2 i I
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.WindowsPath.path:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsPath;
long openForReadAttributeAccess(boolean);
descriptor: (Z)J
flags: (0x0000)
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: ldc 33554432
istore 2
start local 2 1: iload 1
ifne 3
2: iload 2
ldc 2097152
ior
istore 2
3: StackMap locals: int
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForWin32Calls:()Ljava/lang/String;
4: sipush 128
5: bipush 7
6: lconst_0
7: iconst_3
8: iload 2
9: invokestatic sun.nio.fs.WindowsNativeDispatcher.CreateFile:(Ljava/lang/String;IIJII)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/nio/fs/WindowsPath;
0 10 1 followLinks Z
1 10 2 flags I
Exceptions:
throws sun.nio.fs.WindowsException
MethodParameters:
Name Flags
followLinks
void checkRead();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForPermissionCheck:()Ljava/lang/String;
invokevirtual java.lang.SecurityManager.checkRead:(Ljava/lang/String;)V
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsPath;
1 4 1 sm Ljava/lang/SecurityManager;
void checkWrite();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForPermissionCheck:()Ljava/lang/String;
invokevirtual java.lang.SecurityManager.checkWrite:(Ljava/lang/String;)V
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsPath;
1 4 1 sm Ljava/lang/SecurityManager;
void checkDelete();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForPermissionCheck:()Ljava/lang/String;
invokevirtual java.lang.SecurityManager.checkDelete:(Ljava/lang/String;)V
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/fs/WindowsPath;
1 4 1 sm Ljava/lang/SecurityManager;
public java.net.URI toUri();
descriptor: ()Ljava/net/URI;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic sun.nio.fs.WindowsUriSupport.toUri:(Lsun/nio/fs/WindowsPath;)Ljava/net/URI;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/WindowsPath;
public sun.nio.fs.WindowsPath toAbsolutePath();
descriptor: ()Lsun/nio/fs/WindowsPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.isAbsolute:()Z
ifeq 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 3: aload 1
ifnull 5
4: aload 1
ldc "user.dir"
invokevirtual java.lang.SecurityManager.checkPropertyAccess:(Ljava/lang/String;)V
5: StackMap locals: java.lang.SecurityManager
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 0
invokevirtual sun.nio.fs.WindowsPath.getAbsolutePath:()Ljava/lang/String;
invokestatic sun.nio.fs.WindowsPath.createFromNormalizedPath:(Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
6: areturn
7: StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
astore 2
start local 2 8: new java.io.IOError
dup
new java.io.IOException
dup
aload 2
invokevirtual sun.nio.fs.WindowsException.getMessage:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
invokespecial java.io.IOError.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/nio/fs/WindowsPath;
3 9 1 sm Ljava/lang/SecurityManager;
8 9 2 x Lsun/nio/fs/WindowsException;
Exception table:
from to target type
5 6 7 Class sun.nio.fs.WindowsException
public sun.nio.fs.WindowsPath toRealPath(java.nio.file.LinkOption[]);
descriptor: ([Ljava/nio/file/LinkOption;)Lsun/nio/fs/WindowsPath;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.checkRead:()V
1: aload 0
aload 1
invokestatic sun.nio.fs.Util.followLinks:([Ljava/nio/file/LinkOption;)Z
invokestatic sun.nio.fs.WindowsLinkSupport.getRealPath:(Lsun/nio/fs/WindowsPath;Z)Ljava/lang/String;
astore 2
start local 2 2: aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
aload 2
invokestatic sun.nio.fs.WindowsPath.createFromNormalizedPath:(Lsun/nio/fs/WindowsFileSystem;Ljava/lang/String;)Lsun/nio/fs/WindowsPath;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/fs/WindowsPath;
0 3 1 options [Ljava/nio/file/LinkOption;
2 3 2 rp Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
options
public java.nio.file.WatchKey register(java.nio.file.WatchService, java.nio.file.WatchEvent$Kind<?>[], java.nio.file.WatchEvent$Modifier[]);
descriptor: (Ljava/nio/file/WatchService;[Ljava/nio/file/WatchEvent$Kind;[Ljava/nio/file/WatchEvent$Modifier;)Ljava/nio/file/WatchKey;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 1
instanceof sun.nio.fs.WindowsWatchService
ifne 4
3: new java.nio.file.ProviderMismatchException
dup
invokespecial java.nio.file.ProviderMismatchException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 4
start local 4 5: aload 4
ifnull 20
6: iconst_0
istore 5
start local 5 7: aload 3
arraylength
istore 6
start local 6 8: iload 6
ifle 16
9: aload 3
iload 6
invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast java.nio.file.WatchEvent$Modifier[]
astore 3
10: iconst_0
istore 7
start local 7 11: goto 15
12: StackMap locals: sun.nio.fs.WindowsPath java.nio.file.WatchService java.nio.file.WatchEvent$Kind[] java.nio.file.WatchEvent$Modifier[] java.lang.SecurityManager int int int
StackMap stack:
getstatic sun.nio.fs.ExtendedOptions.FILE_TREE:Lsun/nio/fs/ExtendedOptions$InternalOption;
aload 3
iload 7
iinc 7 1
aaload
invokevirtual sun.nio.fs.ExtendedOptions$InternalOption.matches:(Ljava/lang/Object;)Z
ifeq 15
13: iconst_1
istore 5
14: goto 16
15: StackMap locals:
StackMap stack:
iload 7
iload 6
if_icmplt 12
end local 7 16: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForPermissionCheck:()Ljava/lang/String;
astore 7
start local 7 17: aload 4
aload 7
invokevirtual java.lang.SecurityManager.checkRead:(Ljava/lang/String;)V
18: iload 5
ifeq 20
19: aload 4
new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\\-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.SecurityManager.checkRead:(Ljava/lang/String;)V
end local 7 end local 6 end local 5 20: StackMap locals:
StackMap stack:
aload 1
checkcast sun.nio.fs.WindowsWatchService
aload 0
aload 2
aload 3
invokevirtual sun.nio.fs.WindowsWatchService.register:(Ljava/nio/file/Path;[Ljava/nio/file/WatchEvent$Kind;[Ljava/nio/file/WatchEvent$Modifier;)Ljava/nio/file/WatchKey;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lsun/nio/fs/WindowsPath;
0 21 1 watcher Ljava/nio/file/WatchService;
0 21 2 events [Ljava/nio/file/WatchEvent$Kind;
0 21 3 modifiers [Ljava/nio/file/WatchEvent$Modifier;
5 21 4 sm Ljava/lang/SecurityManager;
7 20 5 watchSubtree Z
8 20 6 ml I
11 16 7 i I
17 20 7 s Ljava/lang/String;
Exceptions:
throws java.io.IOException
Signature: (Ljava/nio/file/WatchService;[Ljava/nio/file/WatchEvent$Kind<*>;[Ljava/nio/file/WatchEvent$Modifier;)Ljava/nio/file/WatchKey;
MethodParameters:
Name Flags
watcher
events
modifiers
public java.nio.file.FileSystem getFileSystem();
descriptor: ()Ljava/nio/file/FileSystem;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual sun.nio.fs.WindowsPath.getFileSystem:()Lsun/nio/fs/WindowsFileSystem;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path resolve(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual sun.nio.fs.WindowsPath.resolve:(Ljava/nio/file/Path;)Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
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.Path
invokevirtual sun.nio.fs.WindowsPath.compareTo:(Ljava/nio/file/Path;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path normalize();
descriptor: ()Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual sun.nio.fs.WindowsPath.normalize:()Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path subpath(int, int);
descriptor: (II)Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
iload 1
iload 2
invokevirtual sun.nio.fs.WindowsPath.subpath:(II)Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path relativize(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual sun.nio.fs.WindowsPath.relativize:(Ljava/nio/file/Path;)Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path toAbsolutePath();
descriptor: ()Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual sun.nio.fs.WindowsPath.toAbsolutePath:()Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path getParent();
descriptor: ()Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual sun.nio.fs.WindowsPath.getParent:()Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path toRealPath(java.nio.file.LinkOption[]);
descriptor: ([Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;
flags: (0x10c1) ACC_PUBLIC, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual sun.nio.fs.WindowsPath.toRealPath:([Ljava/nio/file/LinkOption;)Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException
public java.nio.file.Path getName(int);
descriptor: (I)Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
iload 1
invokevirtual sun.nio.fs.WindowsPath.getName:(I)Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.file.Path getRoot();
descriptor: ()Ljava/nio/file/Path;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual sun.nio.fs.WindowsPath.getRoot:()Lsun/nio/fs/WindowsPath;
areturn
LocalVariableTable:
Start End Slot Name Signature
static int[] $SWITCH_TABLE$sun$nio$fs$WindowsPathType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic sun.nio.fs.WindowsPath.$SWITCH_TABLE$sun$nio$fs$WindowsPathType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic sun.nio.fs.WindowsPathType.values:()[Lsun/nio/fs/WindowsPathType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic sun.nio.fs.WindowsPathType.ABSOLUTE:Lsun/nio/fs/WindowsPathType;
invokevirtual sun.nio.fs.WindowsPathType.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic sun.nio.fs.WindowsPathType.DIRECTORY_RELATIVE:Lsun/nio/fs/WindowsPathType;
invokevirtual sun.nio.fs.WindowsPathType.ordinal:()I
iconst_4
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic sun.nio.fs.WindowsPathType.DRIVE_RELATIVE:Lsun/nio/fs/WindowsPathType;
invokevirtual sun.nio.fs.WindowsPathType.ordinal:()I
iconst_5
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic sun.nio.fs.WindowsPathType.RELATIVE:Lsun/nio/fs/WindowsPathType;
invokevirtual sun.nio.fs.WindowsPathType.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 sun.nio.fs.WindowsPathType.UNC:Lsun/nio/fs/WindowsPathType;
invokevirtual sun.nio.fs.WindowsPathType.ordinal:()I
iconst_2
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
dup
putstatic sun.nio.fs.WindowsPath.$SWITCH_TABLE$sun$nio$fs$WindowsPathType:[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
}
SourceFile: "WindowsPath.java"
NestMembers:
sun.nio.fs.WindowsPath$WindowsPathWithAttributes
InnerClasses:
public abstract Kind = java.nio.file.WatchEvent$Kind of java.nio.file.WatchEvent
public abstract Modifier = java.nio.file.WatchEvent$Modifier of java.nio.file.WatchEvent
public final InternalOption = sun.nio.fs.ExtendedOptions$InternalOption of sun.nio.fs.ExtendedOptions
private WindowsPathWithAttributes = sun.nio.fs.WindowsPath$WindowsPathWithAttributes of sun.nio.fs.WindowsPath
Result = sun.nio.fs.WindowsPathParser$Result of sun.nio.fs.WindowsPathParser