Allow $obj->new in pure Perl
Fuji, Goro [Sat, 25 Sep 2010 06:56:32 +0000 (15:56 +0900)]
lib/Mouse/PurePerl.pm

index 23b89a9..fb1909f 100644 (file)
@@ -729,13 +729,8 @@ sub BUILDARGS {
 
 sub new {
     my $class = shift;
-
-    $class->meta->throw_error('Cannot call new() on an instance') if ref $class;
-
-    my $args = $class->BUILDARGS(@_);
-
-    my $meta = Mouse::Meta::Class->initialize($class);
-    return $meta->new_object($args);
+    my $args  = $class->BUILDARGS(@_);
+    return $class->meta->new_object($args);
 }
 
 sub DESTROY {