Package serp.bytecode
Class IIncInstruction
java.lang.Object
serp.bytecode.CodeEntry
serp.bytecode.Instruction
serp.bytecode.TypedInstruction
serp.bytecode.LocalVariableInstruction
serp.bytecode.IIncInstruction
- All Implemented Interfaces:
BCEntity,VisitAcceptor
The
iinc instruction.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidacceptVisit(BCVisitor visit) Accept a visit from aBCVisitor, calling the appropriate methods to notify the visitor that it has entered this entity, and to provide it with the proper callbacks for each sub-entity owned by this one.booleanequalsInstruction(Instruction other) Two local variable instructions are equal if the local index they reference is equal or if either index is 0/unset.intReturn the increment for this IINC instruction.(package private) intReturn the length in bytes of this opcode, including all arguments.(package private) voidRead the arguments for this opcode from the given stream.(package private) voidread(Instruction other) Copy the given instruction data.setIncrement(int val) Set the increment on this IINC instruction.(package private) voidwrite(DataOutput out) Write the arguments for this opcode to the given stream.Methods inherited from class serp.bytecode.LocalVariableInstruction
calculateLocal, calculateOpcode, getLocal, getLocalVariable, getParam, getTypeName, setLocal, setLocalVariable, setParam, setTypeMethods inherited from class serp.bytecode.TypedInstruction
getType, getTypeBC, mapType, setType, setTypeMethods inherited from class serp.bytecode.Instruction
getByteIndex, getClassLoader, getCode, getLineNumber, getLogicalStackChange, getName, getOpcode, getPool, getProject, getStackChange, invalidate, invalidateByteIndexes, isValid, setOpcode
-
Field Details
-
_inc
private int _inc
-
-
Constructor Details
-
IIncInstruction
IIncInstruction(Code owner)
-
-
Method Details
-
getLength
int getLength()Description copied from class:InstructionReturn the length in bytes of this opcode, including all arguments. For many opcodes this method relies on an up-to-date byte index.- Overrides:
getLengthin classInstruction
-
getIncrement
public int getIncrement()Return the increment for this IINC instruction. -
setIncrement
Set the increment on this IINC instruction.- Returns:
- this Instruction, for method chaining
-
equalsInstruction
Description copied from class:LocalVariableInstructionTwo local variable instructions are equal if the local index they reference is equal or if either index is 0/unset.- Overrides:
equalsInstructionin classLocalVariableInstruction
-
acceptVisit
Description copied from interface:VisitAcceptorAccept a visit from aBCVisitor, calling the appropriate methods to notify the visitor that it has entered this entity, and to provide it with the proper callbacks for each sub-entity owned by this one.- Specified by:
acceptVisitin interfaceVisitAcceptor- Overrides:
acceptVisitin classInstruction
-
read
Description copied from class:InstructionCopy the given instruction data.- Overrides:
readin classLocalVariableInstruction
-
read
Description copied from class:InstructionRead the arguments for this opcode from the given stream. This method should be overridden by opcodes that take arguments.- Overrides:
readin classInstruction- Throws:
IOException
-
write
Description copied from class:InstructionWrite the arguments for this opcode to the given stream. This method should be overridden by opcodes that take arguments.- Overrides:
writein classInstruction- Throws:
IOException
-