X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSub%2FName.pm;h=c59e9244b7a29a4fa6fc266a2a87763745f69422;hb=e7a62a4071b77329ff736a31a956c77e9b664299;hp=cae03fec890867521b9561f57b22a4e0843f2edf;hpb=979516cc8e7e4004baeafaf1afb5bf4069401c5d;p=p5sagit%2FSub-Name.git diff --git a/lib/Sub/Name.pm b/lib/Sub/Name.pm index cae03fe..c59e924 100644 --- a/lib/Sub/Name.pm +++ b/lib/Sub/Name.pm @@ -1,8 +1,8 @@ package Sub::Name; +# ABSTRACT: (Re)name a sub +# KEYWORDS: subroutine function utility name rename symbol -=head1 NAME - -Sub::Name - (re)name a sub +=pod =head1 SYNOPSIS @@ -16,25 +16,35 @@ 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 + +=for :list +* L - for getting information about subs +* L - set_subname is another implementation of C + +=for stopwords cPanel + +=head1 COPYRIGHT AND LICENSE -Matthijs van Duin +This software is copyright (c) 2004, 2008 by Matthijs van Duin, all rights reserved; +copyright (c) 2014 cPanel Inc., all rights reserved. -Copyright (C) 2004, 2008 Matthijs van Duin. All rights reserved. -This program is free software; you can redistribute it and/or modify +This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut @@ -44,14 +54,18 @@ use 5.006; use strict; use warnings; -our $VERSION = '0.04'; +our $VERSION = '0.25'; -use base 'Exporter'; -use base 'DynaLoader'; +use Exporter (); +*import = \&Exporter::import; our @EXPORT = qw(subname); our @EXPORT_OK = @EXPORT; -bootstrap Sub::Name $VERSION; +use XSLoader; +XSLoader::load( + __PACKAGE__, + $VERSION, +); 1;