de.fub.bytecode.generic
Class MULTIANEWARRAY
java.lang.Object
|
+--de.fub.bytecode.generic.Instruction
|
+--de.fub.bytecode.generic.CPInstruction
|
+--de.fub.bytecode.generic.MULTIANEWARRAY
- All Implemented Interfaces:
- AllocationInstruction, java.lang.Cloneable, ExceptionThrower, IndexedInstruction, LoadClass, java.io.Serializable, 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,v 1.10 2001/07/14 08:54:10 ehaase Exp $
- Author:
- M. Dahm
- See Also:
- Serialized Form
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
MULTIANEWARRAY
public MULTIANEWARRAY(int index,
short dimensions)
dump
public void dump(java.io.DataOutputStream out)
throws java.io.IOException
- Dump instruction as byte code to stream out.
- Overrides:
dump
in class CPInstruction
- Parameters:
out
- Output stream
initFromFile
protected void initFromFile(ByteSequence bytes,
boolean wide)
throws java.io.IOException
- Read needed data (i.e., no. dimension) from file.
- Overrides:
initFromFile
in class CPInstruction
- Following copied from class:
de.fub.bytecode.generic.CPInstruction
- Parameters:
bytes
- input streamwide
- wide prefix?
getDimensions
public final short getDimensions()
- Returns:
- number of dimensions to be created
toString
public java.lang.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
- Returns:
- mnemonic for instruction
toString
public java.lang.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 java.lang.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
- Following copied from interface:
de.fub.bytecode.generic.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.
- Overrides:
accept
in class Instruction
- Parameters:
v
- Visitor object