table of contents
other versions
- buster 5.28.1-6+deb10u1
- testing 5.32.1-4
- unstable 5.32.1-5
- experimental 5.34.0~rc2-1
autodie::Scope::GuardStack(3perl) | Perl Programmers Reference Guide | autodie::Scope::GuardStack(3perl) |
NAME¶
autodie::Scope::GuardStack - Hook stack for managing scopes via %^HSYNOPSIS¶
use autodie::Scope::GuardStack; my $stack = autodie::Scope::GuardStack->new $^H{'my-key'} = $stack; $stack->push_hook(sub {});
DESCRIPTION¶
This class is a stack of hooks to be called in the right order as scopes go away. The stack is only useful when inserted into "%^H" and will pop hooks as their "scope" is popped. This is useful for uninstalling or reinstalling subs in a namespace as a pragma goes out of scope.Due to how "%^H" works, this class is only useful during the compilation phase of a perl module and relies on the internals of how perl handles references in "%^H". This module is not a part of autodie's public API.
Methods¶
newmy $stack = autodie::Scope::GuardStack->new;
Creates a new "autodie::Scope::GuardStack". The stack is initially empty and must be inserted into "%^H" by the creator.
push_hook
$stack->push_hook(sub {});
Add a sub to the stack. The sub will be called once the current compile-time "scope" is left. Multiple hooks can be added per scope
AUTHOR¶
Copyright 2013, Niels Thykier <niels@thykier.net>LICENSE¶
This module is free software. You may distribute it under the same terms as Perl itself.2020-07-21 | perl v5.28.1 |