From 4ea8fc9fe89dc29a9132cdf946714264550aee9b Mon Sep 17 00:00:00 2001 From: doy Date: Mon, 13 Apr 2009 23:16:14 -0500 Subject: oh god what am i doing --- lib/MooseX/NonMoose/Meta/Role/Class.pm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 lib/MooseX/NonMoose/Meta/Role/Class.pm (limited to 'lib/MooseX/NonMoose/Meta/Role/Class.pm') diff --git a/lib/MooseX/NonMoose/Meta/Role/Class.pm b/lib/MooseX/NonMoose/Meta/Role/Class.pm new file mode 100644 index 0000000..8195b4a --- /dev/null +++ b/lib/MooseX/NonMoose/Meta/Role/Class.pm @@ -0,0 +1,20 @@ +package MooseX::NonMoose::Meta::Role::Class; +use Moose::Role; + +has replace_constructor => ( + is => 'rw', + isa => 'Bool', + default => 0, +); + +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); +}; + +no Moose::Role; + +1; -- cgit v1.2.3-54-g00ecf