Cool.  Thanks!

On Thu, Sep 8, 2011 at 10:50 AM, Andy Clement <[email protected]>wrote:

> On 6 September 2011 14:20, Matthew Adams <[email protected]> wrote:
> > Ok, cool.  I'll enter an enhancement request for "!" notation.  It
> > seems like that would apply universally.
>
> I've just committed support for the != notation with annotation values
> (https://bugs.eclipse.org/bugs/show_bug.cgi?id=357013)
>
> > As for "+" notation, that would be a special case for when the type of
> > the annotation's property is java.lang.Class.  What do you think of
> > supporting "+" in those cases where this is true?  I would expect
> > either a vanilla non-match if the annotation property were not of type
> > java.lang.Class.  You could, however, go so far as to fail to compile,
> > since these things are all known at compile time.
>
> If a bugzilla is raised and it gets enough interest, I would look to
> support it.
>
> cheers
> Andy
>
>
> > On Tue, Sep 6, 2011 at 3:40 PM, Andy Clement <[email protected]>
> wrote:
> >> Hi Matthew,
> >>
> >>> Can type patterns match on values of properties of annotations?
> >>
> >> Yes, *but* there is a bug (uncovered in the other thread in the
> >> mailing list today) where '.class' is tripping up the pattern parser
> >> in AspectJ.  So this is fine:
> >>
> >> @interface Foo {
> >>   int x();
> >> }
> >>
> >> declare @field: @Foo(x=3) * *: @Bar;
> >>
> >> But you can't use 'Class x()' and then '@Foo(x=String.class)' in your
> >> type pattern.  I'm just debugging it now, think I see what it is - I
> >> guess no-one has ever
> >> tried it for class type values.
> >>
> >>> declare parents:
> >>>  (@Foo(clazz=Number+) *)
> >>>  implements Fooable<Integer>;
> >>
> >> Don't think this is going to work, even after I fix the above.
> >>
> >> So:
> >>> Can I write a type pattern that matches for Thingy but not Stringy
> >>> based only on the value of the "@Foo" annotation's "clazz" property?
> >>
> >> Yes,
> >>
> >> declare @type: @Foo(clazz=Long.class) *: @Bar;
> >>
> >> We could support, I imagine:
> >>
> >> declare @type: @Foo(clazz!=Long.class) *: @Bar;
> >>
> >> but we don't right now.
> >>
> >> cheers
> >> Andy
> >>
> >> On 6 September 2011 12:47, Matthew Adams <[email protected]>
> wrote:
> >>>
> >>> For example, given this ITD & classes:
> >>>
> >>> declare parents:
> >>>  (@Foo(clazz=Number+) *)
> >>>  implements Fooable<Integer>;
> >>>
> >>> @Foo(clazz=Long.class)
> >>> public class Thingy {}
> >>>
> >>> @Foo(clazz=String.class)
> >>> public class Stringy {}
> >>>
> >>> Can I write a type pattern that matches for Thingy but not Stringy
> >>> based only on the value of the "@Foo" annotation's "clazz" property?
> >>>
> >>> -matthew
> >>>
> >>> --
> >>> @matthewadams12
> >>> mailto:[email protected]
> >>> skype:matthewadams12
> >>> yahoo:matthewadams
> >>> aol:matthewadams12
> >>> google-talk:[email protected]
> >>> msn:[email protected]
> >>> http://matthewadams.me
> >>> http://www.linkedin.com/in/matthewadams
> >>> _______________________________________________
> >>> aspectj-users mailing list
> >>> [email protected]
> >>> https://dev.eclipse.org/mailman/listinfo/aspectj-users
> >>>
> >> _______________________________________________
> >> aspectj-users mailing list
> >> [email protected]
> >> https://dev.eclipse.org/mailman/listinfo/aspectj-users
> >>
> >
> >
> >
> > --
> > @matthewadams12
> > mailto:[email protected]
> > skype:matthewadams12
> > yahoo:matthewadams
> > aol:matthewadams12
> > google-talk:[email protected]
> > msn:[email protected]
> > http://matthewadams.me
> > http://www.linkedin.com/in/matthewadams
> > _______________________________________________
> > aspectj-users mailing list
> > [email protected]
> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
> >
> _______________________________________________
> aspectj-users mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>



-- 
@matthewadams12
mailto:[email protected]
skype:matthewadams12
yahoo:matthewadams
aol:matthewadams12
google-talk:[email protected]
msn:[email protected]
http://matthewadams.me
http://www.linkedin.com/in/matthewadams
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users

Reply via email to