blob: a9108cca75f1274323e3d0dba78f41d756bdaaa7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
import java.lang.annotation.*;
@Retention(RetentionPolicy.RUNTIME)
@interface Annot {}
class Person {}
aspect DeclareAnnot {
declare @constructor: (Person.new()) || (Person.new(*)) : @Annot;
// declare @method: (* *.get*()) && (boolean *.is*()): @Annot;
/*
declare @field: String *.* && boolean *.* : @Annot;
declare @constructor: Person.new() && Person.new(*) : @Annot;
declare @method: !(* *.get*()): @Annot;
declare @field: !(String *.*) : @Annot;
declare @constructor: !(Person.new()) : @Annot;
*/
}
|