summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/MooseX/NonMoose/Meta/Role/Class.pm8
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/MooseX/NonMoose/Meta/Role/Class.pm b/lib/MooseX/NonMoose/Meta/Role/Class.pm
index cef62d6..e8524a2 100644
--- a/lib/MooseX/NonMoose/Meta/Role/Class.pm
+++ b/lib/MooseX/NonMoose/Meta/Role/Class.pm
@@ -10,9 +10,11 @@ has replace_constructor => (
around _make_immutable_transformer => sub {
my $orig = shift;
my $self = shift;
- my @args = @_;
- unshift @args, replace_constructor => 1 if $self->replace_constructor;
- $self->$orig(@args);
+ my %args = @_;
+ return $self->$orig(@_) if exists $args{inline_constructor}
+ && !$args{inline_constructor};
+ $args{replace_constructor} = 1 if $self->replace_constructor;
+ $self->$orig(%args);
};
around superclasses => sub {