fmrisc.Syntax
Class LetType

java.lang.Object
  extended by fmrisc.Syntax.ASTBase
      extended by fmrisc.Syntax.TypeBase
          extended by fmrisc.Syntax.LetType
All Implemented Interfaces:
AST, Type

public final class LetType
extends TypeBase

Handling of terms with local bindings.


Constructor Summary
LetType(TypeDeclaration[] declarations, Type base)
          Construct let types of declarations and base types.
 
Method Summary
 AST accept(ASTVisitor visitor)
          Accept visitor for a visit.
 Type getBase()
          get base type
 TypeDeclaration[] getDeclarations()
          get declarations
 Type instantiateType()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 void printCore(java.io.PrintWriter out)
          Prints text representation of tree on out (without new line termination).
 
Methods inherited from class fmrisc.Syntax.TypeBase
print
 
Methods inherited from class fmrisc.Syntax.ASTBase
printParens, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface fmrisc.Syntax.AST
printParens, toString
 

Constructor Detail

LetType

public LetType(TypeDeclaration[] declarations,
               Type base)
Construct let types of declarations and base types.

Parameters:
declarations - the local bindings in the types.
base - the base type.
Method Detail

getDeclarations

public TypeDeclaration[] getDeclarations()
get declarations

Returns:
the declaration sequence

getBase

public Type getBase()
get base type

Returns:
the base type

instantiateType

public Type instantiateType()
return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers

Returns:
the instantiated copy

printCore

public void printCore(java.io.PrintWriter out)
Prints text representation of tree on out (without new line termination).

Specified by:
printCore in interface AST
Specified by:
printCore in class ASTBase
Parameters:
out - the stream on which the text is written

accept

public AST accept(ASTVisitor visitor)
Accept visitor for a visit.

Parameters:
visitor - the visitor who is accepted by this node.
Returns:
the result of the visit (may be null)