summaryrefslogtreecommitdiffstats
path: root/tests/java5/generics/genericaspects/GenericAspectG.aj
blob: 4925f93150b48ada0b57ef32324da522d51249c4 (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
import java.util.*;

abstract aspect GenericAspect<A> {

  interface SimpleI<N extends Number> {}

  declare parents: A implements SimpleI<Integer>;

  public    void SimpleI<N>.m1() {};
  public List<N> SimpleI<N>.m2() {return null;};
  public    void SimpleI<N>.m3(List<N> ln) {};
  public    void SimpleI<N>.m4(N n) {};

}

aspect GenericAspectG extends GenericAspect<Base> {
  public static void main(String []argv) {
    Base b = new Base();

    b.m1();
    List<Integer> ln = b.m2();
    b.m3(new ArrayList<Integer>());
    b.m4(new Integer(5));
  }
}

class Base {}