public class MethodNodeTransformer extends Object
MethodNodeTransformer class.
| Modifier and Type | Field and Description |
|---|---|
protected int |
firstLocal
Index of the first local variable, after formal parameters.
|
protected List<org.objectweb.asm.Type> |
localTypes
Types of the local variables of the method visited by this adapter.
|
protected int[] |
mapping
Mapping from old to new local variable indexes.
|
protected Object[] |
newLocals
Array used to store stack map local variable types after remapping.
|
protected int |
nextLocal
Index of the next local variable to be created by
newLocal(org.objectweb.asm.Type). |
protected Map<Integer,Integer> |
parameterToLocalMap |
| Constructor and Description |
|---|
MethodNodeTransformer() |
| Modifier and Type | Method and Description |
|---|---|
org.objectweb.asm.Type |
getLocalType(int local)
Returns the type of the given local variable.
|
void |
loadLocal(int local)
Generates the instruction to load the given local variable on the stack.
|
int |
newLocal(org.objectweb.asm.Type type)
Creates a new local variable of the given type.
|
protected int |
newLocalMapping(org.objectweb.asm.Type type) |
protected void |
popParametersToLocals(org.objectweb.asm.tree.MethodNode mn) |
protected void |
pushParametersToLocals(org.objectweb.asm.tree.MethodNode mn) |
protected void |
setLocalType(int local,
org.objectweb.asm.Type type)
Notifies subclasses that a local variable has been added or remapped.
|
protected void |
setupLocals(org.objectweb.asm.tree.MethodNode mn) |
void |
storeLocal(int local)
Generates the instruction to store the top stack value in the given local
variable.
|
void |
transform(org.objectweb.asm.tree.MethodNode mn)
transform
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformFieldInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.FieldInsnNode fieldNode)
transformFieldInsnNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.InsnNode insnNode)
transformInsnNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformIntInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.IntInsnNode intInsnNode)
transformIntInsnNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformJumpInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.JumpInsnNode jumpNode)
transformJumpInsnNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformLabelNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.LabelNode labelNode)
transformLabelNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformMethodInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.MethodInsnNode methodNode)
transformMethodInsnNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformMultiANewArrayInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.MultiANewArrayInsnNode arrayInsnNode)
transformMultiANewArrayInsnNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformTypeInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.TypeInsnNode typeNode)
transformTypeInsnNode
|
protected org.objectweb.asm.tree.AbstractInsnNode |
transformVarInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.VarInsnNode varNode)
transformVarInsnNode
|
protected int[] mapping
protected Object[] newLocals
protected int firstLocal
protected int nextLocal
newLocal(org.objectweb.asm.Type).protected final List<org.objectweb.asm.Type> localTypes
public void transform(org.objectweb.asm.tree.MethodNode mn)
transform
mn - a MethodNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformMethodInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.MethodInsnNode methodNode)
transformMethodInsnNode
mn - a MethodNode object.methodNode - a MethodInsnNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformVarInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.VarInsnNode varNode)
transformVarInsnNode
mn - a MethodNode object.varNode - a VarInsnNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformFieldInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.FieldInsnNode fieldNode)
transformFieldInsnNode
mn - a MethodNode object.fieldNode - a FieldInsnNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.InsnNode insnNode)
transformInsnNode
mn - a MethodNode object.insnNode - a InsnNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformTypeInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.TypeInsnNode typeNode)
transformTypeInsnNode
mn - a MethodNode object.typeNode - a TypeInsnNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformJumpInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.JumpInsnNode jumpNode)
transformJumpInsnNode
mn - a MethodNode object.jumpNode - a JumpInsnNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformLabelNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.LabelNode labelNode)
transformLabelNode
mn - a MethodNode object.labelNode - a LabelNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformIntInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.IntInsnNode intInsnNode)
transformIntInsnNode
mn - a MethodNode object.intInsnNode - a IntInsnNode object.AbstractInsnNode object.protected org.objectweb.asm.tree.AbstractInsnNode transformMultiANewArrayInsnNode(org.objectweb.asm.tree.MethodNode mn,
org.objectweb.asm.tree.MultiANewArrayInsnNode arrayInsnNode)
transformMultiANewArrayInsnNode
mn - a MethodNode object.arrayInsnNode - a MultiANewArrayInsnNode object.AbstractInsnNode object.protected void setupLocals(org.objectweb.asm.tree.MethodNode mn)
public void storeLocal(int local)
local - a local variable identifier, as returned by
newLocal().public void loadLocal(int local)
local - a local variable identifier, as returned by
newLocal().public org.objectweb.asm.Type getLocalType(int local)
local - a local variable identifier, as returned by
newLocal().public int newLocal(org.objectweb.asm.Type type)
type - the type of the local variable to be created.protected int newLocalMapping(org.objectweb.asm.Type type)
protected void setLocalType(int local,
org.objectweb.asm.Type type)
local - a local variable identifier, as returned by newLocal().type - the type of the value being stored in the local variable.protected void popParametersToLocals(org.objectweb.asm.tree.MethodNode mn)
protected void pushParametersToLocals(org.objectweb.asm.tree.MethodNode mn)
Copyright © 2010–2017 EvoSuite. All rights reserved.