## org.apache.bcel.generic
Class MULTIANEWARRAY

    java.lang.Object
      org.apache.bcel.generic.Instruction
          org.apache.bcel.generic.CPInstruction
              org.apache.bcel.generic.MULTIANEWARRAY

All Implemented Interfaces:
  Serializable, Cloneable, AllocationInstruction, ExceptionThrower, IndexedInstruction, LoadClass, TypedInstruction

    public class MULTIANEWARRAY

extends CPInstruction
implements LoadClass, AllocationInstruction, ExceptionThrower

MULTIANEWARRAY - Create new mutidimensional array of references

    Stack: ..., count1, [count2, ...] -> ..., arrayref

Version:
  $Id: MULTIANEWARRAY.java 386056 2006-03-15 11:31:56Z tcurdt $
See Also:
  Serialized Form

Field Summary

Fields inherited from class org.apache.bcel.generic.CPInstruction
`index`

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

Constructor Summary
`MULTIANEWARRAY(int index, short dimensions)`

Method Summary
`void` `accept(Visitor v)` Call corresponding visitor method(s).
`int` `consumeStack(ConstantPoolGen cpg)` Also works for instructions whose stack effect depends on the constant pool entry they reference.
`void` `dump(DataOutputStream out)` Dump instruction as byte code to stream out.
`short` `getDimensions()`
`Class[]` `getExceptions()`
`ObjectType` `getLoadClassType(ConstantPoolGen cpg)` Returns the ObjectType of the referenced class or interface that may be loaded and resolved.
`protected void` `initFromFile(ByteSequence bytes, boolean wide)` Read needed data (i.e., no.
`String` `toString(boolean verbose)` Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")" "<"< constant pool index>">"
`String` `toString(ConstantPool cp)`

Methods inherited from class org.apache.bcel.generic.CPInstruction
`getIndex, getType, setIndex`

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

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

Methods inherited from interface org.apache.bcel.generic.LoadClass
`getType`

Constructor Detail

### MULTIANEWARRAY

    public MULTIANEWARRAY(int index,
                          short dimensions)

Method Detail

### dump

    public void dump(DataOutputStream out)
              throws IOException

  Dump instruction as byte code to stream out.

  Overrides:
    `dump` in class `CPInstruction`
  Parameters:
    `out` - Output stream
  Throws:
    `IOException`

### initFromFile

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

  Read needed data (i.e., no. dimension) from file.

  Overrides:
    `initFromFile` in class `CPInstruction`
  Parameters:
    `bytes` - input stream
    `wide` - wide prefix?
  Throws:
    `IOException`

### getDimensions

    public final short getDimensions()

  Returns:
    number of dimensions to be created

### toString

    public String toString(boolean verbose)

  Description copied from class: `CPInstruction`
  Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")" "<"< constant pool index>">"

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

### toString

    public String toString(ConstantPool cp)

  Overrides:
    `toString` in class `CPInstruction`
  Returns:
    mnemonic for instruction with symbolic references resolved

### consumeStack

    public int consumeStack(ConstantPoolGen cpg)

  Also works for instructions whose stack effect depends on the constant pool entry they reference.

  Overrides:
    `consumeStack` in class `Instruction`
  Returns:
    Number of words consumed from stack by this instruction

### getExceptions

    public Class[] getExceptions()

  Specified by:
    `getExceptions` in interface `ExceptionThrower`

### getLoadClassType

    public ObjectType getLoadClassType(ConstantPoolGen cpg)

  Description copied from interface: `LoadClass`
  Returns the ObjectType of the referenced class or interface that may be loaded and resolved.

  Specified by:
    `getLoadClassType` in interface `LoadClass`
  Returns:
    object type that may be loaded or null if a primitive is referenced

### 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-2006 Apache Software Foundation. All Rights Reserved.