public class RuleTriggerMethodAdapter extends RuleGeneratorAdapter
RuleMethodAdapter.LocalVar| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String[] |
exceptions |
ADD, AND, DIV, EQ, GE, GT, LE, LT, MUL, NE, NEG, OR, REM, SHL, SHR, SUB, USHR, XORaccess, descriptor, name, rule, transformContext| Modifier and Type | Method and Description |
|---|---|
org.objectweb.asm.Type[] |
getInvokedTypes()
method overridden by AT INVOKE method adapter allowing types for the invoked method owner,
parameters and return value to be identified.
|
protected java.lang.String |
getMethodName() |
org.objectweb.asm.Type |
getReturnBindingType()
method overridden by AT INVOKE method adapter allowing the type of the $! binding to be identified.
|
protected boolean |
inBytemanHandler()
return true if the current block is a handler which catches a byteman exception thrown by the byteman runtime
|
protected boolean |
inBytemanTrigger()
return true if the current block is in a trigger block injected by Byteman
|
protected void |
injectTriggerPoint()
inject the rule trigger code
|
protected boolean |
inRethrowHandler()
return true if the current block is handler which catches a thrown exception within the scope
of a monitor enter in order to be able exit the monitor and rethrow the exception
|
void |
visitCode() |
void |
visitEnd() |
void |
visitFieldInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc) |
void |
visitIincInsn(int var,
int increment) |
void |
visitInsn(int opcode) |
void |
visitIntInsn(int opcode,
int operand) |
void |
visitJumpInsn(int opcode,
org.objectweb.asm.Label label) |
void |
visitLabel(org.objectweb.asm.Label label) |
void |
visitLdcInsn(java.lang.Object cst) |
void |
visitLookupSwitchInsn(org.objectweb.asm.Label dflt,
int[] keys,
org.objectweb.asm.Label[] labels) |
void |
visitMaxs(int maxStack,
int maxLocals)
ensure we allow enough room for any extra locals on the stack
|
void |
visitMethodInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc) |
void |
visitMultiANewArrayInsn(java.lang.String desc,
int dims) |
void |
visitTableSwitchInsn(int min,
int max,
org.objectweb.asm.Label dflt,
org.objectweb.asm.Label[] labels) |
void |
visitTriggerEnd(org.objectweb.asm.Label label) |
void |
visitTriggerStart(org.objectweb.asm.Label label) |
void |
visitTryCatchBlock(org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
org.objectweb.asm.Label handler,
java.lang.String type) |
void |
visitTypeInsn(int opcode,
java.lang.String desc) |
void |
visitVarInsn(int opcode,
int var)
override this so we can see track which local var slots are in use and avoid overwriting them
|
arrayLength, arrayLoad, arrayStore, box, cast, catchException, checkCast, dup, dup2, dup2X1, dup2X2, dupX1, dupX2, endMethod, getField, getLocalType, getStatic, goTo, ifCmp, ifICmp, ifNonNull, ifNull, ifZCmp, iinc, instanceOf, invokeConstructor, invokeInterface, invokeStatic, invokeVirtual, loadArg, loadArgArray, loadArgs, loadArgs, loadLocal, loadThis, mark, mark, math, monitorEnter, monitorExit, newArray, newInstance, newLabel, newLocal, not, pop, pop2, popLocal, push, push, push, push, push, push, push, putField, putStatic, ret, returnValue, storeArg, storeLocal, swap, swap, tableSwitch, tableSwitch, throwException, throwException, unbox, visitFramegetTriggerClassName, lookup, visitLocalVariablepublic org.objectweb.asm.Type[] getInvokedTypes()
public org.objectweb.asm.Type getReturnBindingType()
protected boolean inBytemanHandler()
protected boolean inBytemanTrigger()
protected boolean inRethrowHandler()
protected java.lang.String getMethodName()
public void visitCode()
visitCode in interface org.objectweb.asm.MethodVisitorvisitCode in class org.objectweb.asm.MethodAdapterpublic void visitInsn(int opcode)
visitInsn in interface org.objectweb.asm.MethodVisitorvisitInsn in class org.objectweb.asm.MethodAdapterpublic void visitIincInsn(int var,
int increment)
visitIincInsn in interface org.objectweb.asm.MethodVisitorvisitIincInsn in class org.objectweb.asm.MethodAdapterpublic void visitIntInsn(int opcode,
int operand)
visitIntInsn in interface org.objectweb.asm.MethodVisitorvisitIntInsn in class org.objectweb.asm.MethodAdapterpublic void visitLdcInsn(java.lang.Object cst)
visitLdcInsn in interface org.objectweb.asm.MethodVisitorvisitLdcInsn in class org.objectweb.asm.MethodAdapterpublic void visitVarInsn(int opcode,
int var)
RuleGeneratorAdaptervisitVarInsn in interface org.objectweb.asm.MethodVisitorvisitVarInsn in class RuleGeneratorAdapterpublic void visitTypeInsn(int opcode,
java.lang.String desc)
visitTypeInsn in interface org.objectweb.asm.MethodVisitorvisitTypeInsn in class org.objectweb.asm.MethodAdapterpublic void visitFieldInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
visitFieldInsn in interface org.objectweb.asm.MethodVisitorvisitFieldInsn in class org.objectweb.asm.MethodAdapterpublic void visitMethodInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
visitMethodInsn in interface org.objectweb.asm.MethodVisitorvisitMethodInsn in class org.objectweb.asm.MethodAdapterpublic void visitJumpInsn(int opcode,
org.objectweb.asm.Label label)
visitJumpInsn in interface org.objectweb.asm.MethodVisitorvisitJumpInsn in class org.objectweb.asm.MethodAdapterpublic void visitLabel(org.objectweb.asm.Label label)
visitLabel in interface org.objectweb.asm.MethodVisitorvisitLabel in class org.objectweb.asm.MethodAdapterpublic void visitTriggerStart(org.objectweb.asm.Label label)
public void visitTriggerEnd(org.objectweb.asm.Label label)
public void visitTableSwitchInsn(int min,
int max,
org.objectweb.asm.Label dflt,
org.objectweb.asm.Label[] labels)
visitTableSwitchInsn in interface org.objectweb.asm.MethodVisitorvisitTableSwitchInsn in class org.objectweb.asm.MethodAdapterpublic void visitLookupSwitchInsn(org.objectweb.asm.Label dflt,
int[] keys,
org.objectweb.asm.Label[] labels)
visitLookupSwitchInsn in interface org.objectweb.asm.MethodVisitorvisitLookupSwitchInsn in class org.objectweb.asm.MethodAdapterpublic void visitMultiANewArrayInsn(java.lang.String desc,
int dims)
visitMultiANewArrayInsn in interface org.objectweb.asm.MethodVisitorvisitMultiANewArrayInsn in class org.objectweb.asm.MethodAdapterpublic void visitTryCatchBlock(org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
org.objectweb.asm.Label handler,
java.lang.String type)
visitTryCatchBlock in interface org.objectweb.asm.MethodVisitorvisitTryCatchBlock in class org.objectweb.asm.MethodAdapterpublic void visitMaxs(int maxStack,
int maxLocals)
RuleGeneratorAdaptervisitMaxs in interface org.objectweb.asm.MethodVisitorvisitMaxs in class RuleGeneratorAdapterpublic void visitEnd()
visitEnd in interface org.objectweb.asm.MethodVisitorvisitEnd in class org.objectweb.asm.MethodAdapterprotected void injectTriggerPoint()
Copyright © 2013. All Rights Reserved.