|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcoins.ir.hir.HIR_Impl
coins.ir.hir.StmtImpl
coins.ir.hir.LabeledStmtImpl
LabeledStmtImpl Labeled statement class
| Field Summary | |
protected Sym |
fFileNameSym
|
protected int |
fLineNumber
|
| Fields inherited from class coins.ir.hir.StmtImpl |
fMultiBlock, fNextStmt, fPrevStmt |
| Fields inherited from class coins.ir.hir.HIR_Impl |
fAdditionalChild, fChildCount, fChildNode1, fChildNode2, fDbgLevel, fHirAnnex, fOperator, fParentNode, fType, hirRoot, inversionTable, machineParam, sourceLanguage |
| Fields inherited from interface coins.ir.hir.HIR |
OP_CODE_NAME, OP_CODE_NAME_DENSE |
| Fields inherited from interface coins.ir.IR |
OP_INF, OP_LIST, OP_PROG, OP_SUBP_DEF |
| Constructor Summary | |
LabeledStmtImpl(HirRoot pHirRoot,
Label pLabel,
Stmt pStmt)
|
|
| Method Summary | |
void |
accept(HirVisitor pVisitor)
accept Acceptor used in HIR visitor. |
java.lang.Object |
clone()
deleteThisStmt Delete labels defined by this statement from the label definition list of the current subprogram and then delete this statement. |
Stmt |
deleteLabel(Label pLabel)
deleteLabel |
LabelNode |
explicitLabelReference()
explicitLabelReference Get a LabelNode refering explicitly a label attached to this statement. |
Label |
getLabel()
getLabel Get the label attached to this statement. |
IrList |
getLabelDefList()
|
Stmt |
getStmt()
|
void |
merge(LabeledStmt from)
Merging of LabeledStmt. |
void |
replaceLabelNodesReferingThisStmtToNewOne(Label pNewLabel)
replaceLabelNodesReferingThisStmtToNewOne Replace each LabelNode that refers a label defined by this statement to a LabelNode having pNewLabel. |
void |
setLabelDefList(IrList pLabelDefList)
Set thte label definition list of this statement. |
void |
setStmt(Stmt pStmt)
Set the statement part of this labeled statement. |
java.lang.String |
toString()
toString Get text representation of this node without traversing children. |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface coins.ir.hir.Stmt |
addNextStmt, ancestorControlStmtOfConditionalExp, attachLabel, attachLabelAsFirstOne, combineStmt, combineWithConditionalExp, copyPosition, cutLabelLinkOfStmt, deleteThisStmt, getBlockStmt, getFileName, getLabeledStmt, getLineNumber, getPreviousStmt, getUpperStmt, insertPreviousStmt, insertPreviousStmt, isBranchStmt, isMultiBlock, isolateThisStmt, replaceThisStmtWith, setFileName, setLineNumber |
| Methods inherited from interface coins.ir.hir.HIR |
addrExp, asmStmt, checkLinkage, conditionalExp, contains, copyInfListFrom, cutParentLink, exp, expList, expRepeat, forStmt, getExpId, getFlowAnalSym, getIndentSpace, getInfString, getIrName, getSourceNode, getSourceNode1, getSourceNode2, getSymOrExpId, getWork, hirNodeClone, hirSeq, hirSeq, indexedLoopStmt, indexedLoopStmt, infStmt, infStmt, intConstNode, irList, isEmpty, isStmt, isTree, nullNode, nullStmt, offsetConstNode, phiExp, repeatStmt, replaceSource, replaceSource1, replaceSource2, returnStmt, setChild1, setChild2, setChildren, setChildren, setDataStmt, setIndex, setIndexNumberToAllNodes, setParent, setType, setWork, subpDefinition, subpIterator, subscriptedExp, toStringDetail, toStringShort, toStringWithChildren, undecayExp, undecayExp, undecayExp, whileStmt |
| Methods inherited from interface coins.ir.IR |
addInf, getChild1, getChild2, getInf, getInfList, getParent, getSym, print, print, removeInf |
| Methods inherited from interface coins.ir.IR0 |
getChild, getChildCount, getIndex, getOperator, setChild |
| Methods inherited from interface 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 |
| Field Detail |
protected Sym fFileNameSym
protected int fLineNumber
| Constructor Detail |
public LabeledStmtImpl(HirRoot pHirRoot,
Label pLabel,
Stmt pStmt)
| Method Detail |
public IrList getLabelDefList()
getLabelDefList in interface StmtgetLabelDefList in class StmtImplpublic void setLabelDefList(IrList pLabelDefList)
LabeledStmt
setLabelDefList in interface LabeledStmtpLabelDefList - label definition list to be set.public Label getLabel()
Stmt
getLabel in interface StmtgetLabel in class StmtImplpublic Stmt getStmt()
getStmt in interface LabeledStmtpublic void setStmt(Stmt pStmt)
LabeledStmt
setStmt in interface LabeledStmtpStmt - Statement to be set.public Stmt deleteLabel(Label pLabel)
LabeledStmtDelete LabelDef having pLabel as its label from the list of LabelDef nodes of this statement. If no label remains after deletion, this statement is changed to a statement without label. If no label remains and statement body is either null or NullNode, then this statement is deleted and null is returned.
deleteLabel in interface LabeledStmtpLabel - label to be deleted.
public void replaceLabelNodesReferingThisStmtToNewOne(Label pNewLabel)
LabeledStmt
replaceLabelNodesReferingThisStmtToNewOne in interface LabeledStmtpNewLabel - Label to which refering LabelNodes are to be changed.public void merge(LabeledStmt from)
LabeledStmt
merge in interface LabeledStmtfrom - LabeledStmtpublic LabelNode explicitLabelReference()
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
clone in class StmtImpljava.lang.CloneNotSupportedExceptionpublic java.lang.String toString()
HIR
toString in interface HIRtoString in class HIR_Implpublic void accept(HirVisitor pVisitor)
HIR0
accept in interface HIR0accept in class HIR_Impl
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||