public class StrictBytecodeMarker extends AbstractMarker
Marks one java bytecode instruction.
Sets the start before a bytecode instruction and the end after a bytecode instruction even if it is jump instruction.
note: Especially for jump instruction, this marker does NOT guarantee that if the before is invoked, consequently, the after will be invoked.
AbstractMarker.MarkedRegion
Constructor and Description |
---|
StrictBytecodeMarker(Parameter param) |
Modifier and Type | Method and Description |
---|---|
java.util.List<AbstractMarker.MarkedRegion> |
mark(org.objectweb.asm.tree.MethodNode methodNode)
Implementation of this method should return list of
AbstractMarker.MarkedRegion
instances with start, ends, and the weaving region filled. |
java.util.List<org.objectweb.asm.tree.AbstractInsnNode> |
markInstruction(org.objectweb.asm.tree.MethodNode method) |
mark
public StrictBytecodeMarker(Parameter param) throws ch.usi.dag.disl.exception.MarkerException
ch.usi.dag.disl.exception.MarkerException
public java.util.List<org.objectweb.asm.tree.AbstractInsnNode> markInstruction(org.objectweb.asm.tree.MethodNode method)
public final java.util.List<AbstractMarker.MarkedRegion> mark(org.objectweb.asm.tree.MethodNode methodNode)
AbstractMarker
AbstractMarker.MarkedRegion
instances with start, ends, and the weaving region filled.mark
in class AbstractMarker
methodNode
- method node of the marked class