Scroll to navigation

Aspect::Pointcut::Highest(3pm) User Contributed Perl Documentation Aspect::Pointcut::Highest(3pm)


Aspect::Pointcut::Highest - Pointcut for preventing recursive matching


  use Aspect;
  # High-level creation
  my $pointcut1 = highest;
  # Manual creation
  my $pointcut2 = Aspect::Pointcut::Highest->new;


For aspects including timers and other Aspect::Advice::Around-based advice, recursion can be significant problem.

The "highest" pointcut solves this problem by matching only on the highest invocation of a function. If the function is called again recursively within the first call, at any depth, the deeper calls will be not match and the advice will not be executed.


Adam Kennedy <>

Marcel Grünauer <>

Ran Eilam <>


Copyright 2001 by Marcel Grünauer

Some parts copyright 2009 - 2013 Adam Kennedy.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2022-06-08 perl v5.34.0