Uses of Interface
com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICBlock
Packages that use ICBlock
Package
Description
C AST types, used in AST documents provided by the
source units
generated by gendec.Types specific to
gendec's AST optimizers.-
Uses of ICBlock in com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast
Methods in com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast that return ICBlockModifier and TypeMethodDescriptionICBlock.add(ICStatement stm) ICBlock.addAll(ICStatement... stms) ICElementFactory.createBlock()ICElementFactory.createBlock(ICStatement stm) ICElementFactory.createBlock(ICStatement... stms) ICBlock.duplicate()ICGenericLoop.getBody()ICMethod.getBody()ICIfStm.getBranchBody(int index) ICSwitchStm.getCaseBody(BigInteger key) ICConditionalStatement.getDefaultBlock()Return the default block, or null if no default block is defineddefault ICBlockICIfStm.removeDefaultBlock()Remove the default block, if there one, and return it.Methods in com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast that return types with arguments of type ICBlockModifier and TypeMethodDescriptionICCompound.getBlocks()Retrieve the list of blocks (not elements) that are used to define that compound element.ICConditionalStatement.getBlocks()Return a copy of theCBlockconditional blocks with default block (if it exists).ICSwitchStm.getCaseBodies()ICConditionalStatement.getConditionalBlocks()Return a copy of theCBlockconditional blocks.Methods in com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast with parameters of type ICBlockModifier and TypeMethodDescriptionvoidICIfStm.addBranch(ICPredicate p, ICBlock b) Add an alternative block (if or else-if) to this element.default voiddefault voiddefault voiddefault voidICSwitchStm.addCase(BigInteger key, ICBlock b) voidICSwitchStm.addCase(Collection<BigInteger> keys, ICBlock b) ICElementFactory.createDoWhileStm(ICBlock b, ICPredicate p) ICElementFactory.createForLoop(ICStatement pre, ICPredicate p, ICStatement post, ICBlock b) ICElementFactory.createIfStm(ICPredicate p, ICBlock b) ICElementFactory.createWhileStm(ICPredicate p, ICBlock b) static ICStatementCUtil.getFirstRealStatement(ICBlock b, int i) Get the next "real" statement to be executed in the block, starting at the given index inclusively.ICSwitchStm.getKeysForBlock(ICBlock b) voidInsert all statements of a source block into this block.voidICIfStm.insertBranch(int index, ICPredicate p, ICBlock b) ICSwitchStm.removeCasesFromBlock(ICBlock b, Collection<BigInteger> keys) Remove cases from a specified case-block.voidvoidICIfStm.setBranchBody(int index, ICBlock b) voidICConditionalStatement.setDefaultBlock(ICBlock b) Set the default block of code.voidICIfStm.setDefaultBlock(ICBlock b) static booleanCUtil.visitICStatementDepthPost(ICVisitor visitor, ICBlock elt, int from, CVisitResults results) -
Uses of ICBlock in com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt
Methods in com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt with parameters of type ICBlockModifier and TypeMethodDescriptionprotected ICStatementAbstractCBlockOptimizer.getNextSiblingStatement(int statementIndex, ICBlock block, ICStatement blockNextSiblingStm) protected abstract intAbstractCBlockOptimizer.optimizeBlock(ICBlock b) Attempt to optimize CBlock.protected intAbstractCBlockOptimizer.optimizeBlock(ICBlock b, ICCompound parent, ICStatement blockNextStm) Attempt to optimize CBlock, with some contextual information provided.protected final intAbstractCElementOptimizer.optimizeBlock(ICBlock b) Process the block.protected intAbstractCStatementOptimizer.optimizeBlock(ICBlock b) The default implementation iterates over each statement of the block and callsAbstractCStatementOptimizer.optimizeStatement(ICStatement).