Tidy synopsis
[gitmo/MooseX-StrictConstructor.git] / lib / MooseX / StrictConstructor / Role / Object.pm
index d060690..434f19d 100644 (file)
@@ -5,24 +5,22 @@ use warnings;
 
 use Moose::Role;
 
-
-after 'BUILDALL' => sub
-{
+after 'BUILDALL' => sub {
     my $self   = shift;
     my $params = shift;
 
-    my %attrs =
-        ( map { $_ => 1 }
-          grep { defined }
-          map { $_->init_arg() }
-          $self->meta()->compute_all_applicable_attributes()
-        );
+    my %attrs = (
+        __INSTANCE__ => 1,
+        map { $_ => 1 }
+        grep {defined}
+        map  { $_->init_arg() } $self->meta()->get_all_attributes()
+    );
 
-    my @bad = sort grep { ! $attrs{$_} }  keys %{ $params };
+    my @bad = sort grep { !$attrs{$_} } keys %{$params};
 
-    if (@bad)
-    {
-        confess "Found unknown attribute(s) init_arg passed to the constructor: @bad";
+    if (@bad) {
+        confess
+            "Found unknown attribute(s) init_arg passed to the constructor: @bad";
     }
 
     return;
@@ -32,21 +30,19 @@ no Moose::Role;
 
 1;
 
+# ABSTRACT: A role which implements a strict constructor for Moose::Object
+
 __END__
 
 =pod
 
-=head1 NAME
-
-MooseX::StrictConstructor::Role::Object - A role which implements a strict constructor for Moose::Object
-
 =head1 SYNOPSIS
 
-  Moose::Util::MetaRole::apply_base_class_roles
-      ( for_class => $caller,
-        roles =>
-        [ 'MooseX::StrictConstructor::Role::Object' ],
-      );
+  Moose::Util::MetaRole::apply_base_class_roles(
+      for_class => $caller,
+      roles =>
+          ['MooseX::StrictConstructor::Role::Object'],
+  );
 
 =head1 DESCRIPTION
 
@@ -55,15 +51,4 @@ role applied to them. It provides a method modifier for C<BUILDALL()>
 from C<Moose::Object> that implements strict argument checking for
 your class.
 
-=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