There is not an easy way to reverse the truth table when matching methods and classes. I suggest adding the following binder method:
notMatch()
It would still create an instance of coldbox.system.aop.Matcher but would pass a flag into init to reverse the match. Simply invert the result.
This would make requirements such as "match every method EXCEPT init()" much easier to implement.
Add the same functionality to annotations for auto-binding aspects
Or alternatively, put the "not" on the beginning of the annotation value: