Implement basic usage of "enum" type constraints
[gitmo/Mouse.git] / lib / Mouse.pm
index 0606dcb..0d5e443 100644 (file)
@@ -21,7 +21,7 @@ use Mouse::Util;
 use Mouse::Meta::Attribute;
 use Mouse::Meta::Class;
 use Mouse::Object;
-use Mouse::TypeRegistry;
+use Mouse::Util::TypeConstraints;
 
 our @EXPORT = qw(extends has before after around blessed confess with);
 
@@ -85,6 +85,12 @@ sub import {
 
     my $caller = caller;
 
+    # we should never export to main
+    if ($caller eq 'main') {
+        warn qq{$class does not export its sugar to the 'main' package.\n};
+        return;
+    }
+
     my $meta = Mouse::Meta::Class->initialize($caller);
     $meta->superclasses('Mouse::Object')
         unless $meta->superclasses;
@@ -228,6 +234,14 @@ as Mouse unless Moose is loaded, in which case it will act as Moose.
 
 Mouse also has the blessings of Moose's author, stevan.
 
+=head2 MouseX
+
+Please don't copy MooseX code to MouseX. If you need extensions, you really
+should upgrade to Moose. We don't need two parallel sets of extensions!
+
+If you really must write a Mouse extension, please contact the Moose mailing
+list or #moose on IRC beforehand.
+
 =head1 KEYWORDS
 
 =head2 meta -> Mouse::Meta::Class