Aspect...Highest(3pm)
π NAME π
Aspect::Pointcut::Highest β the pointcut that stops recursive matching from ruining your whole entire day, bestie π
β¨ SYNOPSIS β¨
okay so you wanna use it? two ways, pick your fighter π«Ά
use Aspect;
# High-level creation
my $pointcut1 = highest;
# Manual creation
my $pointcut2 = Aspect::Pointcut::Highest->new;
π¦ DESCRIPTION π¦
so here's the tea β if you're writing aspects β think timers, think anything built on Aspect::Advice::Around β recursion can be a genuinely significant problem. like, lowkey a menace.
the highest pointcut fixes that by matching only on the highest invocation of a function. that's it, that's the whole vibe. β¨
so if that function gets called again recursively inside the first call β and we mean at any depth, no matter how deep the rabbit hole goes π β those deeper calls will not match, and the advice will not be executed. periodt. π
π AUTHORS π
the iconic legends who made this happen:
- Adam Kennedy
<adamk@cpan.org> - Marcel GrΓΌnauer
<marcel@cpan.org> - Ran Eilam
<eilara@cpan.org>
π COPYRIGHT π
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.
and that's the whole page, bestie πΈ this lil doc shipped with perl v5.36.0 and was dated 2023-07-02 β go forth and slay your recursion problems ππ¦β¨
π¦ where this page comes from
- debian trixie: libaspect-perl 1.04-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: libaspect-perl 1.04-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libaspect-perl 1.04-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libaspect-perl 1.04-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms