diff options
Diffstat (limited to 'tests/base/test103/Driver.java')
-rw-r--r-- | tests/base/test103/Driver.java | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/tests/base/test103/Driver.java b/tests/base/test103/Driver.java new file mode 100644 index 000000000..68961d801 --- /dev/null +++ b/tests/base/test103/Driver.java @@ -0,0 +1,56 @@ +// -*- 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 {} |