cs132.vapor.ast
Class VAssign

java.lang.Object
  extended by cs132.vapor.ast.Node
      extended by cs132.vapor.ast.VInstr
          extended by cs132.vapor.ast.VAssign

public class VAssign
extends VInstr

An assignment instruction. This is only used for assignments of simple operands to registers and local variables.

Other instructions that use the "=" operator: VMemRead, VMemWrite, VBuiltIn, VCall.


Nested Class Summary
 
Nested classes/interfaces inherited from class cs132.vapor.ast.VInstr
VInstr.Visitor<E extends Throwable>, VInstr.VisitorP<P,E extends Throwable>, VInstr.VisitorPR<P,R,E extends Throwable>, VInstr.VisitorR<R,E extends Throwable>
 
Field Summary
 VVarRef dest
          The location being stored to.
 VOperand source
          The value being stored.
 
Fields inherited from class cs132.vapor.ast.Node
sourcePos
 
Constructor Summary
VAssign(SourcePos sourcePos, VVarRef dest, VOperand source)
           
 
Method Summary
<P,E extends Throwable>
void
accept(P p, VInstr.VisitorP<P,E> v)
          Relay for VInstr.VisitorP
<P,R,E extends Throwable>
R
accept(P p, VInstr.VisitorPR<P,R,E> v)
          Relay for VInstr.VisitorPR
<E extends Throwable>
void
accept(VInstr.Visitor<E> v)
          Relay for VInstr.Visitor
<R,E extends Throwable>
R
accept(VInstr.VisitorR<R,E> v)
          Relay for VInstr.VisitorR
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

dest

public final VVarRef dest
The location being stored to.


source

public final VOperand source
The value being stored.

Constructor Detail

VAssign

public VAssign(SourcePos sourcePos,
               VVarRef dest,
               VOperand source)
Method Detail

accept

public <E extends Throwable> void accept(VInstr.Visitor<E> v)
            throws E extends Throwable
Description copied from class: VInstr
Relay for VInstr.Visitor

Specified by:
accept in class VInstr
Throws:
E extends Throwable

accept

public <R,E extends Throwable> R accept(VInstr.VisitorR<R,E> v)
         throws E extends Throwable
Description copied from class: VInstr
Relay for VInstr.VisitorR

Specified by:
accept in class VInstr
Throws:
E extends Throwable

accept

public <P,E extends Throwable> void accept(P p,
                                           VInstr.VisitorP<P,E> v)
            throws E extends Throwable
Description copied from class: VInstr
Relay for VInstr.VisitorP

Specified by:
accept in class VInstr
Throws:
E extends Throwable

accept

public <P,R,E extends Throwable> R accept(P p,
                                          VInstr.VisitorPR<P,R,E> v)
         throws E extends Throwable
Description copied from class: VInstr
Relay for VInstr.VisitorPR

Specified by:
accept in class VInstr
Throws:
E extends Throwable