Fix for SL4A where mro.pm doesn't exist even if Perl >= 5.10.0
[gitmo/Mouse.git] / lib / Mouse / Util.pm
index e3999c3..8adab40 100644 (file)
@@ -127,10 +127,10 @@ sub does_role{
 
 BEGIN {
     my $get_linear_isa;
-    if ($] >= 5.009_005) {
-        require mro;
+    if (eval { require mro }) {
         $get_linear_isa = \&mro::get_linear_isa;
-    } else {
+    }
+    else {
         # this code is based on MRO::Compat::__get_linear_isa
         my $_get_linear_isa_dfs; # this recurses so it isn't pretty
         $_get_linear_isa_dfs = sub {
@@ -442,7 +442,7 @@ C<eval "use $module ()"> or using C<require>.
 
 =head3 C<< Mouse::Util::get_all_metaclass_names() -> (ClassNames) >>
 
-=head2 MRO::Compat
+=head2 mro (or MRO::Compat)
 
 =head3 C<get_linear_isa>
 
@@ -466,6 +466,8 @@ L<Class::MOP>
 
 L<Sub::Identify>
 
+L<mro>
+
 L<MRO::Compat>
 
 =cut