< prev index next >
src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPool.java
Print this page
*** 115,124 ****
--- 115,126 ----
public static final int CONSTANT_InterfaceMethodref = 11;
public static final int CONSTANT_NameAndType = 12;
public static final int CONSTANT_MethodHandle = 15;
public static final int CONSTANT_MethodType = 16;
public static final int CONSTANT_InvokeDynamic = 18;
+ public static final int CONSTANT_Module = 19;
+ public static final int CONSTANT_Package = 20;
public static enum RefKind {
REF_getField(1),
REF_getStatic(2),
REF_putField(3),
*** 211,224 ****
--- 213,234 ----
case CONSTANT_Methodref:
pool[i] = new CONSTANT_Methodref_info(this, cr);
break;
+ case CONSTANT_Module:
+ pool[i] = new CONSTANT_Module_info(this, cr);
+ break;
+
case CONSTANT_NameAndType:
pool[i] = new CONSTANT_NameAndType_info(this, cr);
break;
+ case CONSTANT_Package:
+ pool[i] = new CONSTANT_Package_info(this, cr);
+ break;
+
case CONSTANT_String:
pool[i] = new CONSTANT_String_info(this, cr);
break;
case CONSTANT_Utf8:
*** 274,287 ****
--- 284,305 ----
public CONSTANT_Class_info getClassInfo(int index) throws InvalidIndex, UnexpectedEntry {
return ((CONSTANT_Class_info) get(index, CONSTANT_Class));
}
+ public CONSTANT_Module_info getModuleInfo(int index) throws InvalidIndex, UnexpectedEntry {
+ return ((CONSTANT_Module_info) get(index, CONSTANT_Module));
+ }
+
public CONSTANT_NameAndType_info getNameAndTypeInfo(int index) throws InvalidIndex, UnexpectedEntry {
return ((CONSTANT_NameAndType_info) get(index, CONSTANT_NameAndType));
}
+ public CONSTANT_Package_info getPackageInfo(int index) throws InvalidIndex, UnexpectedEntry {
+ return ((CONSTANT_Package_info) get(index, CONSTANT_Package));
+ }
+
public String getUTF8Value(int index) throws InvalidIndex, UnexpectedEntry {
return getUTF8Info(index).value;
}
public int getUTF8Index(String value) throws EntryNotFound {
*** 337,350 ****
R visitFloat(CONSTANT_Float_info info, P p);
R visitInteger(CONSTANT_Integer_info info, P p);
R visitInterfaceMethodref(CONSTANT_InterfaceMethodref_info info, P p);
R visitInvokeDynamic(CONSTANT_InvokeDynamic_info info, P p);
R visitLong(CONSTANT_Long_info info, P p);
- R visitNameAndType(CONSTANT_NameAndType_info info, P p);
R visitMethodref(CONSTANT_Methodref_info info, P p);
R visitMethodHandle(CONSTANT_MethodHandle_info info, P p);
R visitMethodType(CONSTANT_MethodType_info info, P p);
R visitString(CONSTANT_String_info info, P p);
R visitUtf8(CONSTANT_Utf8_info info, P p);
}
public static abstract class CPInfo {
--- 355,370 ----
R visitFloat(CONSTANT_Float_info info, P p);
R visitInteger(CONSTANT_Integer_info info, P p);
R visitInterfaceMethodref(CONSTANT_InterfaceMethodref_info info, P p);
R visitInvokeDynamic(CONSTANT_InvokeDynamic_info info, P p);
R visitLong(CONSTANT_Long_info info, P p);
R visitMethodref(CONSTANT_Methodref_info info, P p);
R visitMethodHandle(CONSTANT_MethodHandle_info info, P p);
R visitMethodType(CONSTANT_MethodType_info info, P p);
+ R visitModule(CONSTANT_Module_info info, P p);
+ R visitNameAndType(CONSTANT_NameAndType_info info, P p);
+ R visitPackage(CONSTANT_Package_info info, P p);
R visitString(CONSTANT_String_info info, P p);
R visitUtf8(CONSTANT_Utf8_info info, P p);
}
public static abstract class CPInfo {
*** 779,788 ****
--- 799,848 ----
public <R, D> R accept(Visitor<R, D> visitor, D data) {
return visitor.visitMethodref(this, data);
}
}
+ public static class CONSTANT_Module_info extends CPInfo {
+ CONSTANT_Module_info(ConstantPool cp, ClassReader cr) throws IOException {
+ super(cp);
+ name_index = cr.readUnsignedShort();
+ }
+
+ public CONSTANT_Module_info(ConstantPool cp, int name_index) {
+ super(cp);
+ this.name_index = name_index;
+ }
+
+ public int getTag() {
+ return CONSTANT_Module;
+ }
+
+ public int byteLength() {
+ return 3;
+ }
+
+ /**
+ * Get the raw value of the module name referenced by this constant pool entry.
+ * This will be the name of the module.
+ * @return the raw value of the module name
+ */
+ public String getName() throws ConstantPoolException {
+ return cp.getUTF8Value(name_index);
+ }
+
+ @Override
+ public String toString() {
+ return "CONSTANT_Module_info[name_index: " + name_index + "]";
+ }
+
+ public <R, D> R accept(Visitor<R, D> visitor, D data) {
+ return visitor.visitModule(this, data);
+ }
+
+ public final int name_index;
+ }
+
public static class CONSTANT_NameAndType_info extends CPInfo {
CONSTANT_NameAndType_info(ConstantPool cp, ClassReader cr) throws IOException {
super(cp);
name_index = cr.readUnsignedShort();
type_index = cr.readUnsignedShort();
*** 821,830 ****
--- 881,930 ----
public final int name_index;
public final int type_index;
}
+ public static class CONSTANT_Package_info extends CPInfo {
+ CONSTANT_Package_info(ConstantPool cp, ClassReader cr) throws IOException {
+ super(cp);
+ name_index = cr.readUnsignedShort();
+ }
+
+ public CONSTANT_Package_info(ConstantPool cp, int name_index) {
+ super(cp);
+ this.name_index = name_index;
+ }
+
+ public int getTag() {
+ return CONSTANT_Package;
+ }
+
+ public int byteLength() {
+ return 3;
+ }
+
+ /**
+ * Get the raw value of the package name referenced by this constant pool entry.
+ * This will be the name of the package, in internal form.
+ * @return the raw value of the module name
+ */
+ public String getName() throws ConstantPoolException {
+ return cp.getUTF8Value(name_index);
+ }
+
+ @Override
+ public String toString() {
+ return "CONSTANT_Package_info[name_index: " + name_index + "]";
+ }
+
+ public <R, D> R accept(Visitor<R, D> visitor, D data) {
+ return visitor.visitPackage(this, data);
+ }
+
+ public final int name_index;
+ }
+
public static class CONSTANT_String_info extends CPInfo {
CONSTANT_String_info(ConstantPool cp, ClassReader cr) throws IOException {
super(cp);
string_index = cr.readUnsignedShort();
}
< prev index next >