joeq.Compiler.BytecodeAnalysis
Class Bytecodes.JSR
java.lang.Object
joeq.Compiler.BytecodeAnalysis.Bytecodes.Instruction
joeq.Compiler.BytecodeAnalysis.Bytecodes.BranchInstruction
joeq.Compiler.BytecodeAnalysis.Bytecodes.JsrInstruction
joeq.Compiler.BytecodeAnalysis.Bytecodes.JSR
- All Implemented Interfaces:
- Serializable, Cloneable, Bytecodes.InstructionTargeter, Bytecodes.StackProducer, Bytecodes.TypedInstruction, Bytecodes.UnconditionalBranch, Bytecodes.VariableLengthInstruction
- Enclosing interface:
- Bytecodes
public static class Bytecodes.JSR
- extends Bytecodes.JsrInstruction
- implements Bytecodes.StackProducer, Bytecodes.VariableLengthInstruction
- See Also:
- Serialized Form
Method Summary |
void |
accept(Bytecodes.Visitor v)
Call corresponding visitor method(s). |
void |
dump(DataOutputStream out)
Dump instruction as byte code to stream out. |
protected int |
updatePosition(int offset,
int max_offset)
Called by InstructionList.setPositions when setting the position for every
instruction. |
Bytecodes.JSR
public Bytecodes.JSR(Bytecodes.InstructionHandle target)
dump
public void dump(DataOutputStream out)
throws IOException
- Dump instruction as byte code to stream out.
- Overrides:
dump
in class Bytecodes.BranchInstruction
- Parameters:
out
- Output stream
- Throws:
IOException
updatePosition
protected int updatePosition(int offset,
int max_offset)
- Description copied from class:
Bytecodes.BranchInstruction
- Called by InstructionList.setPositions when setting the position for every
instruction. In the presence of variable length instructions `setPositions'
performs multiple passes over the instruction list to calculate the
correct (byte) positions and offsets by calling this function.
- Overrides:
updatePosition
in class Bytecodes.BranchInstruction
- Parameters:
offset
- additional offset caused by preceding (variable length) instructionsmax_offset
- the maximum offset that may be caused by these instructions
- Returns:
- additional offset caused by possible change of this instruction's length
accept
public void accept(Bytecodes.Visitor v)
- Call corresponding visitor method(s). The order is:
Call visitor methods of implemented interfaces first, then
call methods according to the class hierarchy in descending order,
i.e., the most specific visitXXX() call comes last.
- Specified by:
accept
in class Bytecodes.Instruction
- Parameters:
v
- Visitor object
Copyright © 2001-2008 John Whaley. All Rights Reserved.