package io.github.vxzh.jvm.constant;
import io.github.vxzh.jvm.clz.ConstantPool;
public class NameAndTypeInfo extends ConstantInfo {
public int tag = ConstantInfo.CONSTANT_NAMEANDTYPE_INFO;
private int nameIndex;
private int descriptorIndex;
public NameAndTypeInfo(ConstantPool pool) {
super(pool);
}
public int getNameIndex() {
return nameIndex;
}
public void setNameIndex(int nameIndex) {
this.nameIndex = nameIndex;
}
public int getDescriptorIndex() {
return descriptorIndex;
}
public void setDescriptorIndex(int descriptorIndex) {
this.descriptorIndex = descriptorIndex;
}
public int getTag() {
return tag;
}
public String getName() {
ConstantPool pool = this.getConstantPool();
UTF8Info utf8Info1 = (UTF8Info) pool.getConstantInfo(nameIndex);
return utf8Info1.getValue();
}
public String getTypeInfo() {
ConstantPool pool = this.getConstantPool();
UTF8Info utf8Info2 = (UTF8Info) pool.getConstantInfo(descriptorIndex);
return utf8Info2.getValue();
}
public String toString() {
return "(" + getName() + "," + getTypeInfo() + ")";
}
}