Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [aspectj-dev] declare annotation syntax

 
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Wes Isberg wrote:
>   declare annotation : *.*Test : @Test;
>   declare annotation : * *Test : @Test;
>   declare annotation : (Test+) *Test : @Test;
>   declare annotation : (Test+) *(Test) : @Test;
>   declare annotation : @Test (Test+)* : @Robust;
>   declare annotation : @Test * * : @Robust;
>   declare annotation : @Test * @Critical *.*(..): @Robust;
I agree that this is *very* confusing... 
 
> How about this (cheating a bit on the examples):
> 
>   declare @field : *..testing..* *: @TestOnly;
>   declare @constructor : @Test test*.new(): @TestMethod;
>   declare @method : @Test void test*(): @TestMethod;
>   declare @class : (*Test && Test+) : @TestClass;
This is indeed much clearer in my opinion.
Something I am missing here: What about package annotations,
actually? Are those not going to be available?
 
> P.S. - I considered collapsing "method" and "constructor" into
> "code" for brevity, but preferred being direct.
I think constructor/method is much clearer, given you don't actually
annotate "code" (you annotate *declarations*, which could also mean
declarations in interfaces).

Hope that helps,
Eric

- -- 
Eric Bodden
Chair I2 for Programming Languages and Program Analysis
RWTH Aachen University

-----BEGIN PGP SIGNATURE-----
Version: PGP 8.0.3

iQA/AwUBQfjs3cwiFCm7RlWCEQKDZgCffXQMaKkXiFFfZX9N8dca7p9IAesAniji
WSxsrsKqRipKNBhkrXnexodW
=Jmlx
-----END PGP SIGNATURE-----




Back to the top