diff options
author | Jesse Luehrs <doy@tozt.net> | 2009-12-20 00:28:18 -0600 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2009-12-20 00:28:18 -0600 |
commit | 1d00bff3291758b8c675e3c08b12f1ea9f69875b (patch) | |
tree | d02a2ac2108d0c9925e88642419193bd7c9c6dc7 /lib/MooseX/ABC.pm | |
parent | 83bd35ab0d35bdbd61e826cd4435fc4042d26783 (diff) | |
download | moosex-abc-1d00bff3291758b8c675e3c08b12f1ea9f69875b.tar.gz moosex-abc-1d00bff3291758b8c675e3c08b12f1ea9f69875b.zip |
allow creating abstract subclasses
Diffstat (limited to 'lib/MooseX/ABC.pm')
-rw-r--r-- | lib/MooseX/ABC.pm | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/MooseX/ABC.pm b/lib/MooseX/ABC.pm index 11ec50b..6748acb 100644 --- a/lib/MooseX/ABC.pm +++ b/lib/MooseX/ABC.pm @@ -66,7 +66,9 @@ sub init_meta { my ($package, %options) = @_; Carp::confess("Can't make a role into an abstract base class") if Class::MOP::class_of($options{for_class})->isa('Moose::Meta::Role'); - goto $init_meta if $init_meta; + my $ret = $init_meta->(@_); + Class::MOP::class_of($options{for_class})->is_abstract(1); + return $ret; } =head1 TODO |