Package org.jboss.byteman.agent.adapter
Class RuleMethodAdapter
- java.lang.Object
-
- org.objectweb.asm.MethodVisitor
-
- org.jboss.byteman.agent.adapter.RuleMethodAdapter
-
- Direct Known Subclasses:
RuleCheckMethodAdapter,RuleGeneratorAdapter
public class RuleMethodAdapter extends org.objectweb.asm.MethodVisitorgeneric rule method adapter which extends GeneratorAdpater and adds the ability to track in-scope local variables
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classRuleMethodAdapter.LocalVar
-
Field Summary
Fields Modifier and Type Field Description protected intaccessprotected java.lang.Stringdescriptor(package private) java.util.HashMap<java.lang.String,java.util.LinkedList<RuleMethodAdapter.LocalVar>>localVarsByNamea hashmap mapping local variable names to all local variables with that name.protected java.lang.Stringnameprotected Ruleruleprotected TransformContexttransformContext
-
Constructor Summary
Constructors Constructor Description RuleMethodAdapter(org.objectweb.asm.MethodVisitor mv, TransformContext transformContext, int access, java.lang.String name, java.lang.String desc, Rule rule)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetTriggerClassName()protected java.util.List<RuleMethodAdapter.LocalVar>lookup(java.lang.String name)voidvisitLocalVariable(java.lang.String name, java.lang.String desc, java.lang.String signature, org.objectweb.asm.Label start, org.objectweb.asm.Label end, int index)-
Methods inherited from class org.objectweb.asm.MethodVisitor
visitAnnotableParameterCount, visitAnnotation, visitAnnotationDefault, visitAttribute, visitCode, visitEnd, visitFieldInsn, visitFrame, visitIincInsn, visitInsn, visitInsnAnnotation, visitIntInsn, visitInvokeDynamicInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLineNumber, visitLocalVariableAnnotation, visitLookupSwitchInsn, visitMaxs, visitMethodInsn, visitMethodInsn, visitMultiANewArrayInsn, visitParameter, visitParameterAnnotation, visitTableSwitchInsn, visitTryCatchAnnotation, visitTryCatchBlock, visitTypeAnnotation, visitTypeInsn, visitVarInsn
-
-
-
-
Field Detail
-
localVarsByName
java.util.HashMap<java.lang.String,java.util.LinkedList<RuleMethodAdapter.LocalVar>> localVarsByName
a hashmap mapping local variable names to all local variables with that name. note that although there may be more than one scope for a given local var name they will all have disjoint extents because Java does not permit shadowing.
-
transformContext
protected TransformContext transformContext
-
rule
protected Rule rule
-
access
protected int access
-
name
protected java.lang.String name
-
descriptor
protected java.lang.String descriptor
-
-
Constructor Detail
-
RuleMethodAdapter
public RuleMethodAdapter(org.objectweb.asm.MethodVisitor mv, TransformContext transformContext, int access, java.lang.String name, java.lang.String desc, Rule rule)
-
-
Method Detail
-
getTriggerClassName
public java.lang.String getTriggerClassName()
-
visitLocalVariable
public void visitLocalVariable(java.lang.String name, java.lang.String desc, java.lang.String signature, org.objectweb.asm.Label start, org.objectweb.asm.Label end, int index)- Overrides:
visitLocalVariablein classorg.objectweb.asm.MethodVisitor
-
lookup
protected java.util.List<RuleMethodAdapter.LocalVar> lookup(java.lang.String name)
-
-