coins.ir.hir
クラス HirVisitorModel1

java.lang.Object
  |
  +--coins.ir.hir.HirVisitorModel1
すべての実装インタフェース:
HirVisitor
直系の既知のサブクラス:
PrintStmtVisitor

public class HirVisitorModel1
extends java.lang.Object
implements HirVisitor

HirVisitorModel1 Visitor model for processing HIR nodes where visiting procedure is written in the method visit of this class and each method of the form atXxx called from acceptor of HIR class does a processing without writing traverse procedure. (This visitor model does not call visitChildren that is called from HirVisitorModel2.) User may extends this class to do their own processing by overriding visit method to visit nodes in concern and overriding some methods of the form atXxx in concern. Example of the extension of HirVisitorModel1: PrintStmtVisitor.java See HirVisitorModel2.


フィールドの概要
protected  int fDbgLevel
           
 HirRoot hirRoot
           
 IoRoot ioRoot
           
 SymRoot symRoot
           
 
コンストラクタの概要
HirVisitorModel1(HirRoot pHirRoot)
           
 
メソッドの概要
 void atAsmStmt(AsmStmt p)
           
 void atAssignStmt(AssignStmt p)
           
 void atBlockStmt(BlockStmt p)
           
 void atConstNode(ConstNode p)
           
 void atElemNode(ElemNode p)
           
 void atExp(Exp p)
           
 void atExpStmt(ExpStmt p)
           
 void atForStmt(ForStmt p)
           
 void atFunctionExp(FunctionExp p)
           
 void atHirList(HirList p)
           
 void atHirSeq(HirSeq p)
           
 void atIfStmt(IfStmt p)
           
 void atIndexedLoopStmt(IndexedLoopStmt p)
           
 void atInfNode(InfNode p)
           
 void atInfStmt(InfStmt p)
           
 void atIrList(IrList p)
           
 void atJumpStmt(JumpStmt p)
           
 void atLabelDef(LabelDef p)
           
 void atLabeledStmt(LabeledStmt p)
           
 void atLabelNode(LabelNode p)
           
 void atLoopStmt(LoopStmt p)
           
 void atNullNode(NullNode p)
           
 void atPhiExp(PhiExp p)
           
 void atPointedExp(PointedExp p)
           
 void atProgram(Program p)
           
 void atQualifiedExp(QualifiedExp p)
           
 void atRepeatStmt(RepeatStmt p)
           
 void atReturnStmt(ReturnStmt p)
           
 void atSubpDefinition(SubpDefinition p)
           
 void atSubpNode(SubpNode p)
           
 void atSubscriptedExp(SubscriptedExp p)
           
 void atSwitchStmt(SwitchStmt p)
           
 void atSymNode(SymNode p)
           
 void atTypeNode(TypeNode p)
           
 void atUntilStmt(UntilStmt p)
           
 void atVarNode(VarNode p)
           
 void atWhileStmt(WhileStmt p)
           
 void visit(HIR pHir)
          visit Procedure to visit nodes of pHir.
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

hirRoot

public final HirRoot hirRoot

symRoot

public final SymRoot symRoot

ioRoot

public final IoRoot ioRoot

fDbgLevel

protected final int fDbgLevel
コンストラクタの詳細

HirVisitorModel1

public HirVisitorModel1(HirRoot pHirRoot)
メソッドの詳細

visit

public void visit(HIR pHir)
visit Procedure to visit nodes of pHir. You may override this method to selectively visit nodes in concern. If there is a probability of setting programRoot as pHir, Program node should be selected as a node to be accepted because, elements of subprogram definition list is not traversed by HirIterator.

パラメータ:
pHir - root of subtree whose nodes are to be visited.

atProgram

public void atProgram(Program p)
定義:
インタフェース HirVisitor 内の atProgram

atSubpDefinition

public void atSubpDefinition(SubpDefinition p)
定義:
インタフェース HirVisitor 内の atSubpDefinition

atHirList

public void atHirList(HirList p)
定義:
インタフェース HirVisitor 内の atHirList

atIrList

public void atIrList(IrList p)
定義:
インタフェース HirVisitor 内の atIrList

atHirSeq

public void atHirSeq(HirSeq p)
定義:
インタフェース HirVisitor 内の atHirSeq

atInfNode

public void atInfNode(InfNode p)
定義:
インタフェース HirVisitor 内の atInfNode

atInfStmt

public void atInfStmt(InfStmt p)
定義:
インタフェース HirVisitor 内の atInfStmt

atVarNode

public void atVarNode(VarNode p)
定義:
インタフェース HirVisitor 内の atVarNode

atElemNode

public void atElemNode(ElemNode p)
定義:
インタフェース HirVisitor 内の atElemNode

atSubpNode

public void atSubpNode(SubpNode p)
定義:
インタフェース HirVisitor 内の atSubpNode

atTypeNode

public void atTypeNode(TypeNode p)
定義:
インタフェース HirVisitor 内の atTypeNode

atConstNode

public void atConstNode(ConstNode p)
定義:
インタフェース HirVisitor 内の atConstNode

atLabelNode

public void atLabelNode(LabelNode p)
定義:
インタフェース HirVisitor 内の atLabelNode

atSymNode

public void atSymNode(SymNode p)
定義:
インタフェース HirVisitor 内の atSymNode

atNullNode

public void atNullNode(NullNode p)
定義:
インタフェース HirVisitor 内の atNullNode

atLabelDef

public void atLabelDef(LabelDef p)
定義:
インタフェース HirVisitor 内の atLabelDef

atExp

public void atExp(Exp p)
定義:
インタフェース HirVisitor 内の atExp

atSubscriptedExp

public void atSubscriptedExp(SubscriptedExp p)
定義:
インタフェース HirVisitor 内の atSubscriptedExp

atQualifiedExp

public void atQualifiedExp(QualifiedExp p)
定義:
インタフェース HirVisitor 内の atQualifiedExp

atPointedExp

public void atPointedExp(PointedExp p)
定義:
インタフェース HirVisitor 内の atPointedExp

atFunctionExp

public void atFunctionExp(FunctionExp p)
定義:
インタフェース HirVisitor 内の atFunctionExp

atAssignStmt

public void atAssignStmt(AssignStmt p)
定義:
インタフェース HirVisitor 内の atAssignStmt

atIfStmt

public void atIfStmt(IfStmt p)
定義:
インタフェース HirVisitor 内の atIfStmt

atWhileStmt

public void atWhileStmt(WhileStmt p)
定義:
インタフェース HirVisitor 内の atWhileStmt

atForStmt

public void atForStmt(ForStmt p)
定義:
インタフェース HirVisitor 内の atForStmt

atUntilStmt

public void atUntilStmt(UntilStmt p)
定義:
インタフェース HirVisitor 内の atUntilStmt

atRepeatStmt

public void atRepeatStmt(RepeatStmt p)
定義:
インタフェース HirVisitor 内の atRepeatStmt

atIndexedLoopStmt

public void atIndexedLoopStmt(IndexedLoopStmt p)
定義:
インタフェース HirVisitor 内の atIndexedLoopStmt

atLoopStmt

public void atLoopStmt(LoopStmt p)
定義:
インタフェース HirVisitor 内の atLoopStmt

atLabeledStmt

public void atLabeledStmt(LabeledStmt p)
定義:
インタフェース HirVisitor 内の atLabeledStmt

atBlockStmt

public void atBlockStmt(BlockStmt p)
定義:
インタフェース HirVisitor 内の atBlockStmt

atReturnStmt

public void atReturnStmt(ReturnStmt p)
定義:
インタフェース HirVisitor 内の atReturnStmt

atJumpStmt

public void atJumpStmt(JumpStmt p)
定義:
インタフェース HirVisitor 内の atJumpStmt

atSwitchStmt

public void atSwitchStmt(SwitchStmt p)
定義:
インタフェース HirVisitor 内の atSwitchStmt

atExpStmt

public void atExpStmt(ExpStmt p)
定義:
インタフェース HirVisitor 内の atExpStmt

atPhiExp

public void atPhiExp(PhiExp p)
定義:
インタフェース HirVisitor 内の atPhiExp

atAsmStmt

public void atAsmStmt(AsmStmt p)
定義:
インタフェース HirVisitor 内の atAsmStmt