org.aspectj/tests/base/test103/Driver.java
2002-12-16 18:51:06 +00:00

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 {}