summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/Package/Constants.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl/lib/Package/Constants.pm')
-rw-r--r--Master/tlpkg/tlperl/lib/Package/Constants.pm28
1 files changed, 15 insertions, 13 deletions
diff --git a/Master/tlpkg/tlperl/lib/Package/Constants.pm b/Master/tlpkg/tlperl/lib/Package/Constants.pm
index 9ad6c62df47..0ecdcf78956 100644
--- a/Master/tlpkg/tlperl/lib/Package/Constants.pm
+++ b/Master/tlpkg/tlperl/lib/Package/Constants.pm
@@ -1,19 +1,21 @@
package Package::Constants;
+use if $] >= 5.019006, 'deprecate';
+
use strict;
use vars qw[$VERSION $DEBUG];
-$VERSION = '0.02';
+$VERSION = '0.04';
$DEBUG = 0;
-=head1 NAME
+=head1 NAME
Package::Constants - List all constants declared in a package
=head1 SYNOPSIS
use Package::Constants;
-
+
### list the names of all constants in a given package;
@const = Package::Constants->list( __PACKAGE__ );
@const = Package::Constants->list( 'main' );
@@ -23,8 +25,8 @@ Package::Constants - List all constants declared in a package
=head1 DESCRIPTION
-C<Package::Constants> lists all the constants defined in a certain
-package. This can be useful for, among others, setting up an
+C<Package::Constants> lists all the constants defined in a certain
+package. This can be useful for, among others, setting up an
autogenerated C<@EXPORT/@EXPORT_OK> for a Constants.pm file.
=head1 CLASS METHODS
@@ -39,23 +41,23 @@ sub list {
my $class = shift;
my $pkg = shift;
return unless defined $pkg; # some joker might use '0' as a pkg...
-
+
_debug("Inspecting package '$pkg'");
-
+
my @rv;
{ no strict 'refs';
my $stash = $pkg . '::';
for my $name (sort keys %$stash ) {
-
+
_debug( " Checking stash entry '$name'" );
-
+
### is it a subentry?
my $sub = $pkg->can( $name );
next unless defined $sub;
-
+
_debug( " '$name' is a coderef" );
-
+
next unless defined prototype($sub) and
not length prototype($sub);
@@ -63,7 +65,7 @@ sub list {
push @rv, $name;
}
}
-
+
return sort @rv;
}
@@ -93,7 +95,7 @@ This module by Jos Boumans E<lt>kane@cpan.orgE<gt>.
=head1 COPYRIGHT
-This library is free software; you may redistribute and/or modify it
+This library is free software; you may redistribute and/or modify it
under the same terms as Perl itself.
=cut