this shouldn't be using a base class role at all
[gitmo/MooseX-StrictConstructor.git] / lib / MooseX / StrictConstructor / Role / Object.pm
diff --git a/lib/MooseX/StrictConstructor/Role/Object.pm b/lib/MooseX/StrictConstructor/Role/Object.pm
deleted file mode 100644 (file)
index 4b5a765..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-package MooseX::StrictConstructor::Role::Object;
-
-use Moose::Role;
-
-use namespace::autoclean;
-
-after 'BUILDALL' => sub {
-    my $self   = shift;
-    my $params = shift;
-
-    my %attrs = (
-        __INSTANCE__ => 1,
-        map { $_ => 1 }
-        grep {defined}
-        map  { $_->init_arg() } $self->meta()->get_all_attributes()
-    );
-
-    my @bad = sort grep { !$attrs{$_} } keys %{$params};
-
-    if (@bad) {
-        Moose->throw_error(
-            "Found unknown attribute(s) init_arg passed to the constructor: @bad");
-    }
-
-    return;
-};
-
-1;
-
-# ABSTRACT: A role which implements a strict constructor for Moose::Object
-
-__END__
-
-=pod
-
-=head1 SYNOPSIS
-
-  Moose::Util::MetaRole::apply_base_class_roles(
-      for_class => $caller,
-      roles =>
-          ['MooseX::StrictConstructor::Role::Object'],
-  );
-
-=head1 DESCRIPTION
-
-When you use C<MooseX::StrictConstructor>, your objects will have this
-role applied to them. It provides a method modifier for C<BUILDALL()>
-from C<Moose::Object> that implements strict argument checking for
-your class.
-
-=cut