Class StackMappingVisitor.InstructionAnalyzer
java.lang.Object
com.strobel.assembler.ir.StackMappingVisitor.InstructionAnalyzer
- All Implemented Interfaces:
InstructionVisitor
- Enclosing class:
StackMappingVisitor
private final class StackMappingVisitor.InstructionAnalyzer
extends Object
implements InstructionVisitor
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate final MethodBodyprivate final CoreMetadataFactoryprivate final InstructionVisitorprivate final Stack<FrameValue> Fields inherited from interface InstructionVisitor
EMPTY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateprivateInstructionAnalyzer(MethodBody body, InstructionVisitor innerVisitor) -
Method Summary
Modifier and TypeMethodDescriptionprivate intcomputeSize(List<ParameterDefinition> parameters) private voidexecute(Instruction instruction) private TypeReferencesubstituteTypeArguments(TypeReference type, MemberReference member) voidvisit(Instruction instruction) voidvoidvisitBranch(OpCode code, Instruction target) voidvisitConstant(OpCode code, double value) voidvisitConstant(OpCode code, float value) voidvisitConstant(OpCode code, int value) voidvisitConstant(OpCode code, long value) voidvisitConstant(OpCode opCode, MethodHandle value) voidvisitConstant(OpCode code, TypeReference value) voidvisitConstant(OpCode code, String value) voidvisitDynamicCallSite(OpCode opCode, DynamicCallSite callSite) voidvisitEnd()voidvisitField(OpCode code, FieldReference field) voidvisitLabel(Label label) voidvisitMethod(OpCode code, MethodReference method) voidvisitSwitch(OpCode code, SwitchInfo switchInfo) voidvisitType(OpCode code, TypeReference type) voidvisitVariable(OpCode code, VariableReference variable) voidvisitVariable(OpCode code, VariableReference variable, int operand)
-
Field Details
-
_innerVisitor
-
_body
-
_factory
-
_afterExecute
private boolean _afterExecute -
_temp
-
-
Constructor Details
-
InstructionAnalyzer
-
InstructionAnalyzer
-
-
Method Details
-
visit
- Specified by:
visitin interfaceInstructionVisitor
-
visit
- Specified by:
visitin 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
-
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
-
execute
-
computeSize
-
substituteTypeArguments
-