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
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<Sub::Identify> - for getting information about subs
+* L<Sub::Util> - set_subname is another implementation of C<subname>
+
+=for stopwords cPanel
+
+=head1 COPYRIGHT AND LICENSE
-Matthijs van Duin <xmath@cpan.org>
+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
use strict;
use warnings;
-our $VERSION = '0.04';
+our $VERSION = '0.16';
-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__,
+ $VERSION,
+);
1;