mirror of
https://github.com/eclipse-aspectj/aspectj.git
synced 2024-09-13 15:45:38 +02:00
57 lines
996 B
Java
57 lines
996 B
Java
|
// -*- Mode: java; -*-
|
||
|
import org.aspectj.testing.Tester;
|
||
|
|
||
|
public class Driver {
|
||
|
|
||
|
public static void main(String[] args) { test(); }
|
||
|
|
||
|
public static void test() {
|
||
|
MagicKey key = new MagicKey();
|
||
|
|
||
|
Pos p1 = new Pos(key);
|
||
|
|
||
|
Tester.checkEqual(p1.getOther(), 1, "introduced value");
|
||
|
}
|
||
|
}
|
||
|
class Pos {
|
||
|
|
||
|
int _x = 0;
|
||
|
int _y = 0;
|
||
|
|
||
|
public int getX() {
|
||
|
return(_x);
|
||
|
}
|
||
|
|
||
|
public int getY() {
|
||
|
return(_y);
|
||
|
}
|
||
|
|
||
|
public void move(int x, int y) {
|
||
|
_x = x;
|
||
|
_y = y;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
aspect Foo {
|
||
|
// this has been declared illegal syntax as of 4/19/99, see below for fix
|
||
|
// introduce public int Pos.id = 1, Pos.other;
|
||
|
|
||
|
//introduction Pos {
|
||
|
//XXX might want to test for this in the future
|
||
|
//public int Pos.id=1, Pos.other;
|
||
|
public int Pos.id=1;
|
||
|
public int Pos.other;
|
||
|
|
||
|
int Pos.getOther() {
|
||
|
return other;
|
||
|
}
|
||
|
|
||
|
Pos.new(MagicKey key) {
|
||
|
other = id;
|
||
|
id = getOther();
|
||
|
}
|
||
|
//}
|
||
|
}
|
||
|
|
||
|
class MagicKey {}
|