diff options
author | Jesse Luehrs <doy@tozt.net> | 2010-06-15 03:24:42 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2010-06-15 03:24:42 -0500 |
commit | 6525ae7964dc9e5428008e0798ec4eebff5baa6d (patch) | |
tree | 48f884e741754658699204cc498265f9f28b2ac4 /lib/MooseX/NonMoose/Meta/Role/Constructor.pm | |
parent | 100db48d71485b89247a454a043dc409aa3af505 (diff) | |
download | moosex-nonmoose-6525ae7964dc9e5428008e0798ec4eebff5baa6d.tar.gz moosex-nonmoose-6525ae7964dc9e5428008e0798ec4eebff5baa6d.zip |
check superclasses for FOREIGNBUILDARGS in inlined constructors
Diffstat (limited to 'lib/MooseX/NonMoose/Meta/Role/Constructor.pm')
-rw-r--r-- | lib/MooseX/NonMoose/Meta/Role/Constructor.pm | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/MooseX/NonMoose/Meta/Role/Constructor.pm b/lib/MooseX/NonMoose/Meta/Role/Constructor.pm index 4650200..57316c9 100644 --- a/lib/MooseX/NonMoose/Meta/Role/Constructor.pm +++ b/lib/MooseX/NonMoose/Meta/Role/Constructor.pm @@ -65,7 +65,7 @@ sub _generate_fallback_constructor { my $new = $self->name; my $meta = $self->associated_metaclass; my $super_new_class = $self->_find_next_nonmoose_constructor_package; - my $arglist = $meta->get_method('FOREIGNBUILDARGS') + my $arglist = $meta->find_method_by_name('FOREIGNBUILDARGS') ? "${class_var}->FOREIGNBUILDARGS(\@_)" : '@_'; my $instance = "${class_var}->${super_new_class}::$new($arglist)"; @@ -78,7 +78,7 @@ sub _generate_instance { my $new = $self->name; my $meta = $self->associated_metaclass; my $super_new_class = $self->_find_next_nonmoose_constructor_package; - my $arglist = $meta->get_method('FOREIGNBUILDARGS') + my $arglist = $meta->find_method_by_name('FOREIGNBUILDARGS') ? "${class_var}->FOREIGNBUILDARGS(\@_)" : '@_'; my $instance = "${class_var}->${super_new_class}::$new($arglist)"; |