blob: 8c7cb28bb394e1b44ab3dccc8517700d5c232550 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
abstract aspect GenAsp<T> {
public abstract T transform(T x);
T around() : execution(T *(*)) {return transform(proceed());}
}
aspect IntAsp extends GenAsp<Integer> {
public Integer transform(Integer x) {return x;} // identity transformation
}
public class IntAspTest {
static Integer mylength(String x) {return x.length();}
public static void main(String[] args) {
try {
System.out.println(mylength(""));
} catch (StackOverflowError soe) {
}
}
}
|