| Modifier and Type | Field and Description |
|---|---|
| private int | |
| private ExposedState | |
| private Test | runtimeTest
If a match is not entirely statically determinable, this captures the runtime test that must succeed in order for the advice to run. |
| private Collection |
| Access | Constructor and Description |
|---|---|
| public | BcelAdvice(AjAttribute.
|
| public | BcelAdvice(AdviceKind kind, Pointcut pointcut, Member signature, int extraArgumentFlags, int start, int end, ISourceContext sourceContext, ResolvedType concreteAspect)
For testing only |
| Modifier and Type | Method and Description |
|---|---|
| private boolean | |
| public boolean | |
| private boolean | |
| protected void | |
| private Collection | |
| public int | |
| public ShadowMunger | concretize(ResolvedType
is guaranteed to be a non-abstract aspect fromType, World world, PerClause has been concretized at a higher level clause)Overrides org. |
| public InstructionList | |
| pack-priv InstructionList | getAdviceInstructions(BcelShadow
The shadow around which these instructions will eventually live. s, BcelVar The var that will hold the return value or thrown exception for afterX advice extraArgVar, InstructionHandle The instructionHandle to jump to if the dynamic tests for this munger fails. ifNoAdvice)get the instruction list for the really simple version of this advice. |
| public BcelVar[] | |
| public InstructionList | |
| public Member | |
| public InstructionList | getTestInstructions(BcelShadow shadow, InstructionHandle sk, InstructionHandle fk, InstructionHandle next)
|
| public Collection | |
| public boolean | |
| public boolean | implementOn(Shadow
the shadow where this munger should be applied s)Implements abstract org. |
| public boolean | match(Shadow shadow, World world)
Overrides org. |
| public boolean | mustCheckExceptions()
Implements abstract org. |
| public ShadowMunger | parameterizeWith(ResolvedType declaringType, Map<String, UnresolvedType> typeVariableMap)
Implements abstract org. |
| private void | |
| private static Member | simplify(AdviceKind kind, Member adviceSignature)
A heavyweight BcelMethod object is only required for around advice that will be inlined. |
| public void | |
| protected void |
| containsInvokedynamic | back to summary |
|---|---|
| private int containsInvokedynamic | |
| exposedState | back to summary |
|---|---|
| private ExposedState exposedState | |
| runtimeTest | back to summary |
|---|---|
| private Test runtimeTest If a match is not entirely statically determinable, this captures the runtime test that must succeed in order for the advice to run. | |
| thrownExceptions | back to summary |
|---|---|
| private Collection<ResolvedType> thrownExceptions | |
| BcelAdvice | back to summary |
|---|---|
| public BcelAdvice(AjAttribute. | |
| BcelAdvice | back to summary |
|---|---|
| public BcelAdvice(AdviceKind kind, Pointcut pointcut, Member signature, int extraArgumentFlags, int start, int end, ISourceContext sourceContext, ResolvedType concreteAspect) For testing only | |
| aspectIsBroken | back to summary |
|---|---|
| private boolean aspectIsBroken() | |
| bindsProceedingJoinPoint | back to summary |
|---|---|
| public boolean bindsProceedingJoinPoint() Overrides org. | |
| canInline | back to summary |
|---|---|
| private boolean canInline(Shadow s) | |
| clearLintSuppressions | back to summary |
|---|---|
| protected void clearLintSuppressions(World inWorld, Collection<Lint. | |
| collectCheckedExceptions | back to summary |
|---|---|
| private Collection | |
| compareTo | back to summary |
|---|---|
| public int compareTo(Object other) Implements org.
| |
| concretize | back to summary |
|---|---|
| public ShadowMunger concretize(ResolvedType fromType, World world, PerClause clause) Overrides org.
| |
| getAdviceArgSetup | back to summary |
|---|---|
| public InstructionList getAdviceArgSetup(BcelShadow shadow, BcelVar extraVar, InstructionList closureInstantiation) | |
| getAdviceInstructions | back to summary |
|---|---|
| pack-priv InstructionList getAdviceInstructions(BcelShadow s, BcelVar extraArgVar, InstructionHandle ifNoAdvice) get the instruction list for the really simple version of this advice. Is broken apart for other advice, but if you want it in one block, this is the method to call.
| |
| getExposedStateAsBcelVars | back to summary |
|---|---|
| public BcelVar[] getExposedStateAsBcelVars(boolean isAround) | |
| getNonTestAdviceInstructions | back to summary |
|---|---|
| public InstructionList getNonTestAdviceInstructions(BcelShadow shadow) | |
| getOriginalSignature | back to summary |
|---|---|
| public Member getOriginalSignature() Overrides org.
| |
| getTestInstructions | back to summary |
|---|---|
| public InstructionList getTestInstructions(BcelShadow shadow, InstructionHandle sk, InstructionHandle fk, InstructionHandle next) | |
| getThrownExceptions | back to summary |
|---|---|
| public Collection Implements abstract org.
| |
| hasDynamicTests | back to summary |
|---|---|
| public boolean hasDynamicTests() Implements abstract org.
| |
| implementOn | back to summary |
|---|---|
| public boolean implementOn(Shadow s) Implements abstract org. Doc from org. Implement this munger at the specified shadow, returning a boolean to indicate success. | |
| match | back to summary |
|---|---|
| public boolean match(Shadow shadow, World world) Overrides org. Doc from org. All overriding methods should call super
| |
| mustCheckExceptions | back to summary |
|---|---|
| public boolean mustCheckExceptions() Implements abstract org. The munger must not check for the advice exceptions to be declared by the shadow in the case of @AJ aspects so that around can throws Throwable
| |
| parameterizeWith | back to summary |
|---|---|
| public ShadowMunger parameterizeWith(ResolvedType declaringType, Map<String, UnresolvedType> typeVariableMap) Implements abstract org.
| |
| removeUnnecessaryProblems | back to summary |
|---|---|
| private void removeUnnecessaryProblems(BcelMethod method, int problemLineNumber) | |
| simplify | back to summary |
|---|---|
| private static Member simplify(AdviceKind kind, Member adviceSignature) A heavyweight BcelMethod object is only required for around advice that will be inlined. For other kinds of advice it is possible to save some space. | |
| specializeOn | back to summary |
|---|---|
| public void specializeOn(Shadow shadow) Implements abstract org.
| |
| suppressLintWarnings | back to summary |
|---|---|
| protected void suppressLintWarnings(World inWorld) | |