fixup exporting to be sane and consistent
[gitmo/Moo.git] / lib / Moo.pm
index acf7c65..e947e31 100644 (file)
@@ -25,8 +25,7 @@ sub import {
   if ($Moo::Role::INFO{$target} and $Moo::Role::INFO{$target}{is_role}) {
     die "Cannot import Moo into a role";
   }
-  return if $MAKERS{$target}; # already exported into this package
-  $MAKERS{$target} = { is_class => 1 };
+  $MAKERS{$target} ||= {};
   _install_tracked $target => extends => sub {
     $class->_set_superclasses($target, @_);
     $class->_maybe_reset_handlemoose($target);
@@ -59,6 +58,8 @@ sub import {
       return;
     };
   }
+  return if $MAKERS{$target}{is_class}; # already exported into this package
+  $MAKERS{$target}{is_class} = 1;
   {
     no strict 'refs';
     @{"${target}::ISA"} = do {