X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FMethod%2FAccessor%2FNative%2FArray%2Funshift.pm;h=dbe7b4d4ca35ee04c6e5f318a245755ccf167a90;hb=00bbc132f9e1cb2b1a44aa287887cafa27a84577;hp=9cf5e60b209fa5d8d4e28cd083722c8651fa9cbb;hpb=8b9641b857cdd065a68f9b74ad072b1d58fcd4e1;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/Method/Accessor/Native/Array/unshift.pm b/lib/Moose/Meta/Method/Accessor/Native/Array/unshift.pm index 9cf5e60..dbe7b4d 100644 --- a/lib/Moose/Meta/Method/Accessor/Native/Array/unshift.pm +++ b/lib/Moose/Meta/Method/Accessor/Native/Array/unshift.pm @@ -3,27 +3,31 @@ package Moose::Meta::Method::Accessor::Native::Array::unshift; use strict; use warnings; -our $VERSION = '1.14'; -$VERSION = eval $VERSION; -our $AUTHORITY = 'cpan:STEVAN'; - use Moose::Role; -with 'Moose::Meta::Method::Accessor::Native::Array::Writer' => - { -excludes => ['_inline_optimized_set_new_value'] }; +with 'Moose::Meta::Method::Accessor::Native::Array::Writer'; sub _adds_members { 1 } sub _potential_value { - my ( $self, $slot_access ) = @_; + my $self = shift; + my ($slot_access) = @_; - return "[ \@_, \@{ $slot_access } ]"; + return '[ @_, @{ (' . $slot_access . ') } ]'; } sub _inline_optimized_set_new_value { - my ( $self, $inv, $new, $slot_access ) = @_; + my $self = shift; + my ($inv, $new, $slot_access) = @_; + + return 'unshift @{ (' . $slot_access . ') }, @_;'; +} + +sub _return_value { + my $self = shift; + my ($slot_access) = @_; - return "unshift \@{ $slot_access }, \@_"; + return 'scalar @{ (' . $slot_access . ') }'; } no Moose::Role;