stop using excludes within moose, since it's no longer necessary
[gitmo/Moose.git] / lib / Moose / Meta / Method / Accessor / Native / Hash / Writer.pm
index ba9b312..4669788 100644 (file)
@@ -5,25 +5,26 @@ use warnings;
 
 use Class::MOP::MiniTrait;
 
-our $VERSION = '1.13';
-$VERSION = eval $VERSION;
-our $AUTHORITY = 'cpan:STEVAN';
+use Moose::Role;
 
-use base 'Moose::Meta::Method::Accessor::Native::Writer';
+with 'Moose::Meta::Method::Accessor::Native::Writer',
+     'Moose::Meta::Method::Accessor::Native::Hash',
+     'Moose::Meta::Method::Accessor::Native::Collection';
 
-Class::MOP::MiniTrait::apply( __PACKAGE__,
-    'Moose::Meta::Method::Accessor::Native::Hash'
-);
-Class::MOP::MiniTrait::apply( __PACKAGE__,
-    'Moose::Meta::Method::Accessor::Native::Collection'
-);
+sub _inline_coerce_new_values {
+    my $self = shift;
+    $self->Moose::Meta::Method::Accessor::Native::Collection::_inline_coerce_new_values(@_);
+}
 
-sub _new_values {'@values'}
+sub _new_values { '@values' }
 
-sub _inline_copy_old_value {
-    my ( $self, $slot_access ) = @_;
+sub _copy_old_value {
+    my $self = shift;
+    my ($slot_access) = @_;
 
-    return '{ @{' . $slot_access . '} }';
+    return '{ %{ (' . $slot_access . ') } }';
 }
 
+no Moose::Role;
+
 1;