Re: [abc-users] Allowing ArrayRef as left-hand side operands for around-weaving

From: Ganesh Sittampalam <ganesh@earth.li>
Date: Fri Nov 19 2004 - 12:59:09 GMT

Hi Bruno,

[As an aside, this post would probably have been better suited to the
abc-dev list. Not that we're swamped by traffic on either list at the
moment anyway :-)]

On Thu, 18 Nov 2004, Bruno Harbulot wrote:

> I had to add a condition in findReturnedLocal() in
> AdviceApplicationInfo, which is a sub-sub-class of
> abc.weaving.weaver.AroundWeaver (in the part that deals with "set" and
> AssignStmt):
>
> else if ((leftOp instanceof FieldRef && rightOp instanceof Local) ||
> (leftOp instanceof ArrayRef) || // Added this test.
> (leftOp instanceof FieldRef && rightOp instanceof Constant)) {
>
>
> Was there a particular reason for this case to be excluded in the first
> place, or is it just because it is not one of the standard AspectJ
> possible cases ? Should I submit a bug report with a patch ?

It's an omission; we'll put an equivalent change into the next release
(due within the next week, I hope). This code is really in the wrong
place anyway, so at some point it will probably be moved into the
matcher and refactored.

No need to submit a bug report.

> I must also say that abc is great for implementing this kind of extension.

Thank you :-)

Ganesh
Received on Fri Nov 19 12:59:12 2004

This archive was generated by hypermail 2.1.8 : Tue Nov 23 2004 - 23:00:03 GMT