Fix meta() method
[gitmo/Mouse.git] / lib / Mouse / Util.pm
index d8d9d82..2a03160 100644 (file)
@@ -37,7 +37,7 @@ our %EXPORT_TAGS = (
 
 # aliases as public APIs
 
-# it must be 'require', because Mouse::Meta::Module depends on Mouse::Util
+# it must be 'require', not 'use', because Mouse::Meta::Module depends on Mouse::Util
 require Mouse::Meta::Module; # for the entities of metaclass cache utilities
 
 BEGIN {
@@ -322,7 +322,7 @@ sub not_supported{
 }
 
 sub meta{
-    return Mouse::Meta::Class->initialize($_[0]);
+    return Mouse::Meta::Class->initialize(ref($_[0]) || $_[0]);
 }
 
 sub dump { 
@@ -374,13 +374,13 @@ This will load a given C<ClassName> (or die if it is not loadable).
 This function can be used in place of tricks like
 C<eval "use $module"> or using C<require>.
 
-=head2 C<< Mouse::Util::class_of(ClassName) >>
+=head3 C<< Mouse::Util::class_of(ClassName or Object) >>
 
-The counterpart of C<Class::MOP::class_of()>. This is not exportable.
+=head3 C<< Mouse::Util::get_metaclass_by_name(ClassName) >>
 
-=head2 C<< Mouse::Util::get_metaclass_by_name(ClassName) >>
+=head3 C<< Mouse::Util::get_all_metaclass_instances() >>
 
-The counterpart of C<Class::MOP::get_metaclass_by_name()>. This is not exportable.
+=head3 C<< Mouse::Util::get_all_metaclass_names() >>
 
 =head2 MRO::Compat
 
@@ -398,7 +398,7 @@ The counterpart of C<Class::MOP::get_metaclass_by_name()>. This is not exportabl
 
 L<Moose::Util>
 
-L<Scalar::Util>
+L<Class::MOP>
 
 L<Sub::Identify>