From f6aa3947ab97bcd3fa6e4ecf14242ef7b7d78785 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Sun, 27 Sep 2009 12:18:31 -0500 Subject: use a less broken test for a superclass inlined constructor --- lib/MooseX/NonMoose/Meta/Role/Class.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/MooseX/NonMoose/Meta/Role/Class.pm b/lib/MooseX/NonMoose/Meta/Role/Class.pm index a17892c..6afce2f 100644 --- a/lib/MooseX/NonMoose/Meta/Role/Class.pm +++ b/lib/MooseX/NonMoose/Meta/Role/Class.pm @@ -1,5 +1,6 @@ package MooseX::NonMoose::Meta::Role::Class; use Moose::Role; +use List::MoreUtils qw(any); =head1 NAME @@ -114,8 +115,8 @@ around superclasses => sub { # if the constructor we're inheriting is an inlined version of the # default moose constructor, don't do anything either - # XXX: wrong if the class overrode new manually? - return @ret if $constructor_class_meta->name eq 'Moose::Meta::Method::Constructor'; + return @ret if any { $_->isa($constructor_class_meta->name) } + $super_new->associated_metaclass->_inlined_methods; } $self->add_method(new => sub { -- cgit v1.2.3-54-g00ecf