com.croftsoft.apps.compiler.mini.node
Class ProcedureDeclarationMiniNode

java.lang.Object
  extended by com.croftsoft.apps.compiler.mini.node.AbstractMiniNode
      extended by com.croftsoft.apps.compiler.mini.node.ProcedureDeclarationMiniNode
All Implemented Interfaces:
DeclarationMiniNode, MiniNode

public class ProcedureDeclarationMiniNode
extends AbstractMiniNode
implements DeclarationMiniNode

Parse tree node for the Mini programming language.

Version:
1999-04-27
See Also:
MiniNode
Author:
David W. Croft

Field Summary
protected  BlockMiniNode blockMiniNode
           
protected  Boolean containsNested
           
protected  NameMiniNode nameMiniNode
           
protected  ParameterSequenceMiniNode parameterSequenceMiniNode
           
 
Constructor Summary
ProcedureDeclarationMiniNode(NameMiniNode nameMiniNode, ParameterSequenceMiniNode parameterSequenceMiniNode, BlockMiniNode blockMiniNode)
           
 
Method Summary
 void checkSemantics(Stack parentMiniNodeStack)
           
 Boolean containsNested()
           
 void generate(MiniNodeCodeVisitor miniNodeCodeVisitor)
          Uses the Visitor design pattern to generate code.
 BlockMiniNode getBlockMiniNode()
           
 NameMiniNode getNameMiniNode()
           
 NameSequenceMiniNode getNameSequenceMiniNode()
           
 ParameterSequenceMiniNode getParameterSequenceMiniNode()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nameMiniNode

protected NameMiniNode nameMiniNode

parameterSequenceMiniNode

protected ParameterSequenceMiniNode parameterSequenceMiniNode

blockMiniNode

protected BlockMiniNode blockMiniNode

containsNested

protected Boolean containsNested
Constructor Detail

ProcedureDeclarationMiniNode

public ProcedureDeclarationMiniNode(NameMiniNode nameMiniNode,
                                    ParameterSequenceMiniNode parameterSequenceMiniNode,
                                    BlockMiniNode blockMiniNode)
Method Detail

getNameMiniNode

public NameMiniNode getNameMiniNode()

getParameterSequenceMiniNode

public ParameterSequenceMiniNode getParameterSequenceMiniNode()

getBlockMiniNode

public BlockMiniNode getBlockMiniNode()

containsNested

public Boolean containsNested()

getNameSequenceMiniNode

public NameSequenceMiniNode getNameSequenceMiniNode()
Specified by:
getNameSequenceMiniNode in interface DeclarationMiniNode

generate

public void generate(MiniNodeCodeVisitor miniNodeCodeVisitor)
Description copied from interface: MiniNode
Uses the Visitor design pattern to generate code.
 miniNodeCodeVisitor.generate ( this );
 

Specified by:
generate in interface MiniNode

checkSemantics

public void checkSemantics(Stack parentMiniNodeStack)
                    throws SemanticErrorException
Specified by:
checkSemantics in interface MiniNode
Throws:
SemanticErrorException

CroftSoft Javadoc

CroftSoft Apps Javadoc (2008-09-28 21:15:07)