## 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:
  java.lang.Cloneable, IndexedInstruction, java.io.Serializable, TypedInstruction

public class IINC
extends LocalVariableInstruction

IINC - Increment local variable by constant

Version:
  $Id: IINC.java,v 1.2 2002/03/12 09:24:01 mdahm Exp $
Author:
  M. Dahm
See Also:
  Serialized Form

Field Summary

Fields inherited from class org.apache.bcel.generic.LocalVariableInstruction
`n`

Fields inherited from class org.apache.bcel.generic.Instruction
`length, opcode`

Constructor Summary
`IINC(int n, int c)`

Method Summary
`void` `accept(Visitor v)` Call corresponding visitor method(s).
`void` `dump(java.io.DataOutputStream out)` Dump instruction as byte code to stream out.
`int` `getIncrement()`
`Type` `getType(ConstantPoolGen cp)` Returns the type associated with the instruction - in case of ALOAD or ASTORE Type.OBJECT is returned.
`protected void` `initFromFile(ByteSequence bytes, boolean wide)` Read needed data (e.g. index) from file.
`void` `setIncrement(int c)` Set increment factor.
`void` `setIndex(int n)` Set index of local variable.
`java.lang.String` `toString(boolean verbose)` Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")" "<"< local variable index>">"

Methods inherited from class org.apache.bcel.generic.LocalVariableInstruction
`getCanonicalTag, getIndex`

Methods inherited from class org.apache.bcel.generic.Instruction
`consumeStack, copy, equals, getComparator, getLength, getName, getOpcode, produceStack, readInstruction, setComparator, toString, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### IINC

    public IINC(int n,
                int c)

Parameters:
  `n` - index of local variable
  `c` - increment factor

Method Detail

### dump

    public void dump(java.io.DataOutputStream out)
              throws java.io.IOException

  Dump instruction as byte code to stream out.

  Overrides:
    `dump` in class `LocalVariableInstruction`
  Parameters:
    `out` - Output stream
    `java.io.IOException`

### initFromFile

    protected void initFromFile(ByteSequence bytes,
                                boolean wide)
                         throws java.io.IOException

  Read needed data (e.g. index) from file.

  Overrides:
    `initFromFile` in class `LocalVariableInstruction`
  Parameters:
    `bytes` - byte sequence to read from
    `wide` - "wide" instruction flag
    `java.io.IOException`

### toString

    public java.lang.String toString(boolean verbose)

  Description copied from class: `LocalVariableInstruction`
  Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")" "<"< local variable index>">"

  Overrides:
    `toString` in class `LocalVariableInstruction`
  Parameters:
    `verbose` - long/short format switch
  Returns:
    mnemonic for instruction

### setIndex

    public final void setIndex(int n)

  Set index of local variable.

  Specified by:
    `setIndex` in interface `IndexedInstruction`
  Overrides:
    `setIndex` in class `LocalVariableInstruction`

### getIncrement

    public final int getIncrement()

  Returns:
    increment factor

### setIncrement

    public final void setIncrement(int c)

  Set increment factor.

### getType

    public Type getType(ConstantPoolGen cp)

  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 interface `TypedInstruction`
  Overrides:
    `getType` in class `LocalVariableInstruction`
  Returns:
    int type

### accept

    public void accept(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 `Instruction`
  Parameters:
    `v` - Visitor object

Copyright © 2002-2003 Apache Software Foundation. All Rights Reserved.