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 TypeMethodDescriptionbooleanadd(IJOptimizer optimizer) Register an optimizer.Retrieve the target AST element to be optimized.booleanDetermine whether safe mode is enabled.intperform()Perform optimizations on thetarget.booleanremove(IJOptimizer optimizer) Unregister an optimizer.voidsetSafeMode(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 whosetypeisJOptimizerType.NORMAL.- Parameters:
enabled-
-
isSafeMode
boolean isSafeMode()Determine whether safe mode is enabled. In safe mode, the only optimizers that are run are those whosetypeisJOptimizerType.NORMAL.- Returns:
-
perform
int perform()Perform optimizations on thetarget.- Returns:
- the number of optimizations performed
-