Class typcase

java.lang.Object
  extended by TreeNode
      extended by Expression
          extended by typcase

 class typcase
extends Expression

Defines AST constructor 'typcase'.

See TreeNode for full documentation.


Field Summary
protected  Cases cases
           
protected  Expression expr
           
 
Fields inherited from class TreeNode
lineNumber
 
Constructor Summary
typcase(int lineNumber, Expression a1, Cases a2)
          Creates "typcase" AST node.
 
Method Summary
 void code(java.io.PrintStream s)
          Generates code for this expression.
 TreeNode copy()
          Creates a copy of this node.
 void dump_with_types(java.io.PrintStream out, int n)
           
 void dump(java.io.PrintStream out, int n)
          Pretty-prints this node to this output stream.
 
Methods inherited from class Expression
dump_type, get_type, set_type
 
Methods inherited from class TreeNode
copy_AbstractSymbol, copy_Boolean, dump_AbstractSymbol, dump_Boolean, dump_line, getLineNumber, set
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

expr

protected Expression expr

cases

protected Cases cases
Constructor Detail

typcase

public typcase(int lineNumber,
               Expression a1,
               Cases a2)
Creates "typcase" AST node.

Parameters:
lineNumber - the line in the source file from which this node came.
a1 - initial value for expr
a2 - initial value for cases
Method Detail

copy

public TreeNode copy()
Description copied from class: TreeNode
Creates a copy of this node.

Specified by:
copy in class TreeNode
Returns:
a copy of this node

dump

public void dump(java.io.PrintStream out,
                 int n)
Description copied from class: TreeNode
Pretty-prints this node to this output stream.

Specified by:
dump in class TreeNode
Parameters:
out - the output stream
n - the number of spaces to indent the output

dump_with_types

public void dump_with_types(java.io.PrintStream out,
                            int n)
Specified by:
dump_with_types in class Expression

code

public void code(java.io.PrintStream s)
Generates code for this expression. This method is to be completed in programming assignment 5. (You may add or remove parameters as you wish.)

Specified by:
code in class Expression
Parameters:
s - the output stream