Package com.strobel.decompiler.ast
Class AstBuilder.FinallyInlining
- java.lang.Object
-
- com.strobel.decompiler.ast.AstBuilder.FinallyInlining
-
- Enclosing class:
- AstBuilder
private static final class AstBuilder.FinallyInlining extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<ControlFlowNode>
_allFinallyNodes
private MethodBody
_body
private ControlFlowGraph
_cfg
private java.util.List<ExceptionHandler>
_exceptionHandlers
private java.util.Map<ExceptionHandler,AstBuilder.HandlerInfo>
_handlerMap
private InstructionCollection
_instructions
private java.util.Map<Instruction,ControlFlowNode>
_nodeMap
private Function<Instruction,Instruction>
_previous
private java.util.Set<ControlFlowNode>
_processedNodes
private java.util.Set<Instruction>
_removed
-
Constructor Summary
Constructors Modifier Constructor Description private
FinallyInlining(MethodBody body, InstructionCollection instructions, java.util.List<ExceptionHandler> handlers, java.util.Set<Instruction> removedInstructions)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.util.Set<ControlFlowNode>
collectNodes(AstBuilder.HandlerInfo handlerInfo)
private static void
dumpHandlerNodes(ExceptionHandler handler, java.util.List<ControlFlowNode> tryNodes, java.util.List<ControlFlowNode> handlerNodes)
private void
preProcess()
private Instruction
previous(Instruction i)
private void
processFinally(ExceptionHandler handler)
private void
processNodes(AstBuilder.HandlerInfo handlerInfo, Instruction first, Instruction last, int instructionCount, java.util.Set<ControlFlowNode> toProcess, java.util.Set<ControlFlowNode> forbiddenNodes)
(package private) static void
run(MethodBody body, InstructionCollection instructions, java.util.List<ExceptionHandler> handlers, java.util.Set<Instruction> removedInstructions)
private void
runCore()
-
-
-
Field Detail
-
_body
private final MethodBody _body
-
_instructions
private final InstructionCollection _instructions
-
_exceptionHandlers
private final java.util.List<ExceptionHandler> _exceptionHandlers
-
_removed
private final java.util.Set<Instruction> _removed
-
_previous
private final Function<Instruction,Instruction> _previous
-
_cfg
private final ControlFlowGraph _cfg
-
_nodeMap
private final java.util.Map<Instruction,ControlFlowNode> _nodeMap
-
_handlerMap
private final java.util.Map<ExceptionHandler,AstBuilder.HandlerInfo> _handlerMap
-
_processedNodes
private final java.util.Set<ControlFlowNode> _processedNodes
-
_allFinallyNodes
private final java.util.Set<ControlFlowNode> _allFinallyNodes
-
-
Constructor Detail
-
FinallyInlining
private FinallyInlining(MethodBody body, InstructionCollection instructions, java.util.List<ExceptionHandler> handlers, java.util.Set<Instruction> removedInstructions)
-
-
Method Detail
-
dumpHandlerNodes
private static void dumpHandlerNodes(ExceptionHandler handler, java.util.List<ControlFlowNode> tryNodes, java.util.List<ControlFlowNode> handlerNodes)
-
run
static void run(MethodBody body, InstructionCollection instructions, java.util.List<ExceptionHandler> handlers, java.util.Set<Instruction> removedInstructions)
-
runCore
private void runCore()
-
processFinally
private void processFinally(ExceptionHandler handler)
-
processNodes
private void processNodes(AstBuilder.HandlerInfo handlerInfo, Instruction first, Instruction last, int instructionCount, java.util.Set<ControlFlowNode> toProcess, java.util.Set<ControlFlowNode> forbiddenNodes)
-
collectNodes
private java.util.Set<ControlFlowNode> collectNodes(AstBuilder.HandlerInfo handlerInfo)
-
preProcess
private void preProcess()
-
previous
private Instruction previous(Instruction i)
-
-