org.apache.bcel.generic

Class MULTIANEWARRAY

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 $

Author: M. Dahm

Field Summary
shortdimensions
Constructor Summary
MULTIANEWARRAY()
Empty constructor needed for the Class.newInstance() statement in Instruction.readInstruction().
MULTIANEWARRAY(int index, short dimensions)
Method Summary
voidaccept(Visitor v)
Call corresponding visitor method(s).
intconsumeStack(ConstantPoolGen cpg)
Also works for instructions whose stack effect depends on the constant pool entry they reference.
voiddump(DataOutputStream out)
Dump instruction as byte code to stream out.
shortgetDimensions()
Class[]getExceptions()
ObjectTypegetLoadClassType(ConstantPoolGen cpg)
protected voidinitFromFile(ByteSequence bytes, boolean wide)
Read needed data (i.e., no. dimension) from file.
StringtoString(boolean verbose)
StringtoString(ConstantPool cp)

Field Detail

dimensions

private short dimensions

Constructor Detail

MULTIANEWARRAY

MULTIANEWARRAY()
Empty constructor needed for the Class.newInstance() statement in Instruction.readInstruction(). Not to be used otherwise.

MULTIANEWARRAY

public MULTIANEWARRAY(int index, short dimensions)

Method Detail

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.

Parameters: v Visitor object

consumeStack

public int consumeStack(ConstantPoolGen cpg)
Also works for instructions whose stack effect depends on the constant pool entry they reference.

Returns: Number of words consumed from stack by this instruction

dump

public void dump(DataOutputStream out)
Dump instruction as byte code to stream out.

Parameters: out Output stream

getDimensions

public final short getDimensions()

Returns: number of dimensions to be created

getExceptions

public Class[] getExceptions()

getLoadClassType

public ObjectType getLoadClassType(ConstantPoolGen cpg)

initFromFile

protected void initFromFile(ByteSequence bytes, boolean wide)
Read needed data (i.e., no. dimension) from file.

toString

public String toString(boolean verbose)

Returns: mnemonic for instruction

toString

public String toString(ConstantPool cp)

Returns: mnemonic for instruction with symbolic references resolved