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); } } }
InstructionHandle
, InstructionList
, InstructionTargeter
Modifier and Type | Field and Description |
---|---|
private static final long | |
private final InstructionHandle[] |
Access | Constructor and Description |
---|---|
pack-priv |
Modifier and Type | Method and Description |
---|---|
public InstructionHandle[] |
serialVersionUID | back to summary |
---|---|
private static final long serialVersionUID |
targets | back to summary |
---|---|
private final InstructionHandle[] targets
|
TargetLostException | back to summary |
---|---|
pack-priv TargetLostException(final InstructionHandle[] t, final String mesg) |
getTargets | back to summary |
---|---|
public InstructionHandle[] getTargets()
|