|
||||||||||
| 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.SwitchStmtImpl
switch statement class. (by S. Fukuda)
| Field Summary | |
Label |
defaultLabel
|
Label |
endLabel
|
| 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 | |
SwitchStmtImpl()
|
|
SwitchStmtImpl(HirRoot pHirRoot)
|
|
SwitchStmtImpl(HirRoot pHirRoot,
Exp pSelectionExp,
IrList pJumpList,
Label pDefaultLabel,
Stmt pBodyStmt,
Label pEndLabel)
SwitchStmtImpl SwitchStmt -> ( switchCode Exp @ // Case selection expression. |
|
| Method Summary | |
void |
accept(HirVisitor pVisitor)
accept Acceptor used in HIR visitor. |
java.lang.Object |
clone()
clone Override Object.clone in HIR. |
void |
combineWithConditionalExp(Stmt pStmt,
HIR pCond)
Combine pStmt with conditional expression part pCond of control statement so that pStmt should be executed before pCond. |
Stmt |
getBodyStmt()
Gget switch-body statement that contains case statements. |
Const |
getCaseConst(int index)
Get the n-th (head is 0) case constant. |
int |
getCaseCount()
|
Label |
getCaseLabel(int index)
getCaseLabel Get n-th (head is 0) case label. |
LabelNode |
getCaseLabelNode(int index)
getCaseLabelNode Get LabelNode of n-th (head is 0) case label. |
Label |
getDefaultLabel()
Get default label |
LabelNode |
getDefaultLabelNode()
Get default label node |
Label |
getEndLabel()
Get break destination label (switch-end label) of this switch statement. |
Exp |
getSelectionExp()
Get selection expression |
LabeledStmt |
getSwitchEndNode()
Get the switch end node to where break statements jump. |
void |
setSelectionExp(Exp pSelectionExp)
Set selection expression |
| 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, copyPosition, cutLabelLinkOfStmt, deleteThisStmt, getBlockStmt, getFileName, getLabel, getLabelDefList, 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, toString, 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 |
public Label defaultLabel
public Label endLabel
| Constructor Detail |
public SwitchStmtImpl(HirRoot pHirRoot,
Exp pSelectionExp,
IrList pJumpList,
Label pDefaultLabel,
Stmt pBodyStmt,
Label pEndLabel)
public SwitchStmtImpl()
public SwitchStmtImpl(HirRoot pHirRoot)
| Method Detail |
public Exp getSelectionExp()
SwitchStmt
getSelectionExp in interface SwitchStmtpublic void setSelectionExp(Exp pSelectionExp)
SwitchStmt
setSelectionExp in interface SwitchStmtpSelectionExp - Selection expression of this switch statement.public int getCaseCount()
getCaseCount in interface SwitchStmtpublic Const getCaseConst(int index)
SwitchStmt
getCaseConst in interface SwitchStmtpublic Label getCaseLabel(int index)
SwitchStmt
getCaseLabel in interface SwitchStmtpublic LabelNode getCaseLabelNode(int index)
SwitchStmt
getCaseLabelNode in interface SwitchStmtpublic Label getDefaultLabel()
SwitchStmt
getDefaultLabel in interface SwitchStmtpublic LabelNode getDefaultLabelNode()
SwitchStmt
getDefaultLabelNode in interface SwitchStmtpublic Label getEndLabel()
SwitchStmt
getEndLabel in interface SwitchStmtpublic Stmt getBodyStmt()
SwitchStmt
getBodyStmt in interface SwitchStmtpublic LabeledStmt getSwitchEndNode()
SwitchStmt
getSwitchEndNode in interface SwitchStmt
public void combineWithConditionalExp(Stmt pStmt,
HIR pCond)
combineWithConditionalExp in interface StmtcombineWithConditionalExp in class StmtImplpStmt - statement to be executed before pCond.pCond - conditional expression to be combined with pStmt.
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
HIR_Impl
clone in class StmtImpljava.lang.CloneNotSupportedExceptionpublic 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 | |||||||||