coins.ffront
クラス BlockIfStmt
java.lang.Object
|
+--coins.ffront.FStmt
|
+--coins.ffront.BlockIfStmt
- すべての実装インタフェース:
- Node
- public class BlockIfStmt
- extends FStmt
Block IF statement:
block_if_part opt_else_if_parts opt_else_part END_IF
クラス coins.ffront.FStmt から継承したフィールド |
defLabel, fDeclMgr, fESMgr, fHir, fHirUtil, fLine, fSymTable, fTypeUtil, generatedStmts, hir, stmt |
メソッドの概要 |
void |
print(int level,
java.lang.String spaces)
|
void |
process()
Translate block if statement
IF (e1) THEN // fIfPart.left
s1 // fIfPart.right
ELSE IF (e2) THEN // fOptElseIfs.get(0).left
s2 // fOptElseIfs.get(0).right
ELSE IF (e3) THEN // fOptElseIfs.get(1).left
s3 // fOptElseIfs.get(1).right
ELSE
s4 // fOptElse
END IF
to
if (e1) s1
else { if (e2) s2
else { if (e3) s3
else s4 }
}
|
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 |
fThenPart
Stmt fThenPart
fElsePart
Stmt fElsePart
BlockIfStmt
public BlockIfStmt(Node pIfPart,
FirList pOptElseIfs,
FirList pOptElse,
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 block if statement
IF (e1) THEN // fIfPart.left
s1 // fIfPart.right
ELSE IF (e2) THEN // fOptElseIfs.get(0).left
s2 // fOptElseIfs.get(0).right
ELSE IF (e3) THEN // fOptElseIfs.get(1).left
s3 // fOptElseIfs.get(1).right
ELSE
s4 // fOptElse
END IF
to
if (e1) s1
else { if (e2) s2
else { if (e3) s3
else s4 }
}
- オーバーライド:
- クラス
FStmt
内の process