Class static_dispatch

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

 class static_dispatch
extends Expression

Defines AST constructor 'static_dispatch'.

See TreeNode for full documentation.


Field Summary
protected  Expressions actual
           
protected  Expression expr
           
protected  AbstractSymbol name
           
protected  AbstractSymbol type_name
           
 
Fields inherited from class TreeNode
lineNumber
 
Constructor Summary
static_dispatch(int lineNumber, Expression a1, AbstractSymbol a2, AbstractSymbol a3, Expressions a4)
          Creates "static_dispatch" 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

type_name

protected AbstractSymbol type_name

name

protected AbstractSymbol name

actual

protected Expressions actual
Constructor Detail

static_dispatch

public static_dispatch(int lineNumber,
                       Expression a1,
                       AbstractSymbol a2,
                       AbstractSymbol a3,
                       Expressions a4)
Creates "static_dispatch" AST node.

Parameters:
lineNumber - the line in the source file from which this node came.
a1 - initial value for expr
a2 - initial value for type_name
a3 - initial value for name
a4 - initial value for actual
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