Laxen the error condition for delegation methods
Yuval Kogman [Sun, 5 Jul 2009 22:52:54 +0000 (17:52 -0500)]
This allows class names to be used as delegates

lib/Moose/Meta/Method/Delegation.pm

index 1118b1e..88ea1fa 100644 (file)
@@ -81,9 +81,9 @@ sub _initialize_body {
         my $proxy    = $instance->$accessor();
 
         my $error
-            = !defined $proxy ? ' is not defined'
-            : !blessed $proxy ? qq{ is not an object (got '$proxy')}
-            :                   undef;
+            = !defined $proxy                 ? ' is not defined'
+            : ref($proxy) && !blessed($proxy) ? qq{ is not an object (got '$proxy')}
+            : undef;
 
         if ($error) {
             $self->throw_error(