Package org.apache.bcel.generic
Class JSR
java.lang.Object
org.apache.bcel.generic.Instruction
org.apache.bcel.generic.BranchInstruction
org.apache.bcel.generic.JsrInstruction
org.apache.bcel.generic.JSR
- All Implemented Interfaces:
Cloneable,InstructionTargeter,StackProducer,TypedInstruction,UnconditionalBranch,VariableLengthInstruction
JSR - Jump to subroutine
-
Field Summary
Fields inherited from class org.apache.bcel.generic.BranchInstruction
index, position, targetFields inherited from class org.apache.bcel.generic.Instruction
EMPTY_ARRAY, length, opcode -
Constructor Summary
ConstructorsConstructorDescriptionJSR()Empty constructor needed for Instruction.readInstruction.JSR(InstructionHandle target) -
Method Summary
Modifier and TypeMethodDescriptionvoidCall corresponding visitor method(s).voiddump(DataOutputStream out) Dump instruction as byte code to stream out.protected intupdatePosition(int offset, int maxOffset) Called by InstructionList.setPositions when setting the position for every instruction.Methods inherited from class org.apache.bcel.generic.JsrInstruction
getType, physicalSuccessorMethods inherited from class org.apache.bcel.generic.BranchInstruction
containsTarget, dispose, getIndex, getPosition, getTarget, getTargetOffset, getTargetOffset, initFromFile, notifyTarget, setIndex, setPosition, setTarget, toString, updateTargetMethods inherited from class org.apache.bcel.generic.Instruction
consumeStack, copy, equals, getComparator, getLength, getName, getOpcode, hashCode, isValidByte, isValidShort, produceStack, readInstruction, setComparator, setLength, setOpcode, toString, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.bcel.generic.StackProducer
produceStack
-
Constructor Details
-
JSR
JSR()Empty constructor needed for Instruction.readInstruction. Not to be used otherwise. -
JSR
-
-
Method Details
-
accept
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:
acceptin classInstruction- Parameters:
v- Visitor object
-
dump
Dump instruction as byte code to stream out.- Overrides:
dumpin classBranchInstruction- Parameters:
out- Output stream- Throws:
IOException- Thrown when an I/O exception of some sort has occurred.
-
updatePosition
protected int updatePosition(int offset, int maxOffset) Description copied from class:BranchInstructionCalled 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:
updatePositionin classBranchInstruction- Parameters:
offset- additional offset caused by preceding (variable length) instructionsmaxOffset- the maximum offset that may be caused by these instructions- Returns:
- additional offset caused by possible change of this instruction's length
-