use Moose::Role;
-around '_generate_BUILDALL' => sub
-{
+around '_generate_BUILDALL' => sub {
my $orig = shift;
my $self = shift;
my $source = $self->$orig();
$source .= ";\n" if $source;
- my @attrs =
- ( map { "$_ => 1," }
- grep { defined }
- map { $_->init_arg() }
- @{ $self->attributes() }
- );
+ my @attrs = (
+ map {"$_ => 1,"}
+ grep {defined}
+ map { $_->init_arg() } @{ $self->_attributes() }
+ );
$source .= <<"EOF";
my \%attrs = (@attrs);
1;
+# ABSTRACT: A role to make immutable constructors strict
+
__END__
=pod
-=head1 NAME
-
-MooseX::StrictConstructor::Role::Meta::Method::Constructor - A role to make immutable constructors strict
-
=head1 SYNOPSIS
- use MooseX::StrictConstructor;
+ Moose::Util::MetaRole::apply_metaclass_roles
+ ( for_class => $caller,
+ constructor_class_roles =>
+ ['MooseX::StrictConstructor::Role::Meta::Method::Constructor'],
+ );
=head1 DESCRIPTION
C<Moose::Meta::Method::Constructor>) so that immutable classes have a
strict constructor.
-=head1 AUTHOR
-
-Dave Rolsky, C<< <autarch@urth.org> >>
-
-=head1 COPYRIGHT & LICENSE
-
-Copyright 2007-2008 Dave Rolsky, All Rights Reserved.
-
-This program is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
=cut