summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authordoy <doy@tozt.net>2009-04-09 01:54:18 -0500
committerdoy <doy@tozt.net>2009-04-09 01:54:18 -0500
commit72c93c862b88a567eae92c445dd2945a0ae6cb2f (patch)
tree13c07456cb84c80587a6ac24ea98a324c6b2189d /lib
parent2334e70f8fd720328371feea2a024ca904dae36a (diff)
downloadmoosex-nonmoose-72c93c862b88a567eae92c445dd2945a0ae6cb2f.tar.gz
moosex-nonmoose-72c93c862b88a567eae92c445dd2945a0ae6cb2f.zip
okay... stop erroring for now, just only add Moose::Object as a superclass if it's not already somewhere in our inheritance hierarchy
Diffstat (limited to 'lib')
-rw-r--r--lib/MooseX/NonMoose.pm11
1 files changed, 4 insertions, 7 deletions
diff --git a/lib/MooseX/NonMoose.pm b/lib/MooseX/NonMoose.pm
index 797bf5b..4f8e2b6 100644
--- a/lib/MooseX/NonMoose.pm
+++ b/lib/MooseX/NonMoose.pm
@@ -8,15 +8,12 @@ Moose::Exporter->setup_import_methods(
sub extends_nonmoose {
my $caller = shift;
+ my @superclasses = @_;
- my @moose_classes = grep { $_->isa('Moose::Object') } @_;
- Moose->throw_error(
- 'extends_nonmoose can only be used on non-Moose classes; '
- . join(', ', @moose_classes)
- . (@moose_classes == 1 ? ' is a Moose class' : ' are Moose classes')
- ) if @moose_classes;
+ push @superclasses, 'Moose::Object'
+ unless grep { $_->isa('Moose::Object') } @superclasses;
- Moose::extends($caller, @_, 'Moose::Object');
+ Moose::extends($caller, @superclasses);
Class::MOP::Class->initialize($caller)->add_method(new => sub {
my $class = shift;