public class com.sun.tools.javac.util.JDK9Wrappers$Module
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.javac.util.JDK9Wrappers$Module
super_class: java.lang.Object
{
private final java.lang.Object theRealModule;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static java.lang.reflect.Method addExportsMethod;
descriptor: Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.lang.reflect.Method addUsesMethod;
descriptor: Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.lang.reflect.Method getModuleMethod;
descriptor: Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.lang.reflect.Method getUnnamedModuleMethod;
descriptor: Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: aconst_null
putstatic com.sun.tools.javac.util.JDK9Wrappers$Module.addExportsMethod:Ljava/lang/reflect/Method;
1: aconst_null
putstatic com.sun.tools.javac.util.JDK9Wrappers$Module.addUsesMethod:Ljava/lang/reflect/Method;
2: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.sun.tools.javac.util.JDK9Wrappers$Module.theRealModule:Ljava/lang/Object;
2: invokestatic com.sun.tools.javac.util.JDK9Wrappers$Module.init:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
0 4 1 module Ljava/lang/Object;
MethodParameters:
Name Flags
module
public static com.sun.tools.javac.util.JDK9Wrappers$Module getModule(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: invokestatic com.sun.tools.javac.util.JDK9Wrappers$Module.init:()V
1: getstatic com.sun.tools.javac.util.JDK9Wrappers$Module.getModuleMethod:Ljava/lang/reflect/Method;
aload 0
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
astore 1
start local 1 2: new com.sun.tools.javac.util.JDK9Wrappers$Module
dup
aload 1
invokespecial com.sun.tools.javac.util.JDK9Wrappers$Module.<init>:(Ljava/lang/Object;)V
3: areturn
end local 1 4: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 5: new com.sun.tools.javac.util.Abort
dup
aload 1
invokespecial com.sun.tools.javac.util.Abort.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 clazz Ljava/lang/Class<*>;
2 4 1 result Ljava/lang/Object;
5 6 1 ex Ljava/lang/Exception;
Exception table:
from to target type
0 3 4 Class java.lang.IllegalAccessException
0 3 4 Class java.lang.IllegalArgumentException
0 3 4 Class java.lang.reflect.InvocationTargetException
0 3 4 Class java.lang.SecurityException
Signature: (Ljava/lang/Class<*>;)Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
MethodParameters:
Name Flags
clazz
public static com.sun.tools.javac.util.JDK9Wrappers$Module getUnnamedModule(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: invokestatic com.sun.tools.javac.util.JDK9Wrappers$Module.init:()V
1: getstatic com.sun.tools.javac.util.JDK9Wrappers$Module.getUnnamedModuleMethod:Ljava/lang/reflect/Method;
aload 0
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
astore 1
start local 1 2: new com.sun.tools.javac.util.JDK9Wrappers$Module
dup
aload 1
invokespecial com.sun.tools.javac.util.JDK9Wrappers$Module.<init>:(Ljava/lang/Object;)V
3: areturn
end local 1 4: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 5: new com.sun.tools.javac.util.Abort
dup
aload 1
invokespecial com.sun.tools.javac.util.Abort.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 classLoader Ljava/lang/ClassLoader;
2 4 1 result Ljava/lang/Object;
5 6 1 ex Ljava/lang/Exception;
Exception table:
from to target type
0 3 4 Class java.lang.IllegalAccessException
0 3 4 Class java.lang.IllegalArgumentException
0 3 4 Class java.lang.reflect.InvocationTargetException
0 3 4 Class java.lang.SecurityException
MethodParameters:
Name Flags
classLoader
public com.sun.tools.javac.util.JDK9Wrappers$Module addExports(java.lang.String, com.sun.tools.javac.util.JDK9Wrappers$Module);
descriptor: (Ljava/lang/String;Lcom/sun/tools/javac/util/JDK9Wrappers$Module;)Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.sun.tools.javac.util.JDK9Wrappers$Module.addExportsMethod:Ljava/lang/reflect/Method;
aload 0
getfield com.sun.tools.javac.util.JDK9Wrappers$Module.theRealModule:Ljava/lang/Object;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
getfield com.sun.tools.javac.util.JDK9Wrappers$Module.theRealModule:Ljava/lang/Object;
aastore
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
pop
1: goto 4
StackMap locals:
StackMap stack: java.lang.ReflectiveOperationException
2: astore 3
start local 3 3: new com.sun.tools.javac.util.Abort
dup
aload 3
invokespecial com.sun.tools.javac.util.Abort.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 4: StackMap locals:
StackMap stack:
aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
0 5 1 pn Ljava/lang/String;
0 5 2 other Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
3 4 3 ex Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
0 1 2 Class java.lang.IllegalAccessException
0 1 2 Class java.lang.reflect.InvocationTargetException
MethodParameters:
Name Flags
pn
other
public com.sun.tools.javac.util.JDK9Wrappers$Module addUses(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: getstatic com.sun.tools.javac.util.JDK9Wrappers$Module.addUsesMethod:Ljava/lang/reflect/Method;
aload 0
getfield com.sun.tools.javac.util.JDK9Wrappers$Module.theRealModule:Ljava/lang/Object;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
pop
1: goto 4
StackMap locals:
StackMap stack: java.lang.ReflectiveOperationException
2: astore 2
start local 2 3: new com.sun.tools.javac.util.Abort
dup
aload 2
invokespecial com.sun.tools.javac.util.Abort.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 4: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
0 5 1 st Ljava/lang/Class<*>;
3 4 2 ex Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
0 1 2 Class java.lang.IllegalAccessException
0 1 2 Class java.lang.reflect.InvocationTargetException
Signature: (Ljava/lang/Class<*>;)Lcom/sun/tools/javac/util/JDK9Wrappers$Module;
MethodParameters:
Name Flags
st
private static void init();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=1, args_size=0
0: getstatic com.sun.tools.javac.util.JDK9Wrappers$Module.addExportsMethod:Ljava/lang/reflect/Method;
ifnonnull 11
1: ldc "java.lang.Module"
iconst_0
aconst_null
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 0
start local 0 2: aload 0
ldc "addUses"
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Class;
aastore
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
putstatic com.sun.tools.javac.util.JDK9Wrappers$Module.addUsesMethod:Ljava/lang/reflect/Method;
3: aload 0
ldc "addExports"
4: iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
dup
iconst_1
aload 0
aastore
5: invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
putstatic com.sun.tools.javac.util.JDK9Wrappers$Module.addExportsMethod:Ljava/lang/reflect/Method;
6: ldc Ljava/lang/Class;
ldc "getModule"
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
putstatic com.sun.tools.javac.util.JDK9Wrappers$Module.getModuleMethod:Ljava/lang/reflect/Method;
7: ldc Ljava/lang/ClassLoader;
ldc "getUnnamedModule"
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
putstatic com.sun.tools.javac.util.JDK9Wrappers$Module.getUnnamedModuleMethod:Ljava/lang/reflect/Method;
end local 0 8: goto 11
StackMap locals:
StackMap stack: java.lang.Exception
9: astore 0
start local 0 10: new com.sun.tools.javac.util.Abort
dup
aload 0
invokespecial com.sun.tools.javac.util.Abort.<init>:(Ljava/lang/Throwable;)V
athrow
end local 0 11: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
2 8 0 moduleClass Ljava/lang/Class<*>;
10 11 0 ex Ljava/lang/Exception;
Exception table:
from to target type
1 8 9 Class java.lang.ClassNotFoundException
1 8 9 Class java.lang.NoSuchMethodException
1 8 9 Class java.lang.SecurityException
}
SourceFile: "JDK9Wrappers.java"
NestHost: com.sun.tools.javac.util.JDK9Wrappers
InnerClasses:
public Module = com.sun.tools.javac.util.JDK9Wrappers$Module of com.sun.tools.javac.util.JDK9Wrappers