Package com.strobel.decompiler.ast
Class AstOptimizer.JoinBranchConditionsOptimization
- java.lang.Object
-
- com.strobel.decompiler.ast.AstOptimizer.AbstractBasicBlockOptimization
-
- com.strobel.decompiler.ast.AstOptimizer.AbstractBranchBlockOptimization
-
- com.strobel.decompiler.ast.AstOptimizer.JoinBranchConditionsOptimization
-
- All Implemented Interfaces:
AstOptimizer.BasicBlockOptimization
- Enclosing class:
- AstOptimizer
private static final class AstOptimizer.JoinBranchConditionsOptimization extends AstOptimizer.AbstractBranchBlockOptimization
-
-
Field Summary
-
Fields inherited from class com.strobel.decompiler.ast.AstOptimizer.AbstractBranchBlockOptimization
expression, label1, label2
-
Fields inherited from class com.strobel.decompiler.ast.AstOptimizer.AbstractBasicBlockOptimization
context, EMPTY_BLOCK, labelGlobalRefCount, labelToBasicBlock, method, resolver
-
-
Constructor Summary
Constructors Constructor Description JoinBranchConditionsOptimization(DecompilerContext context, Block method)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
run(java.util.List<Node> body, BasicBlock branchBlock, Expression branchCondition, Label thenLabel, Label elseLabel, boolean negate)
private boolean
runCore(java.util.List<Node> body, BasicBlock branchBlock, Expression branchCondition, Label thenLabel, Label elseLabel, Expression elseCondition, boolean negateFirst, Label elseThenLabel, Label elseElseLabel, boolean negateSecond)
-
Methods inherited from class com.strobel.decompiler.ast.AstOptimizer.AbstractBranchBlockOptimization
run
-
-
-
-
Constructor Detail
-
JoinBranchConditionsOptimization
public JoinBranchConditionsOptimization(DecompilerContext context, Block method)
-
-
Method Detail
-
run
protected boolean run(java.util.List<Node> body, BasicBlock branchBlock, Expression branchCondition, Label thenLabel, Label elseLabel, boolean negate)
- Specified by:
run
in classAstOptimizer.AbstractBranchBlockOptimization
-
runCore
private boolean runCore(java.util.List<Node> body, BasicBlock branchBlock, Expression branchCondition, Label thenLabel, Label elseLabel, Expression elseCondition, boolean negateFirst, Label elseThenLabel, Label elseElseLabel, boolean negateSecond)
-
-