Class SwitchStatement
- java.lang.Object
-
- org.jetbrains.java.decompiler.modules.decompiler.stats.Statement
-
- org.jetbrains.java.decompiler.modules.decompiler.stats.SwitchStatement
-
- All Implemented Interfaces:
IMatchable
public final class SwitchStatement extends Statement
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.jetbrains.java.decompiler.modules.decompiler.stats.Statement
Statement.EdgeDirection, Statement.LastBasicType, Statement.StatementType
-
Nested classes/interfaces inherited from interface org.jetbrains.java.decompiler.struct.match.IMatchable
IMatchable.MatchProperties
-
-
Field Summary
-
Fields inherited from class org.jetbrains.java.decompiler.modules.decompiler.stats.Statement
containsMonitorExit, continueSet, exprents, first, id, isLastAthrow, isMonitorEnter, labelEdges, lastBasicType, parent, post, STATEDGE_ALL, STATEDGE_DIRECT_ALL, stats, type, varDefinitions
-
-
Method Summary
-
Methods inherited from class org.jetbrains.java.decompiler.modules.decompiler.stats.Statement
addEdgeInternal, addLabeledEdge, addPredecessor, addSuccessor, buildContinueSet, buildMonitorFlags, changeEdgeNode, changeEdgeType, clearTempInformation, collapseNodesToStatement, containsMonitorExit, containsMonitorExitOrAthrow, containsStatement, containsStatementById, containsStatementStrict, containsStatementStrictById, findObject, getAllPredecessorEdges, getAllSuccessorEdges, getBasichead, getContinueSet, getExprents, getFirst, getFirstSuccessor, getLabelEdges, getLastBasicType, getNeighbours, getNeighboursSet, getOffset, getParent, getPost, getPostReversePostOrderList, getPostReversePostOrderList, getPredecessorEdges, getReversePostOrderList, getReversePostOrderList, getStats, getSuccessorEdges, getSuccessorEdgeView, getTopParent, getVarDefinitions, hasAnySuccessor, hasBasicSuccEdge, hasSuccessor, isCopied, isLabeled, isMonitorEnter, markMonitorexitDead, match, removeAllSuccessors, removeEdgeInternal, removePredecessor, removeSuccessor, replaceWith, replaceWithEmpty, setAllParent, setCopied, setExprents, setFirst, setParent, toJava, toString
-
-
-
-
Method Detail
-
toJava
public TextBuffer toJava(int indent)
-
findCaseBranchContaining
public Statement findCaseBranchContaining(int id)
-
initExprents
public void initExprents()
- Overrides:
initExprentsin classStatement
-
getSequentialObjects
public java.util.List<java.lang.Object> getSequentialObjects()
- Overrides:
getSequentialObjectsin classStatement
-
isPattern
public boolean isPattern()
-
getImplicitlyDefinedVars
public java.util.List<VarExprent> getImplicitlyDefinedVars()
Description copied from class:StatementGets the implicitly defined variables in this statement.- Overrides:
getImplicitlyDefinedVarsin classStatement- Returns:
- A list of
VarExprents that are implicitly defined. Can be null or empty if none exist.
-
replaceExprent
public void replaceExprent(Exprent oldexpr, Exprent newexpr)
- Overrides:
replaceExprentin classStatement
-
replaceStatement
public void replaceStatement(Statement oldstat, Statement newstat)
- Overrides:
replaceStatementin classStatement
-
getSimpleCopy
public Statement getSimpleCopy()
- Overrides:
getSimpleCopyin classStatement
-
initSimpleCopy
public void initSimpleCopy()
- Overrides:
initSimpleCopyin classStatement
-
getStartEndRange
public StartEndPair getStartEndRange()
- Overrides:
getStartEndRangein classStatement
-
sortEdgesAndNodes
public void sortEdgesAndNodes()
-
getHeadexprentList
public java.util.List<Exprent> getHeadexprentList()
-
getHeadexprent
public Exprent getHeadexprent()
-
getCaseEdges
public java.util.List<java.util.List<StatEdge>> getCaseEdges()
-
getCaseStatements
public java.util.List<Statement> getCaseStatements()
-
getDefaultEdge
public StatEdge getDefaultEdge()
-
getCaseValues
public java.util.List<java.util.List<Exprent>> getCaseValues()
-
isPhantom
public boolean isPhantom()
-
setPhantom
public void setPhantom(boolean phantom)
-
getCaseGuards
public java.util.List<Exprent> getCaseGuards()
-
scopeCaseStatement
public void scopeCaseStatement(Statement stat)
-
-