diff options
author | aclement <aclement> | 2006-01-20 09:26:04 +0000 |
---|---|---|
committer | aclement <aclement> | 2006-01-20 09:26:04 +0000 |
commit | f51e0736ed52ca6bc3689981f53718b62471251a (patch) | |
tree | 0adf699a53a6a92c4ad3ed9dcad9b814ada0c0f8 /org.aspectj.ajdt.core | |
parent | 7e6cfb2bbb19a01ba9043a3e791d9128dd162e75 (diff) | |
download | aspectj-f51e0736ed52ca6bc3689981f53718b62471251a.tar.gz aspectj-f51e0736ed52ca6bc3689981f53718b62471251a.zip |
77166 - newarray joinpoint support. "-Xjoinpoints:arrayconstruction"
Diffstat (limited to 'org.aspectj.ajdt.core')
4 files changed, 14 insertions, 0 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java index 2f4eea60e..16c4f67a3 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java @@ -532,6 +532,8 @@ public class BuildArgParser extends Main { buildConfig.setNoAtAspectJAnnotationProcessing(true); } else if (arg.equals("-Xdev:Pinpoint")) { buildConfig.setXdevPinpointMode(true); + } else if (arg.equals("-Xjoinpoints:arrayconstruction")) { + buildConfig.setXJoinpoints("arrayconstruction"); } else if (arg.equals("-noweave") || arg.equals( "-XnoWeave")) { buildConfig.setNoWeave(true); } else if (arg.equals("-XserializableAspects")) { diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java index c8dcb428d..70cd246c4 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java @@ -379,6 +379,7 @@ public class AjBuildConfig { setProceedOnError(true); } setTargetAspectjRuntimeLevel(global.getTargetAspectjRuntimeLevel()); + setXJoinpoints(global.getXJoinpoints()); if (!isXHasMemberEnabled() && global.isXHasMemberEnabled()) { setXHasMemberSupport(true); } @@ -469,6 +470,14 @@ public class AjBuildConfig { public void setXserializableAspects(boolean xserializableAspects) { options.xSerializableAspects = xserializableAspects; } + + public void setXJoinpoints(String jps) { + options.xOptionalJoinpoints = jps; + } + + public String getXJoinpoints() { + return options.xOptionalJoinpoints; + } public boolean isXnoInline() { return options.xNoInline; diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java index 1468bed19..59721acbd 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java @@ -616,6 +616,7 @@ public class AjBuildManager implements IOutputClassFileNameProvider,IBinarySourc BcelWorld bcelWorld = new BcelWorld(cp, handler, null); bcelWorld.setBehaveInJava5Way(buildConfig.getBehaveInJava5Way()); bcelWorld.setTargetAspectjRuntimeLevel(buildConfig.getTargetAspectjRuntimeLevel()); + bcelWorld.setOptionalJoinpoints(buildConfig.getXJoinpoints()); bcelWorld.setXnoInline(buildConfig.isXnoInline()); bcelWorld.setXlazyTjp(buildConfig.isXlazyTjp()); bcelWorld.setXHasMemberSupportEnabled(buildConfig.isXHasMemberEnabled()); diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java index d5f04d885..7239541e4 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java @@ -71,6 +71,8 @@ public class AjCompilerOptions extends CompilerOptions { public boolean xdevPinpoint = false; public boolean showWeavingInformation = false; + public String xOptionalJoinpoints = null; + // If true - autoboxing behaves differently ... public boolean behaveInJava5Way = false; |