summaryrefslogtreecommitdiffstats
path: root/weaver
diff options
context:
space:
mode:
authoraclement <aclement>2005-04-19 12:20:29 +0000
committeraclement <aclement>2005-04-19 12:20:29 +0000
commit25f27750e1a08d1cb0b1242de4cc5321d830ca3a (patch)
tree46315a449b4d905481b3737e1ed94c61f1d96476 /weaver
parent278bdc1baabe0901114b8fb4dfe4261df33dd286 (diff)
downloadaspectj-25f27750e1a08d1cb0b1242de4cc5321d830ca3a.tar.gz
aspectj-25f27750e1a08d1cb0b1242de4cc5321d830ca3a.zip
from branch: add aspectOf() via a munger
Diffstat (limited to 'weaver')
-rw-r--r--weaver/src/org/aspectj/weaver/patterns/PerCflow.java8
-rw-r--r--weaver/src/org/aspectj/weaver/patterns/PerObject.java8
2 files changed, 16 insertions, 0 deletions
diff --git a/weaver/src/org/aspectj/weaver/patterns/PerCflow.java b/weaver/src/org/aspectj/weaver/patterns/PerCflow.java
index 3c7c2067f..97c06bc55 100644
--- a/weaver/src/org/aspectj/weaver/patterns/PerCflow.java
+++ b/weaver/src/org/aspectj/weaver/patterns/PerCflow.java
@@ -95,6 +95,14 @@ public class PerCflow extends PerClause {
xcut.addConcreteShadowMunger(
Advice.makePerCflowEntry(world, concreteEntry, isBelow, cflowStackField,
inAspect, innerCflowEntries));
+
+ //ATAJ: add a munger to add the aspectOf(..) to the @AJ aspects
+ if (inAspect.isAnnotationStyleAspect()) {
+ inAspect.crosscuttingMembers.addTypeMunger(
+ inAspect.getWorld().makePerClauseAspect(inAspect, getKind())
+ );
+ }
+
return ret;
}
diff --git a/weaver/src/org/aspectj/weaver/patterns/PerObject.java b/weaver/src/org/aspectj/weaver/patterns/PerObject.java
index 76d7425bb..b4283bc0e 100644
--- a/weaver/src/org/aspectj/weaver/patterns/PerObject.java
+++ b/weaver/src/org/aspectj/weaver/patterns/PerObject.java
@@ -105,6 +105,14 @@ public class PerObject extends PerClause {
ResolvedTypeMunger munger =
new PerObjectInterfaceTypeMunger(inAspect, concreteEntry);
inAspect.crosscuttingMembers.addTypeMunger(world.concreteTypeMunger(munger, inAspect));
+
+ //ATAJ: add a munger to add the aspectOf(..) to the @AJ aspects
+ if (inAspect.isAnnotationStyleAspect()) {
+ inAspect.crosscuttingMembers.addTypeMunger(
+ inAspect.getWorld().makePerClauseAspect(inAspect, getKind())
+ );
+ }
+
return ret;
}