| java.lang.Object | |||||
| ↳ | com.pnfsoftware.jeb.core.AbstractPlugin | ||||
| ↳ | com.pnfsoftware.jeb.core.units.code.asm.decompiler.opt.AbstractOptimizer<T extends com.pnfsoftware.jeb.core.units.code.asm.decompiler.opt.IOptimizerTarget> | ||||
| ↳ | com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt.AbstractCOptimizer | ||||
| ↳ | com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt.AbstractCBlockOptimizer | ||||
| ↳ | com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt.AbstractCElementOptimizer | ||||
Specialized base optimizer for C elements. Each element contained in the AST method is provided
to optimizeElement(ICElement, ICElement)
|
[Expand]
Inherited Constants | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From interface
com.pnfsoftware.jeb.core.units.code.asm.decompiler.opt.IOptimizer
| |||||||||||
|
[Expand]
Inherited Fields | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt.AbstractCOptimizer
| |||||||||||
From class
com.pnfsoftware.jeb.core.units.code.asm.decompiler.opt.AbstractOptimizer
| |||||||||||
| Public Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
AbstractCElementOptimizer()
Same as
this(false). | |||||||||||
| AbstractCElementOptimizer(boolean innerReplacement) | |||||||||||
| Protected Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| final int |
optimizeBlock(ICBlock b)
Process the block.
| ||||||||||
| abstract ICElement |
optimizeElement(ICElement e, ICElement parent)
Optimize an element.
| ||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt.AbstractCBlockOptimizer
| |||||||||||
From class
com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt.AbstractCOptimizer
| |||||||||||
From class
com.pnfsoftware.jeb.core.units.code.asm.decompiler.opt.AbstractOptimizer
| |||||||||||
From class
com.pnfsoftware.jeb.core.AbstractPlugin
| |||||||||||
From class
java.lang.Object
| |||||||||||
From interface
com.pnfsoftware.jeb.core.IPlugin
| |||||||||||
From interface
com.pnfsoftware.jeb.core.units.code.asm.decompiler.opt.IOptimizer
| |||||||||||
| innerReplacement | if false, parent.replaceSubElement(elt, new_elt) will be
called after a successful optimization
(optimizeElement(ICElement, ICElement) returned non-null)
|
|---|
Process the block. Sub-classes should not override the default implementation.
| b | a block of statements |
|---|
Optimize an element. Sub-classes must implement this method
| e | input element to be optimized |
|---|---|
| parent | the parent of the input element |
innerReplacement=true was provided to the constructor, this return value, if
non-null, must be the input element itself)