Class BytecodeLanguage.InstructionPrinter
java.lang.Object
com.strobel.decompiler.languages.BytecodeLanguage.InstructionPrinter
- All Implemented Interfaces:
InstructionVisitor
- Enclosing class:
BytecodeLanguage
private static final class BytecodeLanguage.InstructionPrinter
extends Object
implements InstructionVisitor
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final MethodBodyprivate intprivate final int[]private final ITextOutputprivate final DecompilerSettingsprivate static final Stringprivate static final intprivate static final String[]Fields inherited from interface InstructionVisitor
EMPTY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateInstructionPrinter(ITextOutput output, MethodDefinition method, DecompilerSettings settings, int[] lineNumbers) -
Method Summary
Modifier and TypeMethodDescriptionprivate VariableDefinitionfindVariable(OpCode op, int slot, int offset) private voidprintOpCode(OpCode opCode) voidvisit(Instruction instruction) voidvoidvisitBranch(OpCode op, Instruction target) voidvisitConstant(OpCode op, double value) voidvisitConstant(OpCode op, float value) voidvisitConstant(OpCode op, int value) voidvisitConstant(OpCode op, long value) voidvisitConstant(OpCode op, MethodHandle value) voidvisitConstant(OpCode op, TypeReference value) voidvisitConstant(OpCode op, String value) voidvisitDynamicCallSite(OpCode op, DynamicCallSite callSite) voidvisitEnd()voidvisitField(OpCode op, FieldReference field) voidvisitLabel(Label label) voidvisitMethod(OpCode op, MethodReference method) voidvisitSwitch(OpCode op, SwitchInfo switchInfo) voidvisitType(OpCode op, TypeReference type) voidvisitVariable(OpCode op, VariableReference variable) voidvisitVariable(OpCode op, VariableReference variable, int operand)
-
Field Details
-
MAX_OPCODE_LENGTH
private static final int MAX_OPCODE_LENGTH -
OPCODE_NAMES
-
LINE_NUMBER_CODE
- See Also:
-
_settings
-
_output
-
_body
-
_lineNumbers
private final int[] _lineNumbers -
_currentOffset
private int _currentOffset
-
-
Constructor Details
-
InstructionPrinter
private InstructionPrinter(ITextOutput output, MethodDefinition method, DecompilerSettings settings, int[] lineNumbers)
-
-
Method Details
-
printOpCode
-
visit
- Specified by:
visitin interfaceInstructionVisitor
-
visit
- Specified by:
visitin interfaceInstructionVisitor
-
findVariable
-
visitConstant
- Specified by:
visitConstantin interfaceInstructionVisitor
-
visitConstant
- Specified by:
visitConstantin interfaceInstructionVisitor
-
visitConstant
- Specified by:
visitConstantin interfaceInstructionVisitor
-
visitConstant
- Specified by:
visitConstantin interfaceInstructionVisitor
-
visitConstant
- Specified by:
visitConstantin interfaceInstructionVisitor
-
visitConstant
- Specified by:
visitConstantin interfaceInstructionVisitor
-
visitConstant
- Specified by:
visitConstantin interfaceInstructionVisitor
-
visitBranch
- Specified by:
visitBranchin interfaceInstructionVisitor
-
visitVariable
- Specified by:
visitVariablein interfaceInstructionVisitor
-
visitVariable
- Specified by:
visitVariablein interfaceInstructionVisitor
-
visitType
- Specified by:
visitTypein interfaceInstructionVisitor
-
visitMethod
- Specified by:
visitMethodin interfaceInstructionVisitor
-
visitDynamicCallSite
- Specified by:
visitDynamicCallSitein interfaceInstructionVisitor
-
visitField
- Specified by:
visitFieldin interfaceInstructionVisitor
-
visitLabel
- Specified by:
visitLabelin interfaceInstructionVisitor
-
visitSwitch
- Specified by:
visitSwitchin interfaceInstructionVisitor
-
visitEnd
public void visitEnd()- Specified by:
visitEndin interfaceInstructionVisitor
-