Package org.aspectj.weaver.bcel
Klasse ExceptionRange
java.lang.Object
org.aspectj.weaver.bcel.ExceptionRange
- Alle implementierten Schnittstellen:
InstructionTargeter
exceptionRanges are set initially to be low priority. The various setPriority methods should be used accordingly. The priority is
used when we pack the exception table into a method... the exception table should be sorted from high to low priority. Exceptions
we generate for advice is either high priority (higher than anything coming from the original method... most kinds of
non-execution advice) or low priority (lower than anything coming from the original method, for execution advice).
??? This does not account for handler, or any other "statement-level" advice. When such statement level advice happens, we may want to go to a float level, so we can set the priority of advice to be lower than anything it encloses, and higher than anything enclosing it.
-
Feldübersicht
FelderModifizierer und TypFeldBeschreibungprotected InstructionListprotected InstructionHandlestatic final Instructionprotected InstructionHandle -
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungExceptionRange(InstructionList body, UnresolvedType exceptionType, boolean insideExisting) ExceptionRange(InstructionList body, UnresolvedType exceptionType, int priority) After this constructor is called, this range is not well situated unlessassociateWithTargets(org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionHandle)is called XXX priority should be fixed -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungvoidassociateWithTargets(InstructionHandle start, InstructionHandle end, InstructionHandle handler) booleanbooleanintprotected static final org.aspectj.weaver.bcel.RangeinthashCode()static booleanstatic booleanstatic final booleantoString()final voidupdateTarget(InstructionHandle old_ih, InstructionHandle new_ih) voidupdateTarget(InstructionHandle oldIh, InstructionHandle newIh, InstructionList newBody)
-
Felddetails
-
body
-
start
-
end
-
RANGEINSTRUCTION
-
-
Konstruktordetails
-
ExceptionRange
After this constructor is called, this range is not well situated unlessassociateWithTargets(org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionHandle)is called XXX priority should be fixed -
ExceptionRange
- Parameter:
insideExisting-
-
-
Methodendetails
-
associateWithTargets
public void associateWithTargets(InstructionHandle start, InstructionHandle end, InstructionHandle handler) -
getHandler
-
getCatchType
-
getPriority
public int getPriority() -
toString
-
equals
-
hashCode
public int hashCode() -
updateTarget
-
isExceptionStart
-
isExceptionEnd
-
containsTarget
- Angegeben von:
containsTargetin SchnittstelleInstructionTargeter
-
updateTarget
- Angegeben von:
updateTargetin SchnittstelleInstructionTargeter
-
isRangeHandle
-
getRange
-