diff options
author | Jesse Luehrs <doy@tozt.net> | 2013-09-03 17:07:11 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2013-09-03 17:07:11 -0400 |
commit | 829070f23855223f2b68f9a97c1b865ded3ae5d0 (patch) | |
tree | 33e3bc58412ba3b562f3f2384f7c79770807fe09 | |
parent | fb5d3be6d11ad4a4420e2987b728f489ad7ba873 (diff) | |
download | package-stash-829070f23855223f2b68f9a97c1b865ded3ae5d0.tar.gz package-stash-829070f23855223f2b68f9a97c1b865ded3ae5d0.zip |
stop trying to be clever
-rw-r--r-- | lib/Package/Stash.pm | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/lib/Package/Stash.pm b/lib/Package/Stash.pm index 97097af..dd89cce 100644 --- a/lib/Package/Stash.pm +++ b/lib/Package/Stash.pm @@ -13,17 +13,22 @@ BEGIN { if ( $IMPLEMENTATION and not $ENV{PACKAGE_STASH_IMPLEMENTATION} ); Module::Implementation::build_loader_sub( - implementations => [ 'XS', 'PP' ] + implementations => [ 'XS', 'PP' ], + symbols => [qw( + new + name + namespace + add_symbol + remove_glob + has_symbol + get_symbol + get_or_add_symbol + remove_symbol + list_all_symbols + get_all_symbols + )], )->(); $IMPLEMENTATION = Module::Implementation::implementation_for(__PACKAGE__); - - my $impl = "Package::Stash::$IMPLEMENTATION"; - my $from = $impl->new($impl); - my $to = $impl->new(__PACKAGE__); - my $methods = $from->get_all_symbols('CODE'); - for my $meth (keys %$methods) { - $to->add_symbol("&$meth" => $methods->{$meth}); - } } =head1 SYNOPSIS |