Package org.apache.bcel.generic
Class TargetLostException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- org.apache.bcel.generic.TargetLostException
-
- All Implemented Interfaces:
java.io.Serializable
public final class TargetLostException extends java.lang.Exception
Thrown byInstructionList
when one or multiple disposed instructions are still being referenced by anInstructionTargeter
object. I.e. theInstructionTargeter
has to be notified that (one of) theInstructionHandle
it is referencing is being removed from theInstructionList
and thus not valid anymore.Making this an exception instead of a return value forces the user to handle these case explicitly in a try { ... } catch. The following code illustrates how this may be done:
... try { il.delete(start_ih, end_ih); } catch (TargetLostException e) { for (InstructionHandle target : e.getTargets()) { for (InstructionTargeter targeter : target.getTargeters()) { targeter.updateTarget(target, new_target); } } }
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description InstructionHandle[]
getTargets()
Gets the list of instructions still being targeted.
-
-
-
Method Detail
-
getTargets
public InstructionHandle[] getTargets()
Gets the list of instructions still being targeted.- Returns:
- list of instructions still being targeted.
-
-