public abstract class FieldAssignmentVisitor
extends org.objectweb.asm.tree.MethodNode
Modifier and Type | Field and Description |
---|---|
protected List<org.objectweb.asm.tree.FieldInsnNode> |
fieldAssignments |
protected String |
owner |
access, annotationDefault, attrs, desc, exceptions, instructions, invisibleAnnotableParameterCount, invisibleAnnotations, invisibleLocalVariableAnnotations, invisibleParameterAnnotations, invisibleTypeAnnotations, localVariables, maxLocals, maxStack, name, parameters, signature, tryCatchBlocks, visibleAnnotableParameterCount, visibleAnnotations, visibleLocalVariableAnnotations, visibleParameterAnnotations, visibleTypeAnnotations
Constructor and Description |
---|
FieldAssignmentVisitor(String owner,
int access,
String name,
String desc,
String signature,
String[] exceptions,
AsmVerifierFactory verifierFactory) |
Modifier and Type | Method and Description |
---|---|
protected org.objectweb.asm.tree.analysis.BasicValue |
getStackValue(org.objectweb.asm.tree.analysis.Frame<org.objectweb.asm.tree.analysis.BasicValue> assignmentFrame) |
protected boolean |
isInvalidStackValue(org.objectweb.asm.tree.analysis.BasicValue stackValue) |
void |
visitEnd() |
protected abstract void |
visitFieldAssignmentFrame(org.objectweb.asm.tree.analysis.Frame<org.objectweb.asm.tree.analysis.BasicValue> assignmentFrame,
org.objectweb.asm.tree.FieldInsnNode fieldInsnNode,
org.objectweb.asm.tree.analysis.BasicValue stackValue)
At the end of a method, the frames are analysed to be able to inspect
the state of the stack when the field is assigned.
|
void |
visitFieldInsn(int opcode,
String fieldsOwner,
String fieldName,
String fieldDesc) |
accept, accept, check, getLabelNode, visitAnnotableParameterCount, visitAnnotation, visitAnnotationDefault, visitAttribute, visitCode, visitFrame, visitIincInsn, visitInsn, visitInsnAnnotation, visitIntInsn, visitInvokeDynamicInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLineNumber, visitLocalVariable, visitLocalVariableAnnotation, visitLookupSwitchInsn, visitMaxs, visitMethodInsn, visitMultiANewArrayInsn, visitParameter, visitParameterAnnotation, visitTableSwitchInsn, visitTryCatchAnnotation, visitTryCatchBlock, visitTypeAnnotation, visitTypeInsn, visitVarInsn
protected List<org.objectweb.asm.tree.FieldInsnNode> fieldAssignments
protected final String owner
public void visitFieldInsn(int opcode, String fieldsOwner, String fieldName, String fieldDesc)
visitFieldInsn
in class org.objectweb.asm.tree.MethodNode
protected abstract void visitFieldAssignmentFrame(org.objectweb.asm.tree.analysis.Frame<org.objectweb.asm.tree.analysis.BasicValue> assignmentFrame, org.objectweb.asm.tree.FieldInsnNode fieldInsnNode, org.objectweb.asm.tree.analysis.BasicValue stackValue)
assignmentFrame
- fieldInsnNode
- public void visitEnd()
visitEnd
in class org.objectweb.asm.tree.MethodNode
protected boolean isInvalidStackValue(org.objectweb.asm.tree.analysis.BasicValue stackValue)
protected org.objectweb.asm.tree.analysis.BasicValue getStackValue(org.objectweb.asm.tree.analysis.Frame<org.objectweb.asm.tree.analysis.BasicValue> assignmentFrame)
Copyright © 2008–2020 Graham Allan. All rights reserved.