Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] Understanding generic types in args(..) construction

I think we have a similar issue with the around's return. Look it out.

public class B {
    List<Number> m(){ return null;}
}

aspect AB{
    List<Integer> around() : execution(List<*> B.*(..)) {
        return proceed();
    }
}

List<Integer> is not subtype of List<Number>.

Fernando Rubbo


On Mon, Nov 3, 2008 at 9:08 PM, Fernando Rubbo <fernando.rubbo@xxxxxxxxx> wrote:

On 2-nov-08, at 02:27, Fernando Rubbo wrote:
There exists a formal description saying how args(..) and after(..) returning (..) must works?

The best description is probably:
http://www.eclipse.org/aspectj/doc/released/adk15notebook/generics-inAspectJ5.html#d0e2512

That is quite old, but is currently the best we have written down.  Anyone wishing to help us update the doc, please let me know.

If it will gonna respect Java subtyping it is simple to document. We just need to put a note informing that and a reference for Java spec  (The Java Language Specification Third Edition) chapter 4.10 - Subtyping.

Fernando Rubbo


Back to the top