Interface ICConditionalStatement
- All Superinterfaces:
ICCompound
,ICElement
,ICStatement
- All Known Subinterfaces:
ICIfStm
,ICSwitchStm
Base class for CAST conditional statements (if, switch).
-
Method Summary
Modifier and TypeMethodDescriptionDeep duplication of the element.Return a copy of theCBlock
conditional blocks with default block (if it exists).Return a copy of theCBlock
conditional blocks.Return the default block, or null if no default block is definedboolean
Determine whether the conditional statement has a default block.void
Set the default block of code.int
size()
Return the number of blocks (including default block).int
Return the number of blocks, NOT counting the default block if there is one.Methods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICCompound
generateFlatList, insertAt, reset
Methods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICElement
addPhysicalOffset, addPhysicalOffsets, evaluate, format, generate, getData, getElementType, getPhysicalOffset, getPhysicalOffsets, getSubElements, replaceSubElement, setData, setPhysicalOffsets, toString, visitDepthPost, visitDepthPost, visitDepthPost, visitDepthPre, visitDepthPre, visitDepthPre
Methods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICStatement
getIntermediateOffset, setIntermediateOffset
-
Method Details
-
getDefaultBlock
ICBlock getDefaultBlock()Return the default block, or null if no default block is defined- Returns:
-
setDefaultBlock
Set the default block of code.- Parameters:
b
- optional block, set to null to remove the default block
-
hasDefaultBlock
boolean hasDefaultBlock()Determine whether the conditional statement has a default block.- Returns:
- true if the conditional statement has an else block
-
getConditionalBlocks
Return a copy of theCBlock
conditional blocks. The default block is not included.- Returns:
-
getBlocks
Return a copy of theCBlock
conditional blocks with default block (if it exists).- Specified by:
getBlocks
in interfaceICCompound
- Returns:
-
size
int size()Return the number of blocks (including default block).- Returns:
- the number of blocks
-
sizeWithoutDefault
int sizeWithoutDefault()Return the number of blocks, NOT counting the default block if there is one.- Returns:
-
duplicate
ICConditionalStatement duplicate()Description copied from interface:ICElement
Deep duplication of the element. Sub-elements are duplicated.Note:
ICClass
,ICMethod
,ICField
,ICIdentifier
,ICConstant
,ICType
andICLabel
are not duplicated.- Specified by:
duplicate
in interfaceICCompound
- Specified by:
duplicate
in interfaceICElement
- Specified by:
duplicate
in interfaceICStatement
-