X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FMethod%2FAccessor%2FNative%2FArray%2Fsort.pm;h=0c9adb038416edfbf8479dd20167bbf17897345d;hb=00bbc132f9e1cb2b1a44aa287887cafa27a84577;hp=87c5d4ca9427459752be5d2d2171e62b7078f6b7;hpb=aff6aafcfff96c2a91bd044e35010757feae584c;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/Method/Accessor/Native/Array/sort.pm b/lib/Moose/Meta/Method/Accessor/Native/Array/sort.pm index 87c5d4c..0c9adb0 100644 --- a/lib/Moose/Meta/Method/Accessor/Native/Array/sort.pm +++ b/lib/Moose/Meta/Method/Accessor/Native/Array/sort.pm @@ -5,37 +5,31 @@ use warnings; use Params::Util (); -our $VERSION = '1.18'; -$VERSION = eval $VERSION; -our $AUTHORITY = 'cpan:STEVAN'; - use Moose::Role; -with 'Moose::Meta::Method::Accessor::Native::Reader' => { - -excludes => [ - qw( - _maximum_arguments - _inline_check_arguments - ) - ] -}; +with 'Moose::Meta::Method::Accessor::Native::Reader'; sub _maximum_arguments { 1 } sub _inline_check_arguments { my $self = shift; - return $self->_inline_throw_error( - q{'The argument passed to sort must be a code reference'}) - . q{ if @_ && ! Params::Util::_CODELIKE( $_[0] );}; + return ( + 'if (@_ && !Params::Util::_CODELIKE($_[0])) {', + $self->_inline_throw_error( + '"The argument passed to sort must be a code reference"', + ) . ';', + '}', + ); } sub _return_value { - my $self = shift; - my $slot_access = shift; + my $self = shift; + my ($slot_access) = @_; - return - "\$_[0] ? sort { \$_[0]->( \$a, \$b ) } \@{ ($slot_access) } : sort \@{ ($slot_access) }"; + return '$_[0] ' + . '? sort { $_[0]->($a, $b) } @{ (' . $slot_access . ') } ' + . ': sort @{ (' . $slot_access . ') }'; } no Moose::Role;