类 InstructionSequencesReplacer
- java.lang.Object
-
- proguard.classfile.instruction.visitor.MultiInstructionVisitor
-
- proguard.classfile.editor.InstructionSequencesReplacer
-
- 所有已实现的接口:
InstructionVisitor
public class InstructionSequencesReplacer extends MultiInstructionVisitor implements InstructionVisitor
ThisInstructionVisitorreplaces 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.
-
-