Class ControlFlowNode
java.lang.Object
com.strobel.assembler.flowanalysis.ControlFlowNode
- All Implemented Interfaces:
Comparable<ControlFlowNode>
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionControlFlowNode(int blockIndex, int offset, ControlFlowNodeType nodeType) ControlFlowNode(int blockIndex, ExceptionHandler exceptionHandler, ControlFlowNode endFinallyNode) ControlFlowNode(int blockIndex, Instruction start, Instruction end) -
Method Summary
Modifier and TypeMethodDescriptionintfinal booleandominates(ControlFlowNode node) final intfinal ControlFlowNodefinal Set<ControlFlowNode> final List<ControlFlowNode> final InstructiongetEnd()final ControlFlowNodefinal ExceptionHandlerfinal ControlFlowNodefinal List<ControlFlowEdge> final Iterable<Instruction> final ControlFlowNodeTypefinal intfinal List<ControlFlowEdge> final Iterable<ControlFlowNode> final InstructiongetStart()final Iterable<ControlFlowNode> final Objectfinal booleanfinal booleanfinal booleanprecedes(ControlFlowNode other) final voidsetCopyFrom(ControlFlowNode copyFrom) final voidsetEnd(Instruction end) final voidsetExceptionHandler(ExceptionHandler exceptionHandler) final voidsetImmediateDominator(ControlFlowNode immediateDominator) final voidsetStart(Instruction start) final voidsetUserData(Object userData) final voidsetVisited(boolean visited) final booleansucceeds(ControlFlowNode other) final StringtoString()final voidtraversePostOrder(Function<ControlFlowNode, Iterable<ControlFlowNode>> children, Consumer<ControlFlowNode> visitAction) final voidtraversePreOrder(Function<ControlFlowNode, Iterable<ControlFlowNode>> children, Consumer<ControlFlowNode> visitAction)
-
Field Details
-
REACHABLE_PREDICATE
-
-
Constructor Details
-
ControlFlowNode
-
ControlFlowNode
-
ControlFlowNode
public ControlFlowNode(int blockIndex, ExceptionHandler exceptionHandler, ControlFlowNode endFinallyNode)
-
-
Method Details
-
getBlockIndex
public final int getBlockIndex() -
getOffset
public final int getOffset() -
getNodeType
-
getEndFinallyNode
-
getDominatorTreeChildren
-
getDominanceFrontier
-
getIncoming
-
getOutgoing
-
isVisited
public final boolean isVisited() -
isReachable
public final boolean isReachable() -
getCopyFrom
-
getImmediateDominator
-
getStart
-
getEnd
-
getExceptionHandler
-
getUserData
-
setVisited
public final void setVisited(boolean visited) -
setCopyFrom
-
setImmediateDominator
-
setStart
-
setEnd
-
setExceptionHandler
-
setUserData
-
succeeds
-
precedes
-
getPredecessors
-
getSuccessors
-
getInstructions
-
traversePreOrder
public final void traversePreOrder(Function<ControlFlowNode, Iterable<ControlFlowNode>> children, Consumer<ControlFlowNode> visitAction) -
traversePostOrder
public final void traversePostOrder(Function<ControlFlowNode, Iterable<ControlFlowNode>> children, Consumer<ControlFlowNode> visitAction) -
dominates
-
toString
-
compareTo
- Specified by:
compareToin interfaceComparable<ControlFlowNode>
-