类 InstructionSequencesReplacer
java.lang.Object
proguard.classfile.instruction.visitor.MultiInstructionVisitor
proguard.classfile.editor.InstructionSequencesReplacer
- 所有已实现的接口:
InstructionVisitor
public class InstructionSequencesReplacer
extends MultiInstructionVisitor
implements InstructionVisitor
This
InstructionVisitor replaces multiple instruction sequences at once.
The replacement sequences are optional, defaulting to the empty sequence, to delete the matched pattern sequences.
-
构造器概要
构造器构造器说明InstructionSequencesReplacer(Constant[] constants, Instruction[][][] instructionSequences, BranchTargetFinder branchTargetFinder, CodeAttributeEditor codeAttributeEditor) Creates a new InstructionSequencesReplacer.InstructionSequencesReplacer(Constant[] constants, Instruction[][][] instructionSequences, BranchTargetFinder branchTargetFinder, CodeAttributeEditor codeAttributeEditor, InstructionVisitor extraInstructionVisitor) Creates a new InstructionSequenceReplacer. -
方法概要
从类继承的方法 proguard.classfile.instruction.visitor.MultiInstructionVisitor
addInstructionVisitor, visitBranchInstruction, visitConstantInstruction, visitLookUpSwitchInstruction, visitSimpleInstruction, visitTableSwitchInstruction, visitVariableInstruction从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 proguard.classfile.instruction.visitor.InstructionVisitor
visitAnyInstruction, visitAnySwitchInstruction, visitBranchInstruction, visitConstantInstruction, visitLookUpSwitchInstruction, visitSimpleInstruction, visitTableSwitchInstruction, visitVariableInstruction
-
构造器详细资料
-
InstructionSequencesReplacer
public InstructionSequencesReplacer(Constant[] constants, Instruction[][][] instructionSequences, BranchTargetFinder branchTargetFinder, CodeAttributeEditor codeAttributeEditor) Creates a new InstructionSequencesReplacer.- 参数:
constants- any constants referenced by the pattern instructions and replacement instructions.instructionSequences- the instruction sequences to be replaced, with subsequently the sequence pair index, the patten/replacement index (0 or 1), and the instruction index in the sequence.branchTargetFinder- a branch target finder that has been initialized to indicate branch targets in the visited code.codeAttributeEditor- a code editor that can be used for accumulating changes to the code.
-
InstructionSequencesReplacer
public InstructionSequencesReplacer(Constant[] constants, Instruction[][][] instructionSequences, BranchTargetFinder branchTargetFinder, CodeAttributeEditor codeAttributeEditor, InstructionVisitor extraInstructionVisitor) Creates a new InstructionSequenceReplacer.- 参数:
constants- any constants referenced by the pattern instructions and replacement instructions.instructionSequences- the instruction sequences to be replaced, with subsequently the sequence pair index, the patten/replacement index (0 or 1), and the instruction index in the sequence.branchTargetFinder- a branch target finder that has been initialized to indicate branch targets in the visited code.codeAttributeEditor- a code editor that can be used for accumulating changes to the code.extraInstructionVisitor- an optional extra visitor for all deleted load instructions.
-