You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

FieldInitializerJoinPoints.java 3.1KB

21 lat temu
21 lat temu
21 lat temu
21 lat temu
21 lat temu
21 lat temu
21 lat temu
21 lat temu
21 lat temu
21 lat temu
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. // This test verifies that join points exist in the execution of field initializers.
  2. import org.aspectj.testing.Tester;
  3. //class Tester {
  4. // public static void checkEqual(int i1, int i2, String s) {
  5. // System.err.println(s + ": " + i1 + " == " + i2);
  6. // }
  7. //}
  8. public class FieldInitializerJoinPoints {
  9. static int jcount = 0;
  10. static int kcount = 0;
  11. static int lcount = 0;
  12. static int mcount = 0;
  13. static int ncount = 0;
  14. static int ocount = 0;
  15. static int pcount = 0;
  16. static int qcount = 0;
  17. static int nMcount = 0;
  18. static int oMcount = 0;
  19. static int pMcount = 0;
  20. static int qMcount = 0;
  21. static final int j = 99; // not even a set join point here.
  22. static int k = 98; // a set join point
  23. final int l = 97; // not a join point (constant final)
  24. int m = 96; // yet another set join point
  25. void foo() {
  26. int i = 97;
  27. switch(i) {
  28. case l: System.err.println(l);
  29. }
  30. }
  31. static int n() { return 95; }
  32. static int o() { return 94; }
  33. static int p() { return 93; }
  34. static int q() { return 92; }
  35. static final int n = n(); // a call and set join point
  36. static int o = o(); // a call and set join point
  37. final int p = p(); // a call and set join point
  38. int q = q(); // a call and set join point
  39. public static void main(String[] args) {
  40. new FieldInitializerJoinPoints();
  41. new FieldInitializerJoinPoints();
  42. Tester.checkEqual(jcount, 0, "jcount");
  43. Tester.checkEqual(kcount, 1, "kcount");
  44. Tester.checkEqual(lcount, 0, "lcount");
  45. Tester.checkEqual(mcount, 2, "mcount");
  46. Tester.checkEqual(ncount, 1, "ncount");
  47. Tester.checkEqual(ocount, 1, "ocount");
  48. Tester.checkEqual(pcount, 2, "pcount");
  49. Tester.checkEqual(qcount, 2, "qcount");
  50. Tester.checkEqual(nMcount, 1, "nMcount");
  51. Tester.checkEqual(oMcount, 1, "oMcount");
  52. Tester.checkEqual(pMcount, 2, "pMcount");
  53. Tester.checkEqual(qMcount, 2, "qMcount");
  54. }
  55. }
  56. aspect A {
  57. public static void mumble(FieldInitializerJoinPoints fp) {
  58. System.err.println(fp.l);
  59. }
  60. before(): set(int FieldInitializerJoinPoints.j) { FieldInitializerJoinPoints.jcount++; }
  61. before(): set(int FieldInitializerJoinPoints.k) { FieldInitializerJoinPoints.kcount++; }
  62. before(): set(int FieldInitializerJoinPoints.l) { FieldInitializerJoinPoints.lcount++; }
  63. before(): set(int FieldInitializerJoinPoints.m) { FieldInitializerJoinPoints.mcount++; }
  64. before(): set(int FieldInitializerJoinPoints.n) { FieldInitializerJoinPoints.ncount++; }
  65. before(): set(int FieldInitializerJoinPoints.o) { FieldInitializerJoinPoints.ocount++; }
  66. before(): set(int FieldInitializerJoinPoints.p) { FieldInitializerJoinPoints.pcount++; }
  67. before(): set(int FieldInitializerJoinPoints.q) { FieldInitializerJoinPoints.qcount++; }
  68. before(): call(int FieldInitializerJoinPoints.n()) { FieldInitializerJoinPoints.nMcount++; }
  69. before(): call(int FieldInitializerJoinPoints.o()) { FieldInitializerJoinPoints.oMcount++; }
  70. before(): call(int FieldInitializerJoinPoints.p()) { FieldInitializerJoinPoints.pMcount++; }
  71. before(): call(int FieldInitializerJoinPoints.q()) { FieldInitializerJoinPoints.qMcount++; }
  72. }