Empty constructor needed for the Class.newInstance() statement in Instruction.readInstruction(). Not to be used otherwise.
paramindex to constant pool super(opcode, (short)3); setIndex(index);
super(opcode, (short)3); setIndex(index);
Dump instruction as byte code to stream out.paramout Output stream out.writeByte(opcode); out.writeShort(index);
out.writeByte(opcode); out.writeShort(index);
returnindex in constant pool referred by this instruction. return index;
return index;
returntype related with this instruction. ConstantPool cp = cpg.getConstantPool(); String name = cp.getConstantString(index, com.sun.org.apache.bcel.internal.Constants.CONSTANT_Class); if(!name.startsWith("[")) name = "L" + name + ";"; return Type.getType(name);
ConstantPool cp = cpg.getConstantPool(); String name = cp.getConstantString(index, com.sun.org.apache.bcel.internal.Constants.CONSTANT_Class); if(!name.startsWith("[")) name = "L" + name + ";"; return Type.getType(name);
Read needed data (i.e., index) from file.parambytes input streamparamwide wide prefix? setIndex(bytes.readUnsignedShort()); length = 3;
setIndex(bytes.readUnsignedShort()); length = 3;
Set the index to constant pool.paramindex in constant pool. if(index < 0) throw new ClassGenException("Negative index value: " + index); this.index = index;
if(index < 0) throw new ClassGenException("Negative index value: " + index); this.index = index;
Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")" "<"< constant pool index>">"paramverbose long/short format switchreturnmnemonic for instruction return super.toString(verbose) + " " + index;
return super.toString(verbose) + " " + index;
returnmnemonic for instruction with symbolic references resolved Constant c = cp.getConstant(index); String str = cp.constantToString(c); if(c instanceof ConstantClass) str = str.replace('.", '/"); return com.sun.org.apache.bcel.internal.Constants.OPCODE_NAMES[opcode] + " " + str;
Constant c = cp.getConstant(index); String str = cp.constantToString(c); if(c instanceof ConstantClass) str = str.replace('.", '/"); return com.sun.org.apache.bcel.internal.Constants.OPCODE_NAMES[opcode] + " " + str;