|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Object
|
+--coins.ir.hir.HIR_Impl
|
+--coins.ir.hir.StmtImpl
|
+--coins.ir.hir.BlockStmtImpl
Block representing a sequence of statements.
| フィールドの概要 | |
(パッケージプライベート) Stmt |
fLastStmt
|
(パッケージプライベート) SymTable |
fLocalSymTable
|
(パッケージプライベート) boolean |
fSubpBodyFlag
|
| クラス coins.ir.hir.StmtImpl から継承したフィールド |
fMultiBlock, fNextStmt, fPrevStmt |
| クラス coins.ir.hir.HIR_Impl から継承したフィールド |
fAdditionalChild, fChildCount, fChildNode1, fChildNode2, fDbgLevel, fHirAnnex, fOperator, fParentNode, fType, hirRoot, inversionTable, machineParam, sourceLanguage |
| インタフェース coins.ir.hir.HIR から継承したフィールド |
OP_CODE_NAME, OP_CODE_NAME_DENSE |
| インタフェース coins.ir.IR から継承したフィールド |
OP_INF, OP_LIST, OP_PROG, OP_SUBP_DEF |
| コンストラクタの概要 | |
BlockStmtImpl(HirRoot pHirRoot)
BlockStmt Build block statement that make a sequence of statement to be treated as one statement. |
|
BlockStmtImpl(HirRoot pHirRoot,
Stmt pStmtSequence)
|
|
| メソッドの概要 | |
void |
accept(HirVisitor pVisitor)
accept Acceptor used in HIR visitor. |
void |
addBeforeBranchStmt(Stmt pStatement)
addBeforeBranchStmt (##6) If the last statement of this block is a branch statement (jump, if, switch, call, return), then insert pStatement in front of it. |
Stmt |
addFirstStmt(Stmt pStatement)
addFirstStmt Add pStatement as the first statement of this block. |
Stmt |
addLastStmt(Stmt pStatement)
addLastStmt Add pStatement as the last statement of this block. |
java.lang.Object |
clone()
clone Override Object.clone in HIR. |
Stmt |
getFirstStmt()
getFirstStrmt Get the first statement of this block. |
Stmt |
getLastStmt()
getLastStmt Get the last statement of this block. |
boolean |
getSubpBodyFlag()
|
SymTable |
getSymTable()
getSymTable |
void |
replaceFirstStmt(Stmt pStmt)
|
void |
setFirstStmt(Stmt pStmt)
|
void |
setLastStmt(Stmt pStmt)
|
void |
setSubpBodyFlag(boolean pFlag)
|
void |
setSymTable(SymTable pSymTable)
setSymTable Set pSymTable as the local symbol tabel of this BlockStmt. |
java.lang.String |
toString()
toString Get text representation of this node without traversing children. |
| クラス java.lang.Object から継承したメソッド |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| インタフェース coins.ir.IR から継承したメソッド |
addInf, getChild1, getChild2, getInf, getInfList, getParent, getSym, print, print, removeInf |
| インタフェース coins.ir.IR0 から継承したメソッド |
getChild, getChildCount, getIndex, getOperator, setChild |
| インタフェース coins.ir.hir.HIR0 から継承したメソッド |
assignStmt, blockStmt, callStmt, constNode, contentsExp, convExp, copyWithOperands, copyWithOperandsChangingLabels, decayExp, elemNode, exp, exp, expStmt, falseNode, finishHir, forStmt, functionExp, getChildNumber, getFlag, getFlagBox, getNextStmt, getStmtContainingThisNode, getType, hirClone, hirIterator, hirList, hirSeq, ifStmt, intConstNode, irList, isSameAs, jumpStmt, labelDef, labeledStmt, labelNode, pointedExp, print, program, qualifiedExp, repeatStmt, replaceThisNode, returnStmt, setFlag, setIndexNumberToAllNodes, sizeofExp, sizeofExp, subpDefinition, subpNode, subscriptedExp, switchStmt, symNode, trueNode, undecayExp, varNode, whileStmt |
| フィールドの詳細 |
SymTable fLocalSymTable
Stmt fLastStmt
boolean fSubpBodyFlag
| コンストラクタの詳細 |
public BlockStmtImpl(HirRoot pHirRoot)
pHirRoot - instance of HirRoot common to all HIR nodes.
public BlockStmtImpl(HirRoot pHirRoot,
Stmt pStmtSequence)
| メソッドの詳細 |
public SymTable getSymTable()
BlockStmt の記述:
BlockStmt 内の getSymTablepublic void setSymTable(SymTable pSymTable)
BlockStmt の記述:
BlockStmt 内の setSymTablepSymTable - local symbol tabel to be attached to this
block.public Stmt addFirstStmt(Stmt pStatement)
BlockStmt の記述: Add pStatement as the first statement of this block. If this block has already has several statements, this method inserts pStatement in front of the existing statements. If pStatement is null, no statement is added and the current first statement is returned. This method changes statement linkages (linkages get by getNextStmt(), getPreviousStmt(), getParent()). If these linkages are used later, then make a copy (by copyWithOperands()) and use the copy as the parameter.
BlockStmt 内の addFirstStmtpStatement - Statement that was added.
public Stmt addLastStmt(Stmt pStatement)
BlockStmt の記述: Add pStatement as the last statement of this block. If this block has no statement, this method does the same operation as that of addFirstStmt. Successive call of addlastStmt add a sequence of statements to this block in the order of addition. If this block has already labeled statement as the last statement where the label of the last statement is either RETURN_POINT_LABEL or LOOP_STEP_LABEL, then pStatement is inserted in front of the last labeled statement. If pStatement is null, no statement is added and the current last statement is returned. This method changes statement linkages (linkages get by getNextStmt(), getPreviousStmt(), getParent()). If these linkages are used later, then make a copy (by copyWithOperands()) and use the copy as the parameter.
BlockStmt 内の addLastStmtpStatement - Statement that was added.
public void addBeforeBranchStmt(Stmt pStatement)
BlockStmt の記述:
BlockStmt 内の addBeforeBranchStmtpStatement - Statement that was added.public Stmt getFirstStmt()
BlockStmt の記述:
Get the first statement of this block.
If this block has no statement, then null is returned.
After getting the first statement, successive call of
getNextStmt() will traverse all statements in this block.
for (Stmt lStmt = lBBlock.getFirstStmt(); lStmt != null;
lStmt = lStmt.getNextStmt()) { ...... }
BlockStmt 内の getFirstStmtpublic Stmt getLastStmt()
BlockStmt の記述:
BlockStmt 内の getLastStmtpublic void setFirstStmt(Stmt pStmt)
public void setLastStmt(Stmt pStmt)
public void replaceFirstStmt(Stmt pStmt)
public boolean getSubpBodyFlag()
BlockStmt 内の getSubpBodyFlagpublic void setSubpBodyFlag(boolean pFlag)
BlockStmt 内の setSubpBodyFlag
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
HIR_Impl の記述:
StmtImpl 内の clonejava.lang.CloneNotSupportedExceptionpublic void accept(HirVisitor pVisitor)
HIR0 の記述:
HIR0 内の acceptHIR_Impl 内の acceptpVisitor - HirVisitorpublic java.lang.String toString()
HIR の記述:
HIR 内の toStringHIR_Impl 内の toString
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||