my $target = caller;
my $class = shift;
strictures->import;
+ return if $MAKERS{$target}; # already exported into this package
*{_getglob("${target}::extends")} = sub {
_load_module($_) for @_;
*{_getglob("${target}::ISA")} = \@_;
sub import {
my $target = caller;
strictures->import;
+ return if $INFO{$target}; # already exported into this package
# get symbol table reference
my $stash = do { no strict 'refs'; \%{"${target}::"} };
*{_getglob "${target}::has"} = sub {
my $target = caller;
my $me = $_[0];
strictures->import;
+ return if $INFO{$target}; # already exported into this package
# get symbol table reference
my $stash = do { no strict 'refs'; \%{"${target}::"} };
# install before/after/around subs