uk.ac.man.cs.rainbow.simulator.rasm
Class OpenUnion

java.lang.Object
  |
  +--uk.ac.man.cs.rainbow.simulator.Instruction
        |
        +--uk.ac.man.cs.rainbow.simulator.rasm.OpenUnion
All Implemented Interfaces:
Serializable

public class OpenUnion
extends Instruction

For unmaking unions (the reverse of makeUnion). The index value will be of enumeration type, where the enumeration is built from the list of tag names. The type of the union is not put on the stack by this instruction, as it can always be obtained using the getType instruction.

union value index

See Also:
MakeUnion, Serialized Form

Inner classes inherited from class uk.ac.man.cs.rainbow.simulator.Instruction
Instruction.MACRO
 
Constructor Summary
OpenUnion()
           
OpenUnion(RASMCode code)
           
 
Method Summary
protected  boolean execute(RASMThread thread)
          Make this instruction execute in the given context.
 String toString()
           
 
Methods inherited from class uk.ac.man.cs.rainbow.simulator.Instruction
addClass, getInstruction, getInstruction, getInstruction
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OpenUnion

public OpenUnion()

OpenUnion

public OpenUnion(RASMCode code)
Method Detail

toString

public String toString()
Overrides:
toString in class Object

execute

protected boolean execute(RASMThread thread)
                   throws RASMThread.Exception
Description copied from class: Instruction
Make this instruction execute in the given context.
Overrides:
execute in class Instruction
Following copied from class: uk.ac.man.cs.rainbow.simulator.Instruction
Throws:
RainbowException - All sorts of things can go wrong during execution...