public abstract static class SnapshotInstrumentor.Task extends Object
Modifier and Type | Field and Description |
---|---|
protected org.objectweb.asm.tree.ClassNode |
classNode |
Constructor and Description |
---|
Task(ClassLoader loader,
SerializationProfile profile,
ClassNodeManager classes,
IOManager io,
org.objectweb.asm.tree.ClassNode classNode) |
Modifier and Type | Method and Description |
---|---|
protected abstract org.objectweb.asm.tree.InsnList |
afterNativeInputCall(MethodContext context,
org.objectweb.asm.tree.MethodInsnNode inputCall) |
protected abstract org.objectweb.asm.tree.InsnList |
afterNativeOutputCall(MethodContext context,
org.objectweb.asm.tree.MethodInsnNode inputCall) |
protected abstract org.objectweb.asm.tree.InsnList |
beforeNativeInputCall(MethodContext context,
org.objectweb.asm.tree.MethodInsnNode inputCall) |
protected abstract org.objectweb.asm.tree.InsnList |
beforeNativeOutputCall(MethodContext context,
org.objectweb.asm.tree.MethodInsnNode inputCall) |
protected abstract SequenceInstruction |
expectVariables(org.objectweb.asm.tree.MethodNode methodNode) |
protected abstract SequenceInstruction |
inputArgumentsAndResult(org.objectweb.asm.tree.MethodNode methodNode) |
protected abstract SequenceInstruction |
inputVariables(org.objectweb.asm.tree.MethodNode methodNode) |
protected void |
instrumentInputMethod(org.objectweb.asm.tree.MethodNode methodNode) |
void |
instrumentInputMethods() |
protected void |
instrumentOutputMethod(org.objectweb.asm.tree.MethodNode methodNode) |
void |
instrumentOutputMethods() |
protected void |
instrumentSnapshotMethod(org.objectweb.asm.tree.MethodNode methodNode) |
protected boolean |
isGlobalField(String className,
org.objectweb.asm.tree.FieldNode fieldNode) |
protected boolean |
isInputMethod(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
protected boolean |
isJavaInputMethod(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
protected boolean |
isJavaOutputMethod(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
protected boolean |
isNativeInputMethod(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
protected boolean |
isNativeOutputMethod(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
protected boolean |
isOutputMethod(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
protected boolean |
isSnapshotMethod(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
protected String |
keySignature(org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode methodNode) |
void |
logSkippedSnapshotMethods() |
protected abstract SequenceInstruction |
outputResult(org.objectweb.asm.tree.MethodNode methodNode) |
protected abstract SequenceInstruction |
outputVariables(org.objectweb.asm.tree.MethodNode methodNode) |
void |
registerCallbacks() |
protected abstract SequenceInstruction |
setupVariables(org.objectweb.asm.tree.MethodNode methodNode) |
protected abstract SequenceInstruction |
throwVariables(org.objectweb.asm.tree.MethodNode methodNode) |
public Task(ClassLoader loader, SerializationProfile profile, ClassNodeManager classes, IOManager io, org.objectweb.asm.tree.ClassNode classNode)
public void logSkippedSnapshotMethods()
public void registerCallbacks()
protected void instrumentSnapshotMethod(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract SequenceInstruction setupVariables(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract SequenceInstruction expectVariables(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract SequenceInstruction throwVariables(org.objectweb.asm.tree.MethodNode methodNode)
public void instrumentInputMethods()
protected void instrumentInputMethod(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract SequenceInstruction inputArgumentsAndResult(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract SequenceInstruction inputVariables(org.objectweb.asm.tree.MethodNode methodNode)
public void instrumentOutputMethods()
protected void instrumentOutputMethod(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract SequenceInstruction outputVariables(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract SequenceInstruction outputResult(org.objectweb.asm.tree.MethodNode methodNode)
protected abstract org.objectweb.asm.tree.InsnList afterNativeInputCall(MethodContext context, org.objectweb.asm.tree.MethodInsnNode inputCall)
protected abstract org.objectweb.asm.tree.InsnList beforeNativeInputCall(MethodContext context, org.objectweb.asm.tree.MethodInsnNode inputCall)
protected abstract org.objectweb.asm.tree.InsnList beforeNativeOutputCall(MethodContext context, org.objectweb.asm.tree.MethodInsnNode inputCall)
protected abstract org.objectweb.asm.tree.InsnList afterNativeOutputCall(MethodContext context, org.objectweb.asm.tree.MethodInsnNode inputCall)
protected boolean isGlobalField(String className, org.objectweb.asm.tree.FieldNode fieldNode)
protected boolean isSnapshotMethod(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
protected boolean isJavaInputMethod(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
protected boolean isNativeInputMethod(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
protected boolean isInputMethod(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
protected boolean isJavaOutputMethod(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
protected boolean isNativeOutputMethod(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
protected boolean isOutputMethod(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
protected String keySignature(org.objectweb.asm.tree.ClassNode classNode, org.objectweb.asm.tree.MethodNode methodNode)
Copyright © 2020. All rights reserved.