X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSub%2FName.pm;h=d1afeb397283e7a289a9e5e9a2f38c8db3a675a7;hb=86a2138ae34c272028daaea6121d6518c364cc65;hp=f0b612748172c781a3bf0ea7bb0767776219bd27;hpb=24f50a799301562be9f7b22ce606fec869727e73;p=p5sagit%2FSub-Name.git diff --git a/lib/Sub/Name.pm b/lib/Sub/Name.pm index f0b6127..d1afeb3 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,26 +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. -Copyright (C) 2014 cPanel Inc. 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 @@ -45,14 +54,18 @@ use 5.006; use strict; use warnings; -our $VERSION = '0.05'; +our $VERSION = '0.23'; -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;