Changes for version 0.43

  • Fixed a pointcut optimisation problem where we were currying away call checking in complex nested pointcuts where runtime pointcuts needed to retain the call checking to limit the run-time checks to an appropriate subset of the total number of functions hooked.
  • More elements of what will ultimately become the pointcut context are passed through to the curried pointcut tests (in preparation for moving to a File::Find::Rule-like string-eval-compiled form of the pointcut.

Modules

Aspect-Oriented Programming (AOP) for Perl
Change how Perl code is run at a pointcut
a pointcut context for advice code
A breakpoint aspect
Observer pattern with events
A singleton aspect
A wormhole between call frames
Base class for reusable aspects
pointcut base class
Logical 'and' operation pointcut
Call pointcut
Cflow pointcut
Logical 'not' operation pointcut
Logical 'or' operation pointcut
Exception typing pointcut
A pointcut for the wantarray call context

Provides

in lib/Aspect/Advice/After.pm
in lib/Aspect/Advice/AfterReturning.pm
in lib/Aspect/Advice/AfterThrowing.pm
in lib/Aspect/Advice/Around.pm
in lib/Aspect/Advice/Before.pm
in lib/Aspect/Context.pm
in lib/Aspect/Context/After.pm
in lib/Aspect/Context/AfterReturning.pm
in lib/Aspect/Context/AfterThrowing.pm
in lib/Aspect/Context/Around.pm
in lib/Aspect/Context/Before.pm
in lib/Aspect/Advice/After.pm
in lib/Aspect/Advice/AfterReturning.pm
in lib/Aspect/Advice/AfterThrowing.pm
in lib/Aspect/Advice/Around.pm
in lib/Aspect/Advice/Before.pm
in lib/Aspect/Hook.pm
in lib/Aspect/Library.pm
in lib/Aspect/Library/Listenable/Event.pm
in lib/Aspect/Pointcut/Highest.pm
in lib/Aspect/Pointcut/If.pm
in lib/Aspect/Pointcut/Logic.pm