Interface ICSwitchStm
- All Superinterfaces:
ICCompound,ICConditionalStatement,ICElement,ICGenericBreakable,ICStatement
C AST interface to represent
switch statements.-
Method Summary
Modifier and TypeMethodDescriptiondefault voiddefault voiddefault voiddefault voidaddCase(BigInteger key, ICBlock b) voidaddCase(Collection<BigInteger> keys, ICBlock b) Deep duplication of the element.getCaseBody(BigInteger key) removeCasesFromBlock(ICBlock b, Collection<BigInteger> keys) Remove cases from a specified case-block.voidMethods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICCompound
generateFlatList, insertAt, resetMethods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICConditionalStatement
getBlocks, getConditionalBlocks, getDefaultBlock, hasDefaultBlock, setDefaultBlock, size, sizeWithoutDefaultMethods 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, visitDepthPreMethods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICStatement
getIntermediateOffset, setIntermediateOffset
-
Method Details
-
getSwitchedExpression
ICExpression getSwitchedExpression() -
setSwitchedExpression
-
getCaseKeys
Set<BigInteger> getCaseKeys() -
getCaseBodies
-
getCaseBody
-
getKeysForBlock
-
addCase
-
addCase
-
addCase
-
addCase
-
addCase
-
removeCasesFromBlock
Remove cases from a specified case-block.- Parameters:
b- case-blockkeys- a collection of keys; null means remove all the keys (as well as the case-block)- Returns:
- the list of cases actually removed; null if the case-block does not exist
-
duplicate
ICSwitchStm duplicate()Description copied from interface:ICElementDeep duplication of the element. Sub-elements are duplicated.Note:
ICClass,ICMethod,ICField,ICIdentifier,ICConstant,ICTypeandICLabelare not duplicated.- Specified by:
duplicatein interfaceICCompound- Specified by:
duplicatein interfaceICConditionalStatement- Specified by:
duplicatein interfaceICElement- Specified by:
duplicatein interfaceICGenericBreakable- Specified by:
duplicatein interfaceICStatement
-