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.

PerThisNonStaticBeforeFancyHelloWorld.txt 5.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. public abstract class FancyHelloWorld extends java.lang.Object:
  2. public void <init>():
  3. ALOAD_0 // FancyHelloWorld this (line 7)
  4. INVOKESPECIAL java.lang.Object.<init> ()V
  5. constructor-execution(void FancyHelloWorld.<init>())
  6. | RETURN
  7. constructor-execution(void FancyHelloWorld.<init>())
  8. end public void <init>()
  9. public static void main(String[]):
  10. method-execution(void FancyHelloWorld.main(java.lang.String[]))
  11. | field-get(java.io.PrintStream java.lang.System.out)
  12. | | GETSTATIC java.lang.System.out Ljava/io/PrintStream; (line 9)
  13. | field-get(java.io.PrintStream java.lang.System.out)
  14. | ASTORE_1
  15. | finally -> E1
  16. | | catch java.lang.Exception -> E0
  17. | | | ALOAD_1 // java.io.PrintStream out (line 11)
  18. | | | LDC "bye"
  19. | | | ASTORE 5
  20. | | | ASTORE 6
  21. | | | method-call(void java.io.PrintStream.println(java.lang.String))
  22. | | | | ALOAD 6
  23. | | | | INVOKESTATIC Aspect.ajc$perObjectBind (Ljava/lang/Object;)V
  24. | | | | ALOAD 6
  25. | | | | INVOKESTATIC Aspect.hasAspect (Ljava/lang/Object;)Z
  26. | | | | IFEQ L0
  27. | | | | ALOAD 6
  28. | | | | INVOKESTATIC Aspect.aspectOf (Ljava/lang/Object;)LAspect;
  29. | | | | INVOKEVIRTUAL Aspect.ajc_before ()V
  30. | | | | L0: ALOAD 6
  31. | | | | ALOAD 5
  32. | | | | INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
  33. | | | method-call(void java.io.PrintStream.println(java.lang.String))
  34. | | | GOTO L2
  35. | | catch java.lang.Exception -> E0
  36. | | E0: ASTORE_2 (line 12)
  37. | | ALOAD_1 // java.io.PrintStream out (line 13)
  38. | | ALOAD_2 // java.lang.Exception e
  39. | | ASTORE 7
  40. | | ASTORE 8
  41. | | method-call(void java.io.PrintStream.println(java.lang.Object))
  42. | | | ALOAD 8
  43. | | | INVOKESTATIC Aspect.ajc$perObjectBind (Ljava/lang/Object;)V
  44. | | | ALOAD 8
  45. | | | INVOKESTATIC Aspect.hasAspect (Ljava/lang/Object;)Z
  46. | | | IFEQ L1
  47. | | | ALOAD 8
  48. | | | INVOKESTATIC Aspect.aspectOf (Ljava/lang/Object;)LAspect;
  49. | | | INVOKEVIRTUAL Aspect.ajc_before ()V
  50. | | | L1: ALOAD 8
  51. | | | ALOAD 7
  52. | | | INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/Object;)V
  53. | | method-call(void java.io.PrintStream.println(java.lang.Object))
  54. | finally -> E1
  55. | GOTO L2
  56. | E1: ASTORE 4 (line 14)
  57. | JSR L3
  58. | ALOAD 4
  59. | ATHROW
  60. | L2: JSR L3
  61. | GOTO L5
  62. | L3: ASTORE_3
  63. | ALOAD_1 // java.io.PrintStream out (line 15)
  64. | LDC "finally"
  65. | ASTORE 9
  66. | ASTORE 10
  67. | method-call(void java.io.PrintStream.println(java.lang.String))
  68. | | ALOAD 10
  69. | | INVOKESTATIC Aspect.ajc$perObjectBind (Ljava/lang/Object;)V
  70. | | ALOAD 10
  71. | | INVOKESTATIC Aspect.hasAspect (Ljava/lang/Object;)Z
  72. | | IFEQ L4
  73. | | ALOAD 10
  74. | | INVOKESTATIC Aspect.aspectOf (Ljava/lang/Object;)LAspect;
  75. | | INVOKEVIRTUAL Aspect.ajc_before ()V
  76. | | L4: ALOAD 10
  77. | | ALOAD 9
  78. | | INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
  79. | method-call(void java.io.PrintStream.println(java.lang.String))
  80. | RET 3 (line 10)
  81. | L5: RETURN (line 17)
  82. method-execution(void FancyHelloWorld.main(java.lang.String[]))
  83. end public static void main(String[])
  84. public static String getName():
  85. method-execution(java.lang.String FancyHelloWorld.getName())
  86. | ICONST_0 (line 20)
  87. | ISTORE_0
  88. | ILOAD_0 // int x (line 21)
  89. | LDC "name"
  90. | method-call(int java.lang.String.hashCode())
  91. | | INVOKEVIRTUAL java.lang.String.hashCode ()I
  92. | method-call(int java.lang.String.hashCode())
  93. | IADD
  94. | ISTORE_0 // int x
  95. | NEW java.lang.StringBuffer (line 22)
  96. | DUP
  97. | LDC "name"
  98. | constructor-call(void java.lang.StringBuffer.<init>(java.lang.String))
  99. | | INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
  100. | constructor-call(void java.lang.StringBuffer.<init>(java.lang.String))
  101. | ILOAD_0 // int x
  102. | method-call(java.lang.StringBuffer java.lang.StringBuffer.append(int))
  103. | | INVOKEVIRTUAL java.lang.StringBuffer.append (I)Ljava/lang/StringBuffer;
  104. | method-call(java.lang.StringBuffer java.lang.StringBuffer.append(int))
  105. | method-call(java.lang.String java.lang.StringBuffer.toString())
  106. | | INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
  107. | method-call(java.lang.String java.lang.StringBuffer.toString())
  108. | ARETURN
  109. method-execution(java.lang.String FancyHelloWorld.getName())
  110. end public static String getName()
  111. end public abstract class FancyHelloWorld