Interface IJMasterOptimizer
public interface IJMasterOptimizer
A manager of
AST optimizers
. A master optimizer (MO) orchestrates and
executes optimizers. This class is currently not meant to be implemented by third-party code.
Implementation note: the master optimizer may call optimizers repeatedly until no more optimizations are performed.
-
Method Summary
Modifier and TypeMethodDescriptionboolean
add
(IJOptimizer optimizer) Register an optimizer.Retrieve the target AST element to be optimized.boolean
Determine whether safe mode is enabled.int
perform()
Perform optimizations on thetarget
.boolean
remove
(IJOptimizer optimizer) Unregister an optimizer.void
setSafeMode
(boolean enabled) Enable or disable safe mode.
-
Method Details
-
getTarget
IJavaDecompilableElement getTarget()Retrieve the target AST element to be optimized.- Returns:
-
add
Register an optimizer.- Parameters:
optimizer
-- Returns:
-
remove
Unregister an optimizer.- Parameters:
optimizer
-- Returns:
-
setSafeMode
void setSafeMode(boolean enabled) Enable or disable safe mode. In safe mode, the only optimizers that are run are those whosetype
isJOptimizerType.NORMAL
.- Parameters:
enabled
-
-
isSafeMode
boolean isSafeMode()Determine whether safe mode is enabled. In safe mode, the only optimizers that are run are those whosetype
isJOptimizerType.NORMAL
.- Returns:
-
perform
int perform()Perform optimizations on thetarget
.- Returns:
- the number of optimizations performed
-