coins.ffront
クラス ArithIfStmt

java.lang.Object
  |
  +--coins.ffront.FStmt
        |
        +--coins.ffront.ArithIfStmt
すべての実装インタフェース:
Node

public class ArithIfStmt
extends FStmt

Arithmetic IF statement


フィールドの概要
 
クラス coins.ffront.FStmt から継承したフィールド
defLabel, fDeclMgr, fESMgr, fHir, fHirUtil, fLine, fSymTable, fTypeUtil, generatedStmts, hir, stmt
 
コンストラクタの概要
ArithIfStmt(Node pNode, Token pMinusLab, Token pZeroLab, Token pPlusLab, int line, FirToHir pfHir)
           
 
メソッドの概要
 void print(int level, java.lang.String spaces)
           
 void process()
          Translate IF (e) 10, 20, 30 to v = e; if (v<0) goto L_10; if (v==0) goto L_20; else goto L_30;
 java.lang.String toString()
           
 
クラス coins.ffront.FStmt から継承したメソッド
addGeneratedStmt, addGeneratedStmtFirst, addLabel, addResultTo, dp, getLabelString, getResult, hasNotLabel, makeArgAddr, makeExp, mergeSymTable, preprocess, setLineAndFileInfo, setSymTable
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

ArithIfStmt

public ArithIfStmt(Node pNode,
                   Token pMinusLab,
                   Token pZeroLab,
                   Token pPlusLab,
                   int line,
                   FirToHir pfHir)
メソッドの詳細

print

public void print(int level,
                  java.lang.String spaces)
定義:
インタフェース Node 内の print
オーバーライド:
クラス FStmt 内の print

toString

public java.lang.String toString()
定義:
インタフェース Node 内の toString
オーバーライド:
クラス FStmt 内の toString

process

public void process()
Translate IF (e) 10, 20, 30 to v = e; if (v<0) goto L_10; if (v==0) goto L_20; else goto L_30;

オーバーライド:
クラス FStmt 内の process