Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
autodie::Scope::GuardStPerl3Programmers	Referenceautodie::Scope::GuardStack(3)

NAME
       autodie::Scope::GuardStack -  Hook stack	for managing scopes via	%^H

SYNOPSIS
	   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
       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

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.

perl v5.35.11			  2022-03-27	 autodie::Scope::GuardStack(3)

NAME | SYNOPSIS | DESCRIPTION | AUTHOR | LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=autodie::Scope::GuardStack&sektion=3&manpath=FreeBSD+13.1-RELEASE+and+Ports>

home | help