Package org.apache.bcel.generic
Class IINC
java.lang.Object
org.apache.bcel.generic.Instruction
org.apache.bcel.generic.LocalVariableInstruction
org.apache.bcel.generic.IINC
- All Implemented Interfaces:
Cloneable
,IndexedInstruction
,TypedInstruction
IINC - Increment local variable by constant
-
Field Summary
FieldsFields inherited from class org.apache.bcel.generic.LocalVariableInstruction
n
Fields inherited from class org.apache.bcel.generic.Instruction
EMPTY_ARRAY, length, opcode
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Calls corresponding visitor method(s).void
dump
(DataOutputStream out) Dumps instruction as byte code to stream out.final int
Returns the type associated with the instruction - in case of ALOAD or ASTORE Type.OBJECT is returned.protected void
initFromFile
(ByteSequence bytes, boolean wide) Reads needed data (e.g.final void
setIncrement
(int c) Sets increment factor.final void
setIndex
(int n) Sets index of local variable.private void
setWide()
toString
(boolean verbose) Returns mnemonic for instruction.Methods inherited from class org.apache.bcel.generic.LocalVariableInstruction
getCanonicalTag, getIndex, setIndexOnly
Methods inherited from class org.apache.bcel.generic.Instruction
consumeStack, copy, dispose, equals, getComparator, getLength, getName, getOpcode, hashCode, isValidByte, isValidShort, produceStack, readInstruction, setComparator, setLength, setOpcode, toString, toString
-
Field Details
-
wide
private boolean wide -
c
private int c
-
-
Constructor Details
-
IINC
IINC()Empty constructor needed for Instruction.readInstruction. Not to be used otherwise. -
IINC
public IINC(int n, int c) - Parameters:
n
- index of local variablec
- increment factor
-
-
Method Details
-
accept
Calls 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 classInstruction
- Parameters:
v
- Visitor object
-
dump
Dumps instruction as byte code to stream out.- Overrides:
dump
in classLocalVariableInstruction
- Parameters:
out
- Output stream- Throws:
IOException
- Thrown when an I/O exception of some sort has occurred.
-
getIncrement
public final int getIncrement()- Returns:
- increment factor
-
getType
Description copied from class:LocalVariableInstruction
Returns the type associated with the instruction - in case of ALOAD or ASTORE Type.OBJECT is returned. This is just a bit incorrect, because ALOAD and ASTORE may work on every ReferenceType (including Type.NULL) and ASTORE may even work on a ReturnaddressType .- Specified by:
getType
in interfaceTypedInstruction
- Overrides:
getType
in classLocalVariableInstruction
- Returns:
- int type
-
initFromFile
Reads needed data (e.g. index) from file.- Overrides:
initFromFile
in classLocalVariableInstruction
- Parameters:
bytes
- byte sequence to read fromwide
- "wide" instruction flag- Throws:
IOException
- may be thrown if the implementation needs to read data from the file
-
setIncrement
public final void setIncrement(int c) Sets increment factor. -
setIndex
public final void setIndex(int n) Sets index of local variable.- Specified by:
setIndex
in interfaceIndexedInstruction
- Overrides:
setIndex
in classLocalVariableInstruction
- See Also:
-
setWide
private void setWide() -
toString
Returns mnemonic for instruction.- Overrides:
toString
in classLocalVariableInstruction
- Parameters:
verbose
- long/short format switch- Returns:
- mnemonic for instruction.
-