--- /dev/null
+/* This file is part of the compiler and core tools for the AspectJ(tm)
+ * programming language; see http://aspectj.org
+ *
+ * The contents of this file are subject to the Mozilla Public License
+ * Version 1.1 (the "License"); you may not use this file except in
+ * compliance with the License. You may obtain a copy of the License at
+ * either http://www.mozilla.org/MPL/ or http://aspectj.org/MPL/.
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is AspectJ.
+ *
+ * The Initial Developer of the Original Code is Palo Alto Research Center,
+ * Incorporated (PARC). Portions created by PARC are are
+ * Copyright (C) 2002 Palo Alto Research Center, Incorporated.
+ * All Rights Reserved.
+ *
+ * Contributor(s):
+ */
+package org.aspectj.weaver.test;
+import java.util.*;
+
+import org.aspectj.runtime.internal.*;
+import org.aspectj.runtime.internal.AroundClosure;
+import org.aspectj.lang.JoinPoint;
+
+public class Aspect {
+
+ public static void ajc_before_0() {
+ System.out.println("before_0");
+ }
+ public static void ajc_before_0(String s) {
+ System.out.println("before_0: " + s);
+ }
+ public static boolean ajc_around_0(ArrayList s, AroundClosure c) throws Throwable {
+ System.out.println("doing around, got " + s);
+ Object ret = c.run(new Object[] {s}); // proceed(s)
+ return ((Boolean) ret).booleanValue();
+ }
+
+ public static void ajc_before_0(java.util.ArrayList list) {
+ System.out.println("before_0: " + list);
+ }
+
+ public static void ajc_before_method_execution() {
+
+ }
+ public static void ajc_before_method_execution(Object o) {
+ System.out.println("before_method_execution: " + o);
+ }
+
+ public static void ajc_after_method_execution() {
+ System.out.println("after_method_execution");
+ }
+ public static void ajc_after_method_execution(Object o) {
+ System.out.println("after_method_execution: " + o);
+ }
+
+ public static void ajc_afterReturning_method_execution() {
+ System.out.println("ajc_afterReturning_method_execution");
+ }
+ public static void ajc_afterReturning_method_execution(Object o) {
+ System.out.println("afterReturning_method_execution: " + o);
+ }
+
+ public static void ajc_afterThrowing_method_execution() {
+ System.out.println("ajc_afterThrowing_method_execution");
+ }
+ public static void ajc_afterThrowing_method_execution(Object o) {
+ System.out.println("afterThrowing_method_execution: " + o);
+ }
+
+
+
+
+
+ public static Object ajc_around(AroundClosure closure) throws Throwable {
+ Object ret = closure.run(new Object[] {});
+ return ret;
+ }
+
+ public static Object ajc_around(AroundClosure closure, JoinPoint tjp) throws Throwable {
+ System.out.println("thisJoinPoint: " + tjp);
+ Object ret = closure.run(new Object[] {});
+ return ret;
+ }
+
+ // ---
+
+
+ public static void ajc_before_method_call() {
+ System.out.println("before_method_call");
+ }
+ public static void ajc_before_method_call(Object o) {
+ System.out.println("before_method_call: " + o);
+ }
+
+ public static void ajc_after_method_call() {
+ System.out.println("after_method_call");
+ }
+ public static void ajc_after_method_call(Object o) {
+ System.out.println("after_method_call: " + o);
+ }
+
+ public static void ajc_afterReturning_method_call() {
+ System.out.println("ajc_afterReturning_method_call");
+ }
+ public static void ajc_afterReturning_method_call(Object o) {
+ System.out.println("afterReturning_method_call: " + o);
+ }
+
+ public static void ajc_afterThrowing_method_call() {
+ System.out.println("ajc_afterThrowing_method_call");
+ }
+ public static void ajc_afterThrowing_method_call(Object o) {
+ System.out.println("afterThrowing_method_call: " + o);
+ }
+
+ public static Object ajc_around_method_call(AroundClosure closure) throws Throwable {
+ Object ret = null;
+ for (int i=0; i<3; i++) {
+ System.out.println("enter: " + i);
+ ret = closure.run(new Object[] {});
+ }
+ return ret;
+ }
+
+ // ----
+
+ public static void ajc_before_constructor_call() {
+ System.out.println("before_constructor_call");
+ }
+ public static void ajc_before_constructor_call(Object o) {
+ System.out.println("before_constructor_call: " + o);
+ }
+
+ public static void ajc_after_constructor_call() {
+ System.out.println("after_constructor_call");
+ }
+ public static void ajc_after_constructor_call(Object o) {
+ System.out.println("after_constructor_call: " + o);
+ }
+
+ public static void ajc_afterReturning_constructor_call() {
+ System.out.println("ajc_afterReturning_constructor_call");
+ }
+ public static void ajc_afterReturning_constructor_call(Object o) {
+ System.out.println("afterReturning_constructor_call: " + o);
+ }
+
+ public static void ajc_afterThrowing_constructor_call() {
+ System.out.println("ajc_afterThrowing_constructor_call");
+ }
+ public static void ajc_afterThrowing_constructor_call(Object o) {
+ System.out.println("afterThrowing_constructor_call: " + o);
+ }
+
+ public static Object ajc_around_constructor_call(AroundClosure closure) throws Throwable {
+ Object ret = null;
+ for (int i=0; i<3; i++) {
+ System.out.println("enter: " + i);
+ ret = closure.run(new Object[] {});
+ }
+ return ret;
+ }
+ // ----
+
+ public static void ajc_before_constructor_execution() {
+ System.out.println("before_constructor_execution");
+ }
+ public static void ajc_before_constructor_execution(Object o) {
+ System.out.println("before_constructor_execution: " + o);
+ }
+
+ public static void ajc_after_constructor_execution() {
+ System.out.println("after_constructor_execution");
+ }
+ public static void ajc_after_constructor_execution(Object o) {
+ System.out.println("after_constructor_execution: " + o);
+ }
+
+ public static void ajc_afterReturning_constructor_execution() {
+ System.out.println("ajc_afterReturning_constructor_execution");
+ }
+ public static void ajc_afterReturning_constructor_execution(Object o) {
+ System.out.println("afterReturning_constructor_execution: " + o);
+ }
+
+ public static void ajc_afterThrowing_constructor_execution() {
+ System.out.println("ajc_afterThrowing_constructor_execution");
+ }
+ public static void ajc_afterThrowing_constructor_execution(Object o) {
+ System.out.println("afterThrowing_constructor_execution: " + o);
+ }
+
+ public static Object ajc_around_constructor_execution(AroundClosure closure) throws Throwable {
+ Object ret = null;
+ for (int i=0; i<3; i++) {
+ System.out.println("enter: " + i);
+ ret = closure.run(new Object[] {});
+ }
+ return ret;
+ }
+
+
+ // ---
+
+
+ public static void ajc_before_field_get() {
+ System.out.println("before_field_get");
+ }
+ public static void ajc_before_field_get(Object o) {
+ System.out.println("before_field_get: " + o);
+ }
+
+ public static void ajc_after_field_get() {
+ System.out.println("after_field_get");
+ }
+ public static void ajc_after_field_get(Object o) {
+ System.out.println("after_field_get: " + o);
+ }
+
+ public static void ajc_afterReturning_field_get() {
+ System.out.println("afterReturning_field_get");
+ }
+ public static void ajc_afterReturning_field_get(Object o) {
+ System.out.println("afterReturning_field_get: " + o);
+ }
+
+ public static void ajc_afterThrowing_field_get() {
+ System.out.println("afterThrowing_field_get");
+ }
+ public static void ajc_afterThrowing_field_get(Object o) {
+ System.out.println("afterThrowing_field_get: " + o);
+ }
+ public static void ajc_afterThrowing_field_get(Throwable t) {
+ System.out.println("afterThrowing_field_get: " + t);
+ }
+
+ public static Object ajc_around_field_get(AroundClosure closure) throws Throwable {
+ Object ret = closure.run(new Object[] {});
+ return ret;
+ }
+
+
+ // ---
+
+
+ public static void ajc_before_field_set() {
+ System.out.println("before_field_set");
+ }
+ public static void ajc_before_field_set(Object o) {
+ System.out.println("before_field_set: " + o);
+ }
+
+ public static void ajc_after_field_set() {
+ System.out.println("after_field_set");
+ }
+ public static void ajc_after_field_set(Object o) {
+ System.out.println("after_field_set: " + o);
+ }
+
+ public static void ajc_afterReturning_field_set() {
+ System.out.println("afterReturning_field_set");
+ }
+ public static void ajc_afterReturning_field_set(Object o) {
+ System.out.println("afterReturning_field_set: " + o);
+ }
+
+ public static void ajc_afterThrowing_field_set() {
+ System.out.println("afterThrowing_field_set");
+ }
+ public static void ajc_afterThrowing_field_set(Object o) {
+ System.out.println("afterThrowing_field_set: " + o);
+ }
+ public static void ajc_afterThrowing_field_set(Throwable t) {
+ System.out.println("afterThrowing_field_set: " + t);
+ }
+
+ public static Object ajc_around_field_set(AroundClosure closure) throws Throwable {
+ Object ret = closure.run(new Object[] {});
+ return ret;
+ }
+
+ // don't call this method for callee-side call join points
+ public static void ajc_before(JoinPoint.StaticPart tjp) {
+ System.out.println("before: " + tjp);
+ if (tjp.getSourceLocation() == null) {
+ throw new RuntimeException("didn't want null");
+ }
+ System.out.println(" loc: " + tjp.getSourceLocation());
+ }
+
+ public static void ajc_before(JoinPoint tjp) {
+ System.out.println("before: " + tjp + " this = " + tjp.getThis() +
+ " target = " + tjp.getTarget() +
+ " args = " + Arrays.asList(tjp.getArgs()));
+ }
+
+ // per object stuff
+
+ private static Map objects = new HashMap();
+
+ public static void ajc$perObjectBind(Object o) {
+ if (objects.containsKey(o)) return;
+ objects.put(o, new Aspect());
+ }
+
+ public static boolean hasAspect(Object o) {
+ return objects.containsKey(o);
+ }
+
+ public static Aspect aspectOf(Object o) {
+ return (Aspect) objects.get(o);
+ }
+
+
+ // per cflow stuff
+
+ public static void ajc$perCflowPush() {
+ ajc$perCflowStack.pushInstance(new Aspect());
+ }
+
+ public static boolean hasAspect() {
+ return ajc$perCflowStack.isValid();
+ }
+
+ public static Aspect aspectOf() {
+ if (ajc$perSingletonInstance != null) return ajc$perSingletonInstance;
+
+ return (Aspect) ajc$perCflowStack.peekInstance();
+ }
+
+ public static CFlowStack ajc$perCflowStack = new CFlowStack();
+
+ // non-static methods
+
+ public static Aspect ajc$perSingletonInstance = new Aspect();
+ public void ajc_before() {
+ System.out.println("before in: " + this);
+ }
+
+ public static CFlowStack ajc$cflowStack$0 = new CFlowStack();
+
+
+}
--- /dev/null
+/* Copyright (c) 2002 Contributors.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Common Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * PARC initial implementation
+ */
+package org.aspectj.weaver.test;
+
+import java.io.*;
+import java.util.*;
+
+/**
+ * FIXME regen with an Eclipse 2.1 the testdata/bin with this new package
+ * same for all classes in that package
+ * and update tests then (pointcuts etc)
+ *
+ * @version 1.0
+ * @author
+ */
+public class DynamicHelloWorld implements Serializable {
+
+ public static void main(String[] args) {
+ try {
+ new DynamicHelloWorld().doit("hello", Collections.EMPTY_LIST);
+ } catch (UnsupportedOperationException t) {
+ System.out.println("expected and caught: " + t);
+ return;
+ }
+ throw new RuntimeException("should have caught exception");
+ }
+
+ String doit(String s, List l) {
+ l.add(s); // this will throw an exception
+ return l.toString();
+ }
+}
--- /dev/null
+/* Copyright (c) 2002 Contributors.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Common Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * PARC initial implementation
+ */
+package org.aspectj.weaver.test;
+
+import java.io.PrintStream;
+
+/**
+ * @version 1.0
+ * @author
+ */
+public abstract class FancyHelloWorld {
+ public static void main(String[] args) {
+ PrintStream out = System.out;
+ try {
+ out.println("bye");
+ } catch (Exception e) {
+ out.println(e);
+ } finally {
+ out.println("finally");
+ }
+ }
+
+ public static String getName() {
+ int x = 0;
+ x += "name".hashCode();
+ return "name" + x;
+ }
+}
--- /dev/null
+/* Copyright (c) 2002 Contributors.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Common Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * PARC initial implementation
+ */
+package org.aspectj.weaver.test;
+
+public class FieldyHelloWorld {
+
+ public static String str = "Hello";
+
+ public static void main(String[] args) {
+ str += " World";
+
+ System.out.println(str);
+ }
+}
--- /dev/null
+/* Copyright (c) 2002 Contributors.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Common Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * PARC initial implementation
+ */
+package org.aspectj.weaver.test;
+
+/**
+ * @version 1.0
+ * @author
+ */
+public class HelloWorld {
+
+ public static void main(String[] args) {
+ System.out
+ .println("hello world");
+ //System.out.println("hello world");
+ }
+}
--- /dev/null
+/* Copyright (c) 2002 Contributors.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Common Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * PARC initial implementation
+ */
+package org.aspectj.weaver.test;
+
+public class MultiArgHelloWorld {
+
+ public static void main(String[] args) {
+ foo("Hello", "World");
+ }
+
+ static void foo(Object s, Object t) {
+ System.out.println(s + " " + t);
+ }
+}
--- /dev/null
+/* Copyright (c) 2002 Contributors.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Common Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * PARC initial implementation
+ */
+package org.aspectj.weaver.test;
+
+import junit.framework.TestCase;
+
+public class Test extends TestCase {
+ public static void main(String[] args) {
+ foo()
+ .
+ foo();
+ }
+ public static Test foo() {
+ new Exception().printStackTrace();
+ return new Test();
+ }
+ public void testNothingForAntJUnit() {}
+}
--- /dev/null
+/* Copyright (c) 2002 Contributors.
+ *
+ * This program and the accompanying materials are made available
+ * under the terms of the Common Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * PARC initial implementation
+ */
+package org.aspectj.weaver.test;
+
+/**
+ * @author hilsdale
+ *
+ * To change this generated comment edit the template variable "typecomment":
+ * Window>Preferences>Java>Templates.
+ * To enable and disable the creation of type comments go to
+ * Window>Preferences>Java>Code Generation.
+ */
+public abstract class TestSwitchy {
+
+
+ public int i = 3;
+
+ public static final int j = 4;
+
+
+ public static void main(String[] args) {
+ switch (args.length) {
+ case 0: System.err.println("hi");
+ case 1: System.err.println("bye"); break;
+ case 2: System.err.println("two");
+ default: System.err.println("ning");
+ }
+ System.err.println("done");
+ }
+
+
+ abstract int goo();
+
+ void nimbo() {}
+}
+++ /dev/null
-/* This file is part of the compiler and core tools for the AspectJ(tm)
- * programming language; see http://aspectj.org
- *
- * The contents of this file are subject to the Mozilla Public License
- * Version 1.1 (the "License"); you may not use this file except in
- * compliance with the License. You may obtain a copy of the License at
- * either http://www.mozilla.org/MPL/ or http://aspectj.org/MPL/.
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is AspectJ.
- *
- * The Initial Developer of the Original Code is Palo Alto Research Center,
- * Incorporated (PARC). Portions created by PARC are are
- * Copyright (C) 2002 Palo Alto Research Center, Incorporated.
- * All Rights Reserved.
- *
- * Contributor(s):
- */
-package org.aspectj.weaver.test;
-import java.util.*;
-
-import org.aspectj.runtime.internal.*;
-import org.aspectj.runtime.internal.AroundClosure;
-import org.aspectj.lang.JoinPoint;
-
-public class Aspect {
-
- public static void ajc_before_0() {
- System.out.println("before_0");
- }
- public static void ajc_before_0(String s) {
- System.out.println("before_0: " + s);
- }
- public static boolean ajc_around_0(ArrayList s, AroundClosure c) throws Throwable {
- System.out.println("doing around, got " + s);
- Object ret = c.run(new Object[] {s}); // proceed(s)
- return ((Boolean) ret).booleanValue();
- }
-
- public static void ajc_before_0(java.util.ArrayList list) {
- System.out.println("before_0: " + list);
- }
-
- public static void ajc_before_method_execution() {
-
- }
- public static void ajc_before_method_execution(Object o) {
- System.out.println("before_method_execution: " + o);
- }
-
- public static void ajc_after_method_execution() {
- System.out.println("after_method_execution");
- }
- public static void ajc_after_method_execution(Object o) {
- System.out.println("after_method_execution: " + o);
- }
-
- public static void ajc_afterReturning_method_execution() {
- System.out.println("ajc_afterReturning_method_execution");
- }
- public static void ajc_afterReturning_method_execution(Object o) {
- System.out.println("afterReturning_method_execution: " + o);
- }
-
- public static void ajc_afterThrowing_method_execution() {
- System.out.println("ajc_afterThrowing_method_execution");
- }
- public static void ajc_afterThrowing_method_execution(Object o) {
- System.out.println("afterThrowing_method_execution: " + o);
- }
-
-
-
-
-
- public static Object ajc_around(AroundClosure closure) throws Throwable {
- Object ret = closure.run(new Object[] {});
- return ret;
- }
-
- public static Object ajc_around(AroundClosure closure, JoinPoint tjp) throws Throwable {
- System.out.println("thisJoinPoint: " + tjp);
- Object ret = closure.run(new Object[] {});
- return ret;
- }
-
- // ---
-
-
- public static void ajc_before_method_call() {
- System.out.println("before_method_call");
- }
- public static void ajc_before_method_call(Object o) {
- System.out.println("before_method_call: " + o);
- }
-
- public static void ajc_after_method_call() {
- System.out.println("after_method_call");
- }
- public static void ajc_after_method_call(Object o) {
- System.out.println("after_method_call: " + o);
- }
-
- public static void ajc_afterReturning_method_call() {
- System.out.println("ajc_afterReturning_method_call");
- }
- public static void ajc_afterReturning_method_call(Object o) {
- System.out.println("afterReturning_method_call: " + o);
- }
-
- public static void ajc_afterThrowing_method_call() {
- System.out.println("ajc_afterThrowing_method_call");
- }
- public static void ajc_afterThrowing_method_call(Object o) {
- System.out.println("afterThrowing_method_call: " + o);
- }
-
- public static Object ajc_around_method_call(AroundClosure closure) throws Throwable {
- Object ret = null;
- for (int i=0; i<3; i++) {
- System.out.println("enter: " + i);
- ret = closure.run(new Object[] {});
- }
- return ret;
- }
-
- // ----
-
- public static void ajc_before_constructor_call() {
- System.out.println("before_constructor_call");
- }
- public static void ajc_before_constructor_call(Object o) {
- System.out.println("before_constructor_call: " + o);
- }
-
- public static void ajc_after_constructor_call() {
- System.out.println("after_constructor_call");
- }
- public static void ajc_after_constructor_call(Object o) {
- System.out.println("after_constructor_call: " + o);
- }
-
- public static void ajc_afterReturning_constructor_call() {
- System.out.println("ajc_afterReturning_constructor_call");
- }
- public static void ajc_afterReturning_constructor_call(Object o) {
- System.out.println("afterReturning_constructor_call: " + o);
- }
-
- public static void ajc_afterThrowing_constructor_call() {
- System.out.println("ajc_afterThrowing_constructor_call");
- }
- public static void ajc_afterThrowing_constructor_call(Object o) {
- System.out.println("afterThrowing_constructor_call: " + o);
- }
-
- public static Object ajc_around_constructor_call(AroundClosure closure) throws Throwable {
- Object ret = null;
- for (int i=0; i<3; i++) {
- System.out.println("enter: " + i);
- ret = closure.run(new Object[] {});
- }
- return ret;
- }
- // ----
-
- public static void ajc_before_constructor_execution() {
- System.out.println("before_constructor_execution");
- }
- public static void ajc_before_constructor_execution(Object o) {
- System.out.println("before_constructor_execution: " + o);
- }
-
- public static void ajc_after_constructor_execution() {
- System.out.println("after_constructor_execution");
- }
- public static void ajc_after_constructor_execution(Object o) {
- System.out.println("after_constructor_execution: " + o);
- }
-
- public static void ajc_afterReturning_constructor_execution() {
- System.out.println("ajc_afterReturning_constructor_execution");
- }
- public static void ajc_afterReturning_constructor_execution(Object o) {
- System.out.println("afterReturning_constructor_execution: " + o);
- }
-
- public static void ajc_afterThrowing_constructor_execution() {
- System.out.println("ajc_afterThrowing_constructor_execution");
- }
- public static void ajc_afterThrowing_constructor_execution(Object o) {
- System.out.println("afterThrowing_constructor_execution: " + o);
- }
-
- public static Object ajc_around_constructor_execution(AroundClosure closure) throws Throwable {
- Object ret = null;
- for (int i=0; i<3; i++) {
- System.out.println("enter: " + i);
- ret = closure.run(new Object[] {});
- }
- return ret;
- }
-
-
- // ---
-
-
- public static void ajc_before_field_get() {
- System.out.println("before_field_get");
- }
- public static void ajc_before_field_get(Object o) {
- System.out.println("before_field_get: " + o);
- }
-
- public static void ajc_after_field_get() {
- System.out.println("after_field_get");
- }
- public static void ajc_after_field_get(Object o) {
- System.out.println("after_field_get: " + o);
- }
-
- public static void ajc_afterReturning_field_get() {
- System.out.println("afterReturning_field_get");
- }
- public static void ajc_afterReturning_field_get(Object o) {
- System.out.println("afterReturning_field_get: " + o);
- }
-
- public static void ajc_afterThrowing_field_get() {
- System.out.println("afterThrowing_field_get");
- }
- public static void ajc_afterThrowing_field_get(Object o) {
- System.out.println("afterThrowing_field_get: " + o);
- }
- public static void ajc_afterThrowing_field_get(Throwable t) {
- System.out.println("afterThrowing_field_get: " + t);
- }
-
- public static Object ajc_around_field_get(AroundClosure closure) throws Throwable {
- Object ret = closure.run(new Object[] {});
- return ret;
- }
-
-
- // ---
-
-
- public static void ajc_before_field_set() {
- System.out.println("before_field_set");
- }
- public static void ajc_before_field_set(Object o) {
- System.out.println("before_field_set: " + o);
- }
-
- public static void ajc_after_field_set() {
- System.out.println("after_field_set");
- }
- public static void ajc_after_field_set(Object o) {
- System.out.println("after_field_set: " + o);
- }
-
- public static void ajc_afterReturning_field_set() {
- System.out.println("afterReturning_field_set");
- }
- public static void ajc_afterReturning_field_set(Object o) {
- System.out.println("afterReturning_field_set: " + o);
- }
-
- public static void ajc_afterThrowing_field_set() {
- System.out.println("afterThrowing_field_set");
- }
- public static void ajc_afterThrowing_field_set(Object o) {
- System.out.println("afterThrowing_field_set: " + o);
- }
- public static void ajc_afterThrowing_field_set(Throwable t) {
- System.out.println("afterThrowing_field_set: " + t);
- }
-
- public static Object ajc_around_field_set(AroundClosure closure) throws Throwable {
- Object ret = closure.run(new Object[] {});
- return ret;
- }
-
- // don't call this method for callee-side call join points
- public static void ajc_before(JoinPoint.StaticPart tjp) {
- System.out.println("before: " + tjp);
- if (tjp.getSourceLocation() == null) {
- throw new RuntimeException("didn't want null");
- }
- System.out.println(" loc: " + tjp.getSourceLocation());
- }
-
- public static void ajc_before(JoinPoint tjp) {
- System.out.println("before: " + tjp + " this = " + tjp.getThis() +
- " target = " + tjp.getTarget() +
- " args = " + Arrays.asList(tjp.getArgs()));
- }
-
- // per object stuff
-
- private static Map objects = new HashMap();
-
- public static void ajc$perObjectBind(Object o) {
- if (objects.containsKey(o)) return;
- objects.put(o, new Aspect());
- }
-
- public static boolean hasAspect(Object o) {
- return objects.containsKey(o);
- }
-
- public static Aspect aspectOf(Object o) {
- return (Aspect) objects.get(o);
- }
-
-
- // per cflow stuff
-
- public static void ajc$perCflowPush() {
- ajc$perCflowStack.pushInstance(new Aspect());
- }
-
- public static boolean hasAspect() {
- return ajc$perCflowStack.isValid();
- }
-
- public static Aspect aspectOf() {
- if (ajc$perSingletonInstance != null) return ajc$perSingletonInstance;
-
- return (Aspect) ajc$perCflowStack.peekInstance();
- }
-
- public static CFlowStack ajc$perCflowStack = new CFlowStack();
-
- // non-static methods
-
- public static Aspect ajc$perSingletonInstance = new Aspect();
- public void ajc_before() {
- System.out.println("before in: " + this);
- }
-
- public static CFlowStack ajc$cflowStack$0 = new CFlowStack();
-
-
-}
+++ /dev/null
-/* Copyright (c) 2002 Contributors.
- *
- * This program and the accompanying materials are made available
- * under the terms of the Common Public License v1.0
- * which accompanies this distribution and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * PARC initial implementation
- */
-package org.aspectj.weaver.test;
-
-import java.io.*;
-import java.util.*;
-
-/**
- * FIXME regen with an Eclipse 2.1 the testdata/bin with this new package
- * same for all classes in that package
- * and update tests then (pointcuts etc)
- *
- * @version 1.0
- * @author
- */
-public class DynamicHelloWorld implements Serializable {
-
- public static void main(String[] args) {
- try {
- new DynamicHelloWorld().doit("hello", Collections.EMPTY_LIST);
- } catch (UnsupportedOperationException t) {
- System.out.println("expected and caught: " + t);
- return;
- }
- throw new RuntimeException("should have caught exception");
- }
-
- String doit(String s, List l) {
- l.add(s); // this will throw an exception
- return l.toString();
- }
-}
+++ /dev/null
-/* Copyright (c) 2002 Contributors.
- *
- * This program and the accompanying materials are made available
- * under the terms of the Common Public License v1.0
- * which accompanies this distribution and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * PARC initial implementation
- */
-package org.aspectj.weaver.test;
-
-import java.io.PrintStream;
-
-/**
- * @version 1.0
- * @author
- */
-public abstract class FancyHelloWorld {
- public static void main(String[] args) {
- PrintStream out = System.out;
- try {
- out.println("bye");
- } catch (Exception e) {
- out.println(e);
- } finally {
- out.println("finally");
- }
- }
-
- public static String getName() {
- int x = 0;
- x += "name".hashCode();
- return "name" + x;
- }
-}
+++ /dev/null
-/* Copyright (c) 2002 Contributors.
- *
- * This program and the accompanying materials are made available
- * under the terms of the Common Public License v1.0
- * which accompanies this distribution and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * PARC initial implementation
- */
-package org.aspectj.weaver.test;
-
-public class FieldyHelloWorld {
-
- public static String str = "Hello";
-
- public static void main(String[] args) {
- str += " World";
-
- System.out.println(str);
- }
-}
+++ /dev/null
-/* Copyright (c) 2002 Contributors.
- *
- * This program and the accompanying materials are made available
- * under the terms of the Common Public License v1.0
- * which accompanies this distribution and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * PARC initial implementation
- */
-package org.aspectj.weaver.test;
-
-/**
- * @version 1.0
- * @author
- */
-public class HelloWorld {
-
- public static void main(String[] args) {
- System.out
- .println("hello world");
- //System.out.println("hello world");
- }
-}
+++ /dev/null
-/* Copyright (c) 2002 Contributors.
- *
- * This program and the accompanying materials are made available
- * under the terms of the Common Public License v1.0
- * which accompanies this distribution and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * PARC initial implementation
- */
-package org.aspectj.weaver.test;
-
-public class MultiArgHelloWorld {
-
- public static void main(String[] args) {
- foo("Hello", "World");
- }
-
- static void foo(Object s, Object t) {
- System.out.println(s + " " + t);
- }
-}
+++ /dev/null
-/* Copyright (c) 2002 Contributors.
- *
- * This program and the accompanying materials are made available
- * under the terms of the Common Public License v1.0
- * which accompanies this distribution and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * PARC initial implementation
- */
-package org.aspectj.weaver.test;
-
-import junit.framework.TestCase;
-
-public class Test extends TestCase {
- public static void main(String[] args) {
- foo()
- .
- foo();
- }
- public static Test foo() {
- new Exception().printStackTrace();
- return new Test();
- }
- public void testNothingForAntJUnit() {}
-}
+++ /dev/null
-/* Copyright (c) 2002 Contributors.
- *
- * This program and the accompanying materials are made available
- * under the terms of the Common Public License v1.0
- * which accompanies this distribution and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * PARC initial implementation
- */
-package org.aspectj.weaver.test;
-
-/**
- * @author hilsdale
- *
- * To change this generated comment edit the template variable "typecomment":
- * Window>Preferences>Java>Templates.
- * To enable and disable the creation of type comments go to
- * Window>Preferences>Java>Code Generation.
- */
-public abstract class TestSwitchy {
-
-
- public int i = 3;
-
- public static final int j = 4;
-
-
- public static void main(String[] args) {
- switch (args.length) {
- case 0: System.err.println("hi");
- case 1: System.err.println("bye"); break;
- case 2: System.err.println("two");
- default: System.err.println("ning");
- }
- System.err.println("done");
- }
-
-
- abstract int goo();
-
- void nimbo() {}
-}