diff options
author | doy <doy@tozt.net> | 2009-04-13 23:16:14 -0500 |
---|---|---|
committer | doy <doy@tozt.net> | 2009-04-13 23:16:14 -0500 |
commit | 4ea8fc9fe89dc29a9132cdf946714264550aee9b (patch) | |
tree | 4e93c9071c3573bde333d1a74ae132c08c8c1283 /lib/MooseX/NonMoose/Meta/Role/Class.pm | |
parent | d8c86365f2648f6921dd6ebaefa87553088b2600 (diff) | |
download | moosex-nonmoose-4ea8fc9fe89dc29a9132cdf946714264550aee9b.tar.gz moosex-nonmoose-4ea8fc9fe89dc29a9132cdf946714264550aee9b.zip |
oh god what am i doing
Diffstat (limited to 'lib/MooseX/NonMoose/Meta/Role/Class.pm')
-rw-r--r-- | lib/MooseX/NonMoose/Meta/Role/Class.pm | 20 |
1 files changed, 20 insertions, 0 deletions
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; |