Class RET
java.lang.Object
org.apache.bcel.generic.Instruction
org.apache.bcel.generic.RET
- All Implemented Interfaces:
Cloneable, IndexedInstruction, TypedInstruction
RET - Return from subroutine
Stack: ... -> ...
-
Field Summary
Fields inherited from class Instruction
length, opcode -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidCall corresponding visitor method(s).voiddump(DataOutputStream out) Dumps instruction as byte code to stream out.final intgetIndex()Gets the index of the local variable containing the return address.Gets the return address type.protected voidinitFromFile(ByteSequence bytes, boolean wide) Reads needed data (for example index) from file.final voidsetIndex(int index) Sets the index of the local variable containing the return address.toString(boolean verbose) Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")"Methods inherited from class Instruction
consumeStack, copy, equals, getComparator, getLength, getName, getOpcode, hashCode, isValidByte, isValidShort, produceStack, readInstruction, setComparator, toString, toStringModifier and TypeMethodDescriptionintThis method also gives right results for instructions whose effect on the stack depends on the constant pool entry they reference.copy()Use with caution, since 'BranchInstruction's have a 'target' reference which is not copied correctly (only basic types are).booleanTests for equality, delegated to comparatorstatic InstructionComparatorDeprecated.(6.0) use the built in comparator, or wrap this class in another object that implements these methodsintGets the length (in bytes) of instruction.getName()Gets the name of instruction, that is, opcode name.shortGets this instruction's opcode.inthashCode()Gets the hashCode of this object.static booleanisValidByte(int value) Tests if the value can fit in a byte (signed).static booleanisValidShort(int value) Tests if the value can fit in a short (signed).intThis method also gives right results for instructions whose effect on the stack depends on the constant pool entry they reference.static InstructionreadInstruction(ByteSequence bytes) Reads an instruction from (byte code) input stream and return the appropriate object.static voidDeprecated.(6.0) use the built in comparator, or wrap this class in another object that implements these methodstoString()toString(ConstantPool cp) Gets the mnemonic for instruction with symbolic references resolved.
-
Constructor Details
-
RET
Constructs a RET instruction.- Parameters:
index- index of local variable containing the return address.
-
-
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, that is, the most specific visitXXX() call comes last.- Specified by:
acceptin classInstruction- Parameters:
v- Visitor object.
-
dump
Dumps instruction as byte code to stream out.- Overrides:
dumpin classInstruction- Parameters:
out- Output stream.- Throws:
IOException- Thrown when an I/O exception of some sort has occurred.
-
getIndex
Gets the index of the local variable containing the return address.- Specified by:
getIndexin interfaceIndexedInstruction- Returns:
- index of local variable containing the return address.
-
getType
Gets the return address type.- Specified by:
getTypein interfaceTypedInstruction- Parameters:
cp- The constant pool generator.- Returns:
- return address type.
-
initFromFile
Reads needed data (for example index) from file.- Overrides:
initFromFilein classInstruction- Parameters:
bytes- byte sequence to read from.wide- "wide" instruction flag.- Throws:
IOException- Thrown if the implementation needs to read data from the file
-
setIndex
Sets the index of the local variable containing the return address.- Specified by:
setIndexin interfaceIndexedInstruction- Parameters:
index- index of local variable containing the return address.- Throws:
ClassGenException- Thrown if index is out of bounds.
-
toString
Description copied from class:InstructionLong output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")"- Overrides:
toStringin classInstruction- Parameters:
verbose- long/short format switch.- Returns:
- mnemonic for instruction.
-