X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSub%2FName.pm;h=09e66d4700923e7fb252c69b8cdb890bb90ef3b4;hb=c2501c3b6b956ebe80318851be9d54a5d77a59f9;hp=f5881be57e5607ad6c4f89e796ab01d582e2e6b5;hpb=d73d8321f16899e7adbd8faf9d9c6db8b84fca12;p=p5sagit%2FSub-Name.git diff --git a/lib/Sub/Name.pm b/lib/Sub/Name.pm index f5881be..09e66d4 100644 --- a/lib/Sub/Name.pm +++ b/lib/Sub/Name.pm @@ -1,10 +1,7 @@ -# $Id: Name.pm,v 1.5 2004/08/18 17:53:45 xmath Exp $ - package Sub::Name; +# ABSTRACT: (re)name a sub -=head1 NAME - -Sub::Name - (re)name a sub +=pod =head1 SYNOPSIS @@ -18,25 +15,38 @@ Sub::Name - (re)name a sub This module has only one function, which is also exported by default: +=for stopwords subname + =head2 subname NAME, CODEREF -Assigns a new name to referenced sub. If package specification is omitted in +Assigns a new name to referenced sub. If package specification is omitted in the name, then the current package is used. The return value is the sub. -The name is only used for informative routines (caller, Carp, etc). You won't -be able to actually invoke the sub by the given name. To allow that, you need +The name is only used for informative routines (caller, Carp, etc). You won't +be able to actually invoke the sub by the given name. To allow that, you need to do glob-assignment yourself. -Note that for anonymous closures (subs that reference lexicals declared outside -the sub itself) you can name each instance of the closure differently, which +Note that for anonymous closures (subs that reference lexicals declared outside +the sub itself) you can name each instance of the closure differently, which can be very useful for debugging. -=head1 AUTHOR +=head1 SEE ALSO + +=over 4 + +=item * +L - for getting information about subs -Matthijs van Duin +=back -Copyright (C) 2004 Matthijs van Duin. All rights reserved. -This program is free software; you can redistribute it and/or modify +=head1 COPYRIGHT AND LICENSE + +=for stopwords cPanel + +This software is copyright (c) 2004, 2008 by Matthijs van Duin, all rights reserved; +copyright (c) 2014 cPanel Inc., all rights reserved. + +This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut @@ -46,14 +56,17 @@ use 5.006; use strict; use warnings; -our $VERSION = '0.02'; - -use base 'Exporter'; -use base 'DynaLoader'; +use Exporter 5.57 'import'; our @EXPORT = qw(subname); our @EXPORT_OK = @EXPORT; -bootstrap Sub::Name $VERSION; +use XSLoader; +XSLoader::load( + __PACKAGE__, + exists $Sub::Name::{VERSION} + ? ${ $Sub::Name::{VERSION} } + : (), +); 1;