autodie::Scope::GuardStack − Hook stack for managing scopes via %ˆH
use
autodie::Scope::GuardStack;
my $stack = autodie::Scope::GuardStack−>new
$ˆH{'my−key'} = $stack;
$stack−>push_hook(sub {});
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.
new
my $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
Copyright 2013, Niels Thykier <[email protected]>
This module is free software. You may distribute it under the same terms as Perl itself.