|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--de.fub.bytecode.generic.Instruction
Abstract super class for all Java byte codes.
Field Summary | |
protected short |
length
|
protected short |
opcode
|
Constructor Summary | |
Instruction(short opcode,
short length)
|
Method Summary | |
abstract void |
accept(Visitor v)
Call corresponding visitor method(s). |
int |
consumeStack()
Deprecated. Use consumeStack(cp) instead which always gives correct results |
int |
consumeStack(ConstantPoolGen cpg)
This method also gives right results for instructions whose effect on the stack depends on the constant pool entry they reference. |
Instruction |
copy()
Use with caution, since `BranchInstruction's have a `target' reference which is not copied correctly (only basic types are). |
void |
dump(java.io.DataOutputStream out)
Dump instruction as byte code to stream out. |
int |
getLength()
|
short |
getOpcode()
|
short |
getTag()
Deprecated. in favor of getOpcode() |
protected void |
initFromFile(ByteSequence bytes,
boolean wide)
Read needed data (e.g. |
int |
produceStack()
Deprecated. Use produceStack(cp) instead which always gives correct results |
int |
produceStack(ConstantPoolGen cpg)
This method also gives right results for instructions whose effect on the stack depends on the constant pool entry they reference. |
static Instruction |
readInstruction(ByteSequence bytes)
Read an instruction from (byte code) input stream and return the appropiate object. |
java.lang.String |
toString()
|
java.lang.String |
toString(boolean verbose)
Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")" |
java.lang.String |
toString(ConstantPool cp)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected short length
protected short opcode
Constructor Detail |
public Instruction(short opcode, short length)
Method Detail |
public void dump(java.io.DataOutputStream out) throws java.io.IOException
out
- Output streampublic java.lang.String toString(boolean verbose)
verbose
- long/short format switchpublic java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String toString(ConstantPool cp)
public Instruction copy()
BranchInstruction
protected void initFromFile(ByteSequence bytes, boolean wide) throws java.io.IOException
bytes
- byte sequence to read fromwide
- "wide" instruction flagpublic static final Instruction readInstruction(ByteSequence bytes) throws java.io.IOException
file
- file to read frompublic int consumeStack()
public int produceStack()
public int consumeStack(ConstantPoolGen cpg)
public int produceStack(ConstantPoolGen cpg)
public short getTag()
public short getOpcode()
public int getLength()
public abstract void accept(Visitor v)
v
- Visitor object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |