aboutsummaryrefslogtreecommitdiffstats
path: root/tests/features153/ptw/CaseFour.java
blob: 735bbd4e0f42c30f7aa70eb1bd3773740a7f897d (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
25
26
27
28
// Types in packages

package a.b;

class AClass {}
class BClass {}
class CClass {}

public aspect CaseFour pertypewithin(*Class) {
  public static void main(String []argv) {
    new Runner().run();
  }
}

class Runner {
  public void run() {
    CaseFour aInstance = (CaseFour.hasAspect(AClass.class)?CaseFour.aspectOf(AClass.class):null);
    CaseFour bInstance = (CaseFour.hasAspect(BClass.class)?CaseFour.aspectOf(BClass.class):null);
    CaseFour cInstance = (CaseFour.hasAspect(CClass.class)?CaseFour.aspectOf(CClass.class):null);

    System.out.println("BClass aspect instance gives a within type name of "+
                       (bInstance==null?"<null>":bInstance.getWithinTypeName()));
    System.out.println("CClass aspect instance gives a within type name of "+
                       (cInstance==null?"<null>":cInstance.getWithinTypeName()));
    System.out.println("AClass aspect instance gives a within type name of "+
                       (aInstance==null?"<null>":aInstance.getWithinTypeName()));
  }
}