X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FMethod%2FAccessor%2FNative%2FArray%2Fdelete.pm;h=43e6cd46e5fe1577f6590632bdddec7eedf994fc;hb=00bbc132f9e1cb2b1a44aa287887cafa27a84577;hp=aee35dd3bdde79d1aa31f0cb6bf7959bac048e84;hpb=f4b86ac0e1fd7ff8a180f2f8332821170db5371e;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/Method/Accessor/Native/Array/delete.pm b/lib/Moose/Meta/Method/Accessor/Native/Array/delete.pm index aee35dd..43e6cd4 100644 --- a/lib/Moose/Meta/Method/Accessor/Native/Array/delete.pm +++ b/lib/Moose/Meta/Method/Accessor/Native/Array/delete.pm @@ -3,23 +3,9 @@ package Moose::Meta::Method::Accessor::Native::Array::delete; use strict; use warnings; -our $VERSION = '1.16'; -$VERSION = eval $VERSION; -our $AUTHORITY = 'cpan:STEVAN'; - use Moose::Role; -with 'Moose::Meta::Method::Accessor::Native::Array::Writer' => { - -excludes => [ - qw( - _minimum_arguments - _maximum_arguments - _inline_check_arguments - _inline_optimized_set_new_value - _return_value - ) - ], -}; +with 'Moose::Meta::Method::Accessor::Native::Array::Writer'; sub _minimum_arguments { 1 } @@ -34,22 +20,28 @@ sub _inline_check_arguments { sub _adds_members { 0 } sub _potential_value { - my ( $self, $slot_access ) = @_; + my $self = shift; + my ($slot_access) = @_; - return - "( do { my \@potential = \@{ $slot_access }; \@return = splice \@potential, \$_[0], 1; \\\@potential } )"; + return '(do { ' + . 'my @potential = @{ (' . $slot_access . ') }; ' + . '@return = splice @potential, $_[0], 1; ' + . '\@potential; ' + . '})'; } sub _inline_optimized_set_new_value { - my ( $self, $inv, $new, $slot_access ) = @_; + my $self = shift; + my ($inv, $new, $slot_access) = @_; - return "\@return = splice \@{ $slot_access }, \$_[0], 1"; + return '@return = splice @{ (' . $slot_access . ') }, $_[0], 1;'; } sub _return_value { - my ( $self, $slot_access ) = @_; + my $self = shift; + my ($slot_access) = @_; - return 'return $return[0];'; + return '$return[0]'; } no Moose::Role;