uk.ac.man.cs.rainbow.compiler.expressions
Class RecordFieldSelect

java.lang.Object
  |
  +--uk.ac.man.cs.rainbow.compiler.CompilerThing
        |
        +--uk.ac.man.cs.rainbow.compiler.CompilerNode
              |
              +--uk.ac.man.cs.rainbow.compiler.expressions.Expression
                    |
                    +--uk.ac.man.cs.rainbow.compiler.expressions.RecordFieldSelect
All Implemented Interfaces:
Cloneable, Serializable

public class RecordFieldSelect
extends Expression

See Also:
Serialized Form

Fields inherited from class uk.ac.man.cs.rainbow.compiler.CompilerNode
next, sourcepos
 
Constructor Summary
RecordFieldSelect(SourcePosition sourcepos, Expression record, String fieldname)
           
 
Method Summary
 RASMList rasm(CGEnv env)
           
 String toString()
           
 Expression typecheckExpr(TCEnv env, Errors errors, CompilerType expected, String context)
           
 
Methods inherited from class uk.ac.man.cs.rainbow.compiler.expressions.Expression
check_nominal, cloneExpression, cloneExpressionNoParent, getSpec, map_accumulate_reduce_to_constant, reduce_to_constant, reduce_to_integer_constant, setSpec, size_allowing_for_repeats, specList, typecheckExprList
 
Methods inherited from class uk.ac.man.cs.rainbow.compiler.CompilerNode
append, appendNotParent, dumpNode, dumpTree, getParent, indent, iterator, list_typecheck, list_typecheck, listLength, listToString, noParent, rasm_list, rasm, setParent, typecheck, typecheck, typecheckGreen, typecheckGreen
 
Methods inherited from class uk.ac.man.cs.rainbow.compiler.CompilerThing
className, crashHere, getSerial
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RecordFieldSelect

public RecordFieldSelect(SourcePosition sourcepos,
                         Expression record,
                         String fieldname)
Method Detail

toString

public String toString()
Overrides:
toString in class Expression

typecheckExpr

public Expression typecheckExpr(TCEnv env,
                                Errors errors,
                                CompilerType expected,
                                String context)
Overrides:
typecheckExpr in class Expression

rasm

public RASMList rasm(CGEnv env)
Overrides:
rasm in class CompilerNode