public class com.sun.tools.classfile.Module_attribute extends com.sun.tools.classfile.Attribute
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.classfile.Module_attribute
super_class: com.sun.tools.classfile.Attribute
{
public static final int ACC_TRANSITIVE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 32
public static final int ACC_STATIC_PHASE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 64
public static final int ACC_OPEN;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 32
public static final int ACC_SYNTHETIC;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4096
public static final int ACC_MANDATED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 32768
public final int module_name;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int module_flags;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int module_version_index;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int requires_count;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final com.sun.tools.classfile.Module_attribute$RequiresEntry[] requires;
descriptor: [Lcom/sun/tools/classfile/Module_attribute$RequiresEntry;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int exports_count;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final com.sun.tools.classfile.Module_attribute$ExportsEntry[] exports;
descriptor: [Lcom/sun/tools/classfile/Module_attribute$ExportsEntry;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int opens_count;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final com.sun.tools.classfile.Module_attribute$OpensEntry[] opens;
descriptor: [Lcom/sun/tools/classfile/Module_attribute$OpensEntry;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int uses_count;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int[] uses_index;
descriptor: [I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int provides_count;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final com.sun.tools.classfile.Module_attribute$ProvidesEntry[] provides;
descriptor: [Lcom/sun/tools/classfile/Module_attribute$ProvidesEntry;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
void <init>(com.sun.tools.classfile.ClassReader, int, int);
descriptor: (Lcom/sun/tools/classfile/ClassReader;II)V
flags: (0x0000)
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 2
iload 3
invokespecial com.sun.tools.classfile.Attribute.<init>:(II)V
1: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.module_name:I
2: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.module_flags:I
3: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.module_version_index:I
4: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.requires_count:I
5: aload 0
aload 0
getfield com.sun.tools.classfile.Module_attribute.requires_count:I
anewarray com.sun.tools.classfile.Module_attribute$RequiresEntry
putfield com.sun.tools.classfile.Module_attribute.requires:[Lcom/sun/tools/classfile/Module_attribute$RequiresEntry;
6: iconst_0
istore 4
start local 4 7: goto 10
8: StackMap locals: com.sun.tools.classfile.Module_attribute com.sun.tools.classfile.ClassReader int int int
StackMap stack:
aload 0
getfield com.sun.tools.classfile.Module_attribute.requires:[Lcom/sun/tools/classfile/Module_attribute$RequiresEntry;
iload 4
new com.sun.tools.classfile.Module_attribute$RequiresEntry
dup
aload 1
invokespecial com.sun.tools.classfile.Module_attribute$RequiresEntry.<init>:(Lcom/sun/tools/classfile/ClassReader;)V
aastore
9: iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
aload 0
getfield com.sun.tools.classfile.Module_attribute.requires_count:I
if_icmplt 8
end local 4 11: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.exports_count:I
12: aload 0
aload 0
getfield com.sun.tools.classfile.Module_attribute.exports_count:I
anewarray com.sun.tools.classfile.Module_attribute$ExportsEntry
putfield com.sun.tools.classfile.Module_attribute.exports:[Lcom/sun/tools/classfile/Module_attribute$ExportsEntry;
13: iconst_0
istore 4
start local 4 14: goto 17
15: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.classfile.Module_attribute.exports:[Lcom/sun/tools/classfile/Module_attribute$ExportsEntry;
iload 4
new com.sun.tools.classfile.Module_attribute$ExportsEntry
dup
aload 1
invokespecial com.sun.tools.classfile.Module_attribute$ExportsEntry.<init>:(Lcom/sun/tools/classfile/ClassReader;)V
aastore
16: iinc 4 1
StackMap locals:
StackMap stack:
17: iload 4
aload 0
getfield com.sun.tools.classfile.Module_attribute.exports_count:I
if_icmplt 15
end local 4 18: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.opens_count:I
19: aload 0
aload 0
getfield com.sun.tools.classfile.Module_attribute.opens_count:I
anewarray com.sun.tools.classfile.Module_attribute$OpensEntry
putfield com.sun.tools.classfile.Module_attribute.opens:[Lcom/sun/tools/classfile/Module_attribute$OpensEntry;
20: iconst_0
istore 4
start local 4 21: goto 24
22: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.classfile.Module_attribute.opens:[Lcom/sun/tools/classfile/Module_attribute$OpensEntry;
iload 4
new com.sun.tools.classfile.Module_attribute$OpensEntry
dup
aload 1
invokespecial com.sun.tools.classfile.Module_attribute$OpensEntry.<init>:(Lcom/sun/tools/classfile/ClassReader;)V
aastore
23: iinc 4 1
StackMap locals:
StackMap stack:
24: iload 4
aload 0
getfield com.sun.tools.classfile.Module_attribute.opens_count:I
if_icmplt 22
end local 4 25: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.uses_count:I
26: aload 0
aload 0
getfield com.sun.tools.classfile.Module_attribute.uses_count:I
newarray 10
putfield com.sun.tools.classfile.Module_attribute.uses_index:[I
27: iconst_0
istore 4
start local 4 28: goto 31
29: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.classfile.Module_attribute.uses_index:[I
iload 4
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
iastore
30: iinc 4 1
StackMap locals:
StackMap stack:
31: iload 4
aload 0
getfield com.sun.tools.classfile.Module_attribute.uses_count:I
if_icmplt 29
end local 4 32: aload 0
aload 1
invokevirtual com.sun.tools.classfile.ClassReader.readUnsignedShort:()I
putfield com.sun.tools.classfile.Module_attribute.provides_count:I
33: aload 0
aload 0
getfield com.sun.tools.classfile.Module_attribute.provides_count:I
anewarray com.sun.tools.classfile.Module_attribute$ProvidesEntry
putfield com.sun.tools.classfile.Module_attribute.provides:[Lcom/sun/tools/classfile/Module_attribute$ProvidesEntry;
34: iconst_0
istore 4
start local 4 35: goto 38
36: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.classfile.Module_attribute.provides:[Lcom/sun/tools/classfile/Module_attribute$ProvidesEntry;
iload 4
new com.sun.tools.classfile.Module_attribute$ProvidesEntry
dup
aload 1
invokespecial com.sun.tools.classfile.Module_attribute$ProvidesEntry.<init>:(Lcom/sun/tools/classfile/ClassReader;)V
aastore
37: iinc 4 1
StackMap locals:
StackMap stack:
38: iload 4
aload 0
getfield com.sun.tools.classfile.Module_attribute.provides_count:I
if_icmplt 36
end local 4 39: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lcom/sun/tools/classfile/Module_attribute;
0 40 1 cr Lcom/sun/tools/classfile/ClassReader;
0 40 2 name_index I
0 40 3 length I
7 11 4 i I
14 18 4 i I
21 25 4 i I
28 32 4 i I
35 39 4 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
cr
name_index
length
public void <init>(int, int, int, int, com.sun.tools.classfile.Module_attribute$RequiresEntry[], com.sun.tools.classfile.Module_attribute$ExportsEntry[], com.sun.tools.classfile.Module_attribute$OpensEntry[], int[], com.sun.tools.classfile.Module_attribute$ProvidesEntry[]);
descriptor: (IIII[Lcom/sun/tools/classfile/Module_attribute$RequiresEntry;[Lcom/sun/tools/classfile/Module_attribute$ExportsEntry;[Lcom/sun/tools/classfile/Module_attribute$OpensEntry;[I[Lcom/sun/tools/classfile/Module_attribute$ProvidesEntry;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=10, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
iload 1
iconst_2
invokespecial com.sun.tools.classfile.Attribute.<init>:(II)V
1: aload 0
iload 2
putfield com.sun.tools.classfile.Module_attribute.module_name:I
2: aload 0
iload 3
putfield com.sun.tools.classfile.Module_attribute.module_flags:I
3: aload 0
iload 4
putfield com.sun.tools.classfile.Module_attribute.module_version_index:I
4: aload 0
aload 5
arraylength
putfield com.sun.tools.classfile.Module_attribute.requires_count:I
5: aload 0
aload 5
putfield com.sun.tools.classfile.Module_attribute.requires:[Lcom/sun/tools/classfile/Module_attribute$RequiresEntry;
6: aload 0
aload 6
arraylength
putfield com.sun.tools.classfile.Module_attribute.exports_count:I
7: aload 0
aload 6
putfield com.sun.tools.classfile.Module_attribute.exports:[Lcom/sun/tools/classfile/Module_attribute$ExportsEntry;
8: aload 0
aload 7
arraylength
putfield com.sun.tools.classfile.Module_attribute.opens_count:I
9: aload 0
aload 7
putfield com.sun.tools.classfile.Module_attribute.opens:[Lcom/sun/tools/classfile/Module_attribute$OpensEntry;
10: aload 0
aload 8
arraylength
putfield com.sun.tools.classfile.Module_attribute.uses_count:I
11: aload 0
aload 8
putfield com.sun.tools.classfile.Module_attribute.uses_index:[I
12: aload 0
aload 9
arraylength
putfield com.sun.tools.classfile.Module_attribute.provides_count:I
13: aload 0
aload 9
putfield com.sun.tools.classfile.Module_attribute.provides:[Lcom/sun/tools/classfile/Module_attribute$ProvidesEntry;
14: return
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 15 0 this Lcom/sun/tools/classfile/Module_attribute;
0 15 1 name_index I
0 15 2 module_name I
0 15 3 module_flags I
0 15 4 module_version_index I
0 15 5 requires [Lcom/sun/tools/classfile/Module_attribute$RequiresEntry;
0 15 6 exports [Lcom/sun/tools/classfile/Module_attribute$ExportsEntry;
0 15 7 opens [Lcom/sun/tools/classfile/Module_attribute$OpensEntry;
0 15 8 uses [I
0 15 9 provides [Lcom/sun/tools/classfile/Module_attribute$ProvidesEntry;
MethodParameters:
Name Flags
name_index
module_name
module_flags
module_version_index
requires
exports
opens
uses
provides
public java.lang.String getUses(int, com.sun.tools.classfile.ConstantPool);
descriptor: (ILcom/sun/tools/classfile/ConstantPool;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.tools.classfile.Module_attribute.uses_index:[I
iload 1
iaload
istore 3
start local 3 1: aload 2
iload 3
invokevirtual com.sun.tools.classfile.ConstantPool.getClassInfo:(I)Lcom/sun/tools/classfile/ConstantPool$CONSTANT_Class_info;
invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_Class_info.getName:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/classfile/Module_attribute;
0 2 1 index I
0 2 2 constant_pool Lcom/sun/tools/classfile/ConstantPool;
1 2 3 i I
Exceptions:
throws com.sun.tools.classfile.ConstantPoolException
MethodParameters:
Name Flags
index
constant_pool
public <R, D> R accept(com.sun.tools.classfile.Attribute$Visitor<R, D>, );
descriptor: (Lcom/sun/tools/classfile/Attribute$Visitor;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
aload 2
invokeinterface com.sun.tools.classfile.Attribute$Visitor.visitModule:(Lcom/sun/tools/classfile/Module_attribute;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/classfile/Module_attribute;
0 1 1 visitor Lcom/sun/tools/classfile/Attribute$Visitor<TR;TD;>;
0 1 2 data TD;
Signature: <R:Ljava/lang/Object;D:Ljava/lang/Object;>(Lcom/sun/tools/classfile/Attribute$Visitor<TR;TD;>;TD;)TR;
MethodParameters:
Name Flags
visitor
data
}
SourceFile: "Module_attribute.java"
NestMembers:
com.sun.tools.classfile.Module_attribute$ExportsEntry com.sun.tools.classfile.Module_attribute$OpensEntry com.sun.tools.classfile.Module_attribute$ProvidesEntry com.sun.tools.classfile.Module_attribute$RequiresEntry
InnerClasses:
public abstract Visitor = com.sun.tools.classfile.Attribute$Visitor of com.sun.tools.classfile.Attribute
public CONSTANT_Class_info = com.sun.tools.classfile.ConstantPool$CONSTANT_Class_info of com.sun.tools.classfile.ConstantPool
public ExportsEntry = com.sun.tools.classfile.Module_attribute$ExportsEntry of com.sun.tools.classfile.Module_attribute
public OpensEntry = com.sun.tools.classfile.Module_attribute$OpensEntry of com.sun.tools.classfile.Module_attribute
public ProvidesEntry = com.sun.tools.classfile.Module_attribute$ProvidesEntry of com.sun.tools.classfile.Module_attribute
public RequiresEntry = com.sun.tools.classfile.Module_attribute$RequiresEntry of com.sun.tools.classfile.Module_attribute