de.fub.bytecode.generic
Class CHECKCAST

java.lang.Object
  |
  +--de.fub.bytecode.generic.Instruction
        |
        +--de.fub.bytecode.generic.CPInstruction
              |
              +--de.fub.bytecode.generic.CHECKCAST
All Implemented Interfaces:
java.lang.Cloneable, ExceptionThrower, IndexedInstruction, LoadClass, java.io.Serializable, StackConsumer, StackProducer, TypedInstruction

public class CHECKCAST
extends CPInstruction
implements LoadClass, ExceptionThrower, StackProducer, StackConsumer

CHECKCAST - Check whether object is of given type

Stack: ..., objectref -> ..., objectref

Version:
$Id: CHECKCAST.java,v 1.8 2001/07/11 13:19:04 dahm Exp $
Author:
M. Dahm
See Also:
Serialized Form

Fields inherited from class de.fub.bytecode.generic.CPInstruction
index
 
Fields inherited from class de.fub.bytecode.generic.Instruction
length, opcode
 
Constructor Summary
CHECKCAST(int index)
          Check whether object is of given type
 
Method Summary
 void accept(Visitor v)
          Call corresponding visitor method(s).
 java.lang.Class[] getExceptions()
           
 ObjectType getLoadClassType(ConstantPoolGen cpg)
          Returns the ObjectType of the referenced class or interface that may be loaded and resolved.
 
Methods inherited from class de.fub.bytecode.generic.CPInstruction
dump, getIndex, getType, initFromFile, setIndex, toString, toString
 
Methods inherited from class de.fub.bytecode.generic.Instruction
consumeStack, consumeStack, copy, getLength, getOpcode, getTag, produceStack, produceStack, readInstruction, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.fub.bytecode.generic.LoadClass
getType
 
Methods inherited from interface de.fub.bytecode.generic.StackProducer
produceStack
 
Methods inherited from interface de.fub.bytecode.generic.StackConsumer
consumeStack
 

Constructor Detail

CHECKCAST

public CHECKCAST(int index)
Check whether object is of given type
Parameters:
n - index to class in constant pool
Method Detail

getExceptions

public java.lang.Class[] getExceptions()
Specified by:
getExceptions in interface ExceptionThrower
Returns:
exceptions this instruction may cause

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