Package jadx.core.dex.nodes
Class BlockNode
- java.lang.Object
-
- jadx.core.dex.attributes.AttrNode
-
- jadx.core.dex.nodes.BlockNode
-
- All Implemented Interfaces:
IAttributeNode,IBlock,IContainer,java.lang.Comparable<BlockNode>
public final class BlockNode extends AttrNode implements IBlock, java.lang.Comparable<BlockNode>
-
-
Constructor Summary
Constructors Constructor Description BlockNode(int cid, int pos, int offset)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddDominatesOn(BlockNode block)java.lang.StringbaseString()Unique id for use in 'toString()' methodintcompareTo(@NotNull BlockNode o)booleanequals(java.lang.Object obj)intgetCId()java.util.List<BlockNode>getCleanSuccessors()java.util.BitSetgetDomFrontier()java.util.List<BlockNode>getDominatesOn()java.util.BitSetgetDoms()Dominators of this node (exclude itself)intgetId()Deprecated.BlockNodegetIDom()Immediate dominatorjava.util.List<InsnNode>getInstructions()BlockNodegetIPostDom()intgetPos()java.util.BitSetgetPostDoms()java.util.List<BlockNode>getPredecessors()intgetStartOffset()java.util.List<BlockNode>getSuccessors()inthashCode()booleanisDominator(BlockNode block)Check if 'block' dominated on this nodebooleanisEmpty()booleanisMthExitBlock()booleanisReturnBlock()booleanisSynthetic()voidlock()voidsetDomFrontier(java.util.BitSet domFrontier)voidsetDoms(java.util.BitSet doms)voidsetIDom(BlockNode idom)voidsetIPostDom(BlockNode iPostDom)voidsetPostDoms(java.util.BitSet postDoms)java.lang.StringtoString()static voidupdateBlockPositions(java.util.List<BlockNode> blocks)voidupdateCleanSuccessors()-
Methods inherited from class jadx.core.dex.attributes.AttrNode
add, addAttr, addAttr, addAttr, addAttrs, clearAttributes, contains, contains, copyAttributeFrom, copyAttributesFrom, get, getAll, getAnnotation, getAttributesString, getAttributesStringsList, isAttrStorageEmpty, remove, remove, removeAttr, rewriteAttributeFrom, unloadAttributes
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jadx.core.dex.attributes.IAttributeNode
add, addAttr, addAttr, addAttrs, clearAttributes, contains, contains, copyAttributeFrom, copyAttributesFrom, get, getAll, getAnnotation, getAttributesString, getAttributesStringsList, isAttrStorageEmpty, remove, remove, removeAttr, rewriteAttributeFrom
-
-
-
-
Method Detail
-
getCId
public int getCId()
-
getId
@Deprecated public int getId()
Deprecated.Deprecated. UsegetPos().
-
getPos
public int getPos()
-
getPredecessors
public java.util.List<BlockNode> getPredecessors()
-
getSuccessors
public java.util.List<BlockNode> getSuccessors()
-
getCleanSuccessors
public java.util.List<BlockNode> getCleanSuccessors()
-
updateCleanSuccessors
public void updateCleanSuccessors()
-
updateBlockPositions
public static void updateBlockPositions(java.util.List<BlockNode> blocks)
-
lock
public void lock()
-
getInstructions
public java.util.List<InsnNode> getInstructions()
- Specified by:
getInstructionsin interfaceIBlock
-
getStartOffset
public int getStartOffset()
-
isDominator
public boolean isDominator(BlockNode block)
Check if 'block' dominated on this node
-
getDoms
public java.util.BitSet getDoms()
Dominators of this node (exclude itself)
-
setDoms
public void setDoms(java.util.BitSet doms)
-
getPostDoms
public java.util.BitSet getPostDoms()
-
setPostDoms
public void setPostDoms(java.util.BitSet postDoms)
-
getDomFrontier
public java.util.BitSet getDomFrontier()
-
setDomFrontier
public void setDomFrontier(java.util.BitSet domFrontier)
-
getIDom
public BlockNode getIDom()
Immediate dominator
-
setIDom
public void setIDom(BlockNode idom)
-
getIPostDom
public BlockNode getIPostDom()
-
setIPostDom
public void setIPostDom(BlockNode iPostDom)
-
getDominatesOn
public java.util.List<BlockNode> getDominatesOn()
-
addDominatesOn
public void addDominatesOn(BlockNode block)
-
isSynthetic
public boolean isSynthetic()
-
isReturnBlock
public boolean isReturnBlock()
-
isMthExitBlock
public boolean isMthExitBlock()
-
isEmpty
public boolean isEmpty()
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
compareTo
public int compareTo(@NotNull @NotNull BlockNode o)- Specified by:
compareToin interfacejava.lang.Comparable<BlockNode>
-
baseString
public java.lang.String baseString()
Description copied from interface:IContainerUnique id for use in 'toString()' method- Specified by:
baseStringin interfaceIContainer
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-