diff options
author | aclement <aclement> | 2005-02-08 11:14:14 +0000 |
---|---|---|
committer | aclement <aclement> | 2005-02-08 11:14:14 +0000 |
commit | cc6a37364a6eac962de2f3af693898bfc2cec9c5 (patch) | |
tree | 832dcba9071f3fc65d034058ad57a934b8e3edba | |
parent | 70d7c0de3083547dccbcacdc62e5b91142c3a4d7 (diff) | |
download | aspectj-cc6a37364a6eac962de2f3af693898bfc2cec9c5.tar.gz aspectj-cc6a37364a6eac962de2f3af693898bfc2cec9c5.zip |
Performance optimization - don't use toString() of a pointcut on the main code path.
-rw-r--r-- | weaver/src/org/aspectj/weaver/patterns/PointcutRewriter.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/weaver/src/org/aspectj/weaver/patterns/PointcutRewriter.java b/weaver/src/org/aspectj/weaver/patterns/PointcutRewriter.java index 8b725721b..f6383e575 100644 --- a/weaver/src/org/aspectj/weaver/patterns/PointcutRewriter.java +++ b/weaver/src/org/aspectj/weaver/patterns/PointcutRewriter.java @@ -193,7 +193,8 @@ public class PointcutRewriter { if (element instanceof IfPointcut) { if (((IfPointcut)element).alwaysFalse()) return Pointcut.makeMatchesNothing(element.state); } - if (element.toString().equals("")) return element; // matches nothing... + // If it can't match anything, the whole AND can't match anything + if (element.couldMatchKinds().isEmpty()) return element; } if (apc.couldMatchKinds().isEmpty()) return Pointcut.makeMatchesNothing(apc.state); // write out with cheapest on left |