Uses of Class
org.aspectj.apache.bcel.generic.InstructionHandle
-
Uses of InstructionHandle in org.aspectj.apache.bcel.generic
Modifier and TypeClassDescriptionfinal class
BranchHandle is returned by specialized InstructionList.append() whenever a BranchInstruction is appended.Modifier and TypeFieldDescriptionprotected InstructionHandle
InstructionBranch.targetInstruction
protected InstructionHandle[]
InstructionSelect.targets
Modifier and TypeMethodDescriptionInstructionList.append
(Instruction i) Append an instruction to the end of this list.InstructionList.append
(InstructionHandle ih, Instruction i) Append an instruction after instruction (handle) ih contained in this list.InstructionList.append
(InstructionHandle appendTo, InstructionList appendee) Append another list after instruction (handle) ih contained in this list.InstructionList.append
(InstructionList il) Append another list to this one.InstructionList.append
(Instruction i, Instruction j) Append a single instruction j after another instruction i, which must be in this list of course!InstructionList.append
(Instruction i, InstructionList il) Append another list after instruction i contained in this list.InstructionList.appendDUP()
InstructionList.appendNOP()
InstructionList.appendPOP()
InstructionList.findHandle
(int pos) Get instruction handle for instruction at byte code position pos.InstructionList.findHandle
(int pos, InstructionHandle[] instructionArray) InstructionList.findHandle
(int pos, InstructionHandle[] instructionArray, boolean useClosestApproximationIfNoExactFound) static InstructionHandle
InstructionList.findHandle
(InstructionHandle[] ihs, int[] pos, int count, int target) static InstructionHandle
InstructionList.findHandle
(InstructionHandle[] ihs, int[] pos, int count, int target, boolean returnClosestIfNoExactMatch) Find the target instruction (handle) that corresponds to the given target position (byte code offset).InstructionList.getEnd()
LocalVariableGen.getEnd()
CodeExceptionGen.getEndPC()
CodeExceptionGen.getHandlerPC()
LineNumberGen.getInstruction()
InstructionList.getInstructionHandles()
InstructionList.getInstructionsAsArray()
final InstructionHandle
InstructionHandle.getNext()
final InstructionHandle
InstructionHandle.getPrev()
InstructionList.getStart()
LocalVariableGen.getStart()
CodeExceptionGen.getStartPC()
BranchHandle.getTarget()
InstructionBranch.getTarget()
ReturnaddressType.getTarget()
InstructionSelect.getTargets()
TargetLostException.getTargets()
InstructionList.insert
(Instruction i) Insert an instruction at start of this list.InstructionList.insert
(InstructionHandle ih, Instruction i) Insert an instruction before instruction (handle) ih contained in this list.InstructionList.insert
(InstructionHandle ih, InstructionList il) Insert another list before Instruction handle ih contained in this list.InstructionList.insert
(InstructionList il) Insert another list.InstructionList.insert
(Instruction i, Instruction j) Insert a single instruction j before another instruction i, which must be in this list of course!InstructionList.insert
(Instruction i, InstructionList il) Insert another list before Instruction i contained in this list.InstructionBranch.physicalSuccessor()
Returns an InstructionHandle to the physical successor of this JsrInstruction.Modifier and TypeMethodDescriptionMethodGen.addExceptionHandler
(InstructionHandle start_pc, InstructionHandle end_pc, InstructionHandle handler_pc, ObjectType catch_type) Add an exception handler, i.e., specify region where a handler is active and an instruction where the actual handling is done.MethodGen.addLineNumber
(InstructionHandle ih, int src_line) Give an instruction a line number corresponding to the source code line.MethodGen.addLocalVariable
(String name, Type type, int slot, InstructionHandle start, InstructionHandle end) MethodGen.addLocalVariable
(String name, Type type, InstructionHandle start, InstructionHandle end) Adds a local variable to this method and assigns an index automatically.InstructionList.append
(InstructionHandle ih, Instruction i) Append an instruction after instruction (handle) ih contained in this list.InstructionList.append
(InstructionHandle ih, InstructionBranch i) Append an instruction after instruction (handle) ih contained in this list.InstructionList.append
(InstructionHandle appendTo, InstructionList appendee) Append another list after instruction (handle) ih contained in this list.boolean
InstructionList.contains
(InstructionHandle i) boolean
CodeExceptionGen.containsTarget
(InstructionHandle ih) boolean
InstructionBranch.containsTarget
(InstructionHandle ih) boolean
InstructionSelect.containsTarget
(InstructionHandle ih) boolean
InstructionTargeter.containsTarget
(InstructionHandle ih) boolean
LineNumberGen.containsTarget
(InstructionHandle ih) boolean
LocalVariableGen.containsTarget
(InstructionHandle ih) boolean
Tag.containsTarget
(InstructionHandle ih) static InstructionBranch
InstructionFactory.createBranchInstruction
(short opcode, InstructionHandle target) Create branch instruction by given opcode, except LOOKUPSWITCH and TABLESWITCH.void
InstructionList.delete
(InstructionHandle ih) Remove instruction from this list.void
InstructionList.delete
(InstructionHandle from, InstructionHandle to) Remove instructions from instruction `from' to instruction `to' contained in this list.InstructionList.findHandle
(int pos, InstructionHandle[] instructionArray) InstructionList.findHandle
(int pos, InstructionHandle[] instructionArray, boolean useClosestApproximationIfNoExactFound) static InstructionHandle
InstructionList.findHandle
(InstructionHandle[] ihs, int[] pos, int count, int target) static InstructionHandle
InstructionList.findHandle
(InstructionHandle[] ihs, int[] pos, int count, int target, boolean returnClosestIfNoExactMatch) Find the target instruction (handle) that corresponds to the given target position (byte code offset).protected int
InstructionSelect.getTargetOffset
(InstructionHandle target) InstructionList.insert
(InstructionHandle ih, Instruction i) Insert an instruction before instruction (handle) ih contained in this list.InstructionList.insert
(InstructionHandle ih, InstructionBranch i) Insert an instruction before instruction (handle) ih contained in this list.InstructionList.insert
(InstructionHandle ih, InstructionList il) Insert another list before Instruction handle ih contained in this list.void
InstructionList.move
(InstructionHandle ih, InstructionHandle target) Move a single instruction (handle) to a new location.void
InstructionList.move
(InstructionHandle start, InstructionHandle end, InstructionHandle target) Take all instructions (handles) from "start" to "end" and append them after the new location "target".void
InstructionList.redirectBranches
(InstructionHandle old_target, InstructionHandle new_target) Redirect all references from old_target to new_target, i.e., update targets of branch instructions.void
InstructionList.redirectExceptionHandlers
(CodeExceptionGen[] exceptions, InstructionHandle old_target, InstructionHandle new_target) Redirect all references of exception handlers from old_target to new_target.void
InstructionList.redirectLocalVariables
(LocalVariableGen[] lg, InstructionHandle old_target, InstructionHandle new_target) Redirect all references of local variables from old_target to new_target.void
LocalVariableGen.setEnd
(InstructionHandle end) void
CodeExceptionGen.setEndPC
(InstructionHandle end_pc) void
CodeExceptionGen.setHandlerPC
(InstructionHandle handler_pc) void
LineNumberGen.setInstruction
(InstructionHandle ih) void
LocalVariableGen.setStart
(InstructionHandle start) void
CodeExceptionGen.setStartPC
(InstructionHandle start_pc) void
BranchHandle.setTarget
(InstructionHandle ih) Pass new target to instruction.void
InstructionBranch.setTarget
(InstructionHandle target) Set branch targetvoid
InstructionSelect.setTarget
(int i, InstructionHandle target) Set branch target for `i'th casevoid
BranchHandle.updateTarget
(InstructionHandle old_ih, InstructionHandle new_ih) Update target of instruction.void
CodeExceptionGen.updateTarget
(InstructionHandle old_ih, InstructionHandle new_ih) void
InstructionBranch.updateTarget
(InstructionHandle oldHandle, InstructionHandle newHandle) Update the target destination for this instruction.void
InstructionSelect.updateTarget
(InstructionHandle old_ih, InstructionHandle new_ih) void
InstructionTargeter.updateTarget
(InstructionHandle old_ih, InstructionHandle new_ih) void
LineNumberGen.updateTarget
(InstructionHandle old_ih, InstructionHandle new_ih) void
LocalVariableGen.updateTarget
(InstructionHandle old_ih, InstructionHandle new_ih) void
Tag.updateTarget
(InstructionHandle oldHandle, InstructionHandle newHandle) ModifierConstructorDescriptionCodeExceptionGen
(InstructionHandle start_pc, InstructionHandle end_pc, InstructionHandle handler_pc, ObjectType catch_type) Add an exception handler, i.e., specify region where a handler is active and an instruction where the actual handling is done.InstructionBranch
(short opcode, InstructionHandle target) LineNumberGen
(InstructionHandle ih, int src_line) Create a line number.LocalVariableGen
(int index, String name, Type type, InstructionHandle start, InstructionHandle end) Generate a local variable that with index `index'.LOOKUPSWITCH
(int[] match, InstructionHandle[] targets, InstructionHandle target) ReturnaddressType
(InstructionHandle returnTarget) Creates a ReturnaddressType object with a target.SwitchBuilder
(int[] match, InstructionHandle[] targets, InstructionHandle target) SwitchBuilder
(int[] match, InstructionHandle[] targets, InstructionHandle target, int max_gap) Template for switch() constructs.TABLESWITCH
(int[] match, InstructionHandle[] targets, InstructionHandle target) -
Uses of InstructionHandle in org.aspectj.weaver.bcel
Modifier and TypeFieldDescriptionprotected InstructionHandle
Range.end
protected InstructionHandle
Range.start
Modifier and TypeMethodDescriptionvoid
LazyMethodGen.addExceptionHandler
(InstructionHandle start, InstructionHandle end, InstructionHandle handlerStart, ObjectType catchType, boolean highPriority) void
ExceptionRange.associateWithTargets
(InstructionHandle start, InstructionHandle end, InstructionHandle handler) static void
Utility.deleteInstruction
(InstructionHandle ih, InstructionHandle retargetTo, LazyMethodGen enclosingMethod) delete an instruction handle and retarget all targeters of the deleted instruction to the provided target.static void
Utility.deleteInstruction
(InstructionHandle ih, LazyMethodGen enclosingMethod) delete an instruction handle and retarget all targeters of the deleted instruction to the next instruction.static int
Utility.getSourceLine
(InstructionHandle ih) returns -1 if no source line attributevoid
BcelShadow.initIfaceInitializer
(InstructionHandle end) static boolean
ExceptionRange.isExceptionEnd
(InstructionHandle ih) static boolean
ExceptionRange.isExceptionStart
(InstructionHandle ih) static BcelShadow
BcelShadow.makeArrayConstructorCall
(BcelWorld world, LazyMethodGen enclosingMethod, InstructionHandle arrayInstruction, BcelShadow enclosingShadow) static BcelShadow
BcelShadow.makeConstructorCall
(BcelWorld world, LazyMethodGen enclosingMethod, InstructionHandle callHandle, BcelShadow enclosingShadow) static BcelShadow
BcelShadow.makeConstructorExecution
(BcelWorld world, LazyMethodGen enclosingMethod, InstructionHandle justBeforeStart) static BcelShadow
BcelShadow.makeExceptionHandler
(BcelWorld world, ExceptionRange exceptionRange, LazyMethodGen enclosingMethod, InstructionHandle startOfHandler, BcelShadow enclosingShadow) Make the shadow for an exception handler.static BcelShadow
BcelShadow.makeFieldGet
(BcelWorld world, ResolvedMember field, LazyMethodGen enclosingMethod, InstructionHandle getHandle, BcelShadow enclosingShadow) static BcelShadow
BcelShadow.makeFieldSet
(BcelWorld world, ResolvedMember field, LazyMethodGen enclosingMethod, InstructionHandle setHandle, BcelShadow enclosingShadow) BcelWorld.makeJoinPointSignatureForArrayConstruction
(LazyClassGen cg, InstructionHandle handle) BcelWorld.makeJoinPointSignatureForMonitorEnter
(LazyClassGen cg, InstructionHandle h) BcelWorld.makeJoinPointSignatureForMonitorExit
(LazyClassGen cg, InstructionHandle h) static BcelShadow
BcelShadow.makeMethodCall
(BcelWorld world, LazyMethodGen enclosingMethod, InstructionHandle callHandle, BcelShadow enclosingShadow) static BcelShadow
BcelShadow.makeMonitorEnter
(BcelWorld world, LazyMethodGen enclosingMethod, InstructionHandle monitorInstruction, BcelShadow enclosingShadow) static BcelShadow
BcelShadow.makeMonitorExit
(BcelWorld world, LazyMethodGen enclosingMethod, InstructionHandle monitorInstruction, BcelShadow enclosingShadow) static BcelShadow
BcelShadow.makeShadowForMethodCall
(BcelWorld world, LazyMethodGen enclosingMethod, InstructionHandle callHandle, BcelShadow enclosingShadow, Shadow.Kind kind, ResolvedMember sig) static InstructionList
BcelRenderer.renderTest
(InstructionFactory fact, BcelWorld world, Test e, InstructionHandle sk, InstructionHandle fk, InstructionHandle next) static void
Utility.replaceInstruction
(InstructionHandle ih, InstructionList replacementInstructions, LazyMethodGen enclosingMethod) replace an instruction handle with another instruction, in this case, a branch instruction.static void
BcelShadow.retargetAllBranches
(InstructionHandle from, InstructionHandle to) static void
Utility.setSourceLine
(InstructionHandle ih, int lineNumber) void
ExceptionRange.updateTarget
(InstructionHandle oldIh, InstructionHandle newIh, InstructionList newBody)