uk.ac.man.cs.rainbow.compiler.declarations
Class FunctionDeclaration

java.lang.Object
  |
  +--uk.ac.man.cs.rainbow.compiler.CompilerThing
        |
        +--uk.ac.man.cs.rainbow.compiler.CompilerNode
              |
              +--uk.ac.man.cs.rainbow.compiler.declarations.Declaration
                    |
                    +--uk.ac.man.cs.rainbow.compiler.declarations.GlobalDeclaration
                          |
                          +--uk.ac.man.cs.rainbow.compiler.declarations.MethodDeclaration
                                |
                                +--uk.ac.man.cs.rainbow.compiler.declarations.FunctionDeclaration

public class FunctionDeclaration
extends MethodDeclaration


Field Summary
 CompilerType result_type
           
 
Fields inherited from class uk.ac.man.cs.rainbow.compiler.declarations.Declaration
nm
 
Fields inherited from class uk.ac.man.cs.rainbow.compiler.CompilerNode
next, sourcepos
 
Constructor Summary
FunctionDeclaration(SourcePosition sourcepos, String nm, FunctionSignature fsig, ValueBinding bindList, Expression body)
           
 
Method Summary
 CompilerType arg_types()
           
 String dumpTree(int n)
           
 int inputs_required()
           
 RASMList rasm(CGEnv env)
           
 String toString()
           
 TCEnv typecheck(TCEnv env, Errors errors)
           
 
Methods inherited from class uk.ac.man.cs.rainbow.compiler.declarations.Declaration
return_local
 
Methods inherited from class uk.ac.man.cs.rainbow.compiler.CompilerNode
append, appendNotParent, dumpNode, getParent, indent, iterator, list_typecheck, list_typecheck, listLength, listToString, noParent, rasm_list, rasm, setParent, 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
 

Field Detail

result_type

public CompilerType result_type
Constructor Detail

FunctionDeclaration

public FunctionDeclaration(SourcePosition sourcepos,
                           String nm,
                           FunctionSignature fsig,
                           ValueBinding bindList,
                           Expression body)
Method Detail

toString

public String toString()
Overrides:
toString in class MethodDeclaration

dumpTree

public String dumpTree(int n)
Overrides:
dumpTree in class CompilerNode

typecheck

public TCEnv typecheck(TCEnv env,
                       Errors errors)
Overrides:
typecheck in class CompilerNode

arg_types

public CompilerType arg_types()

inputs_required

public int inputs_required()
Overrides:
inputs_required in class MethodDeclaration

rasm

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