X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FMethod%2FAccessor%2FNative%2FArray%2Faccessor.pm;h=5767663e084ed4146aa2fe5e9c02364d8570c9a3;hb=00bbc132f9e1cb2b1a44aa287887cafa27a84577;hp=393fc1fff48be4435ea295a5abb60ea69da01c35;hpb=53a4677c8ac29f814924cd2eb21a760b10bf7f5d;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/Method/Accessor/Native/Array/accessor.pm b/lib/Moose/Meta/Method/Accessor/Native/Array/accessor.pm index 393fc1f..5767663 100644 --- a/lib/Moose/Meta/Method/Accessor/Native/Array/accessor.pm +++ b/lib/Moose/Meta/Method/Accessor/Native/Array/accessor.pm @@ -3,44 +3,37 @@ package Moose::Meta::Method::Accessor::Native::Array::accessor; use strict; use warnings; -our $VERSION = '1.19'; -$VERSION = eval $VERSION; -our $AUTHORITY = 'cpan:STEVAN'; - use Moose::Role; -with 'Moose::Meta::Method::Accessor::Native::Array::set' => { - -excludes => [ - qw( _generate_method - _minimum_arguments - _maximum_arguments - _inline_process_arguments - _inline_check_arguments - _return_value) - ] - }, - 'Moose::Meta::Method::Accessor::Native::Array::get' => { - -excludes => [ - qw( - _generate_method - _minimum_arguments - _maximum_arguments - ) - ] - }; +with 'Moose::Meta::Method::Accessor::Native::Array::set', + 'Moose::Meta::Method::Accessor::Native::Array::get'; + +sub _inline_process_arguments { + my $self = shift; + $self->Moose::Meta::Method::Accessor::Native::Array::get::_inline_process_arguments(@_); +} + +sub _inline_check_arguments { + my $self = shift; + $self->Moose::Meta::Method::Accessor::Native::Array::get::_inline_check_arguments(@_); +} + +sub _return_value { + my $self = shift; + $self->Moose::Meta::Method::Accessor::Native::Array::get::_return_value(@_); +} sub _generate_method { my $self = shift; my $inv = '$self'; - my $slot_access = $self->_inline_get($inv); + my $slot_access = $self->_get_value($inv); return ( 'sub {', - $self->_inline_pre_body(@_), 'my ' . $inv . ' = shift;', $self->_inline_curried_arguments, - $self->_inline_check_lazy($inv), + $self->_inline_check_lazy($inv, '$type_constraint', '$type_coercion', '$type_message'), # get 'if (@_ == 1) {', $self->_inline_check_var_is_valid_index('$_[0]'), @@ -48,15 +41,14 @@ sub _generate_method { '}', # set 'else {', - $self->_writer_core($inv, $slot_access), - $self->_inline_post_body(@_), + $self->_inline_writer_core($inv, $slot_access), '}', '}', ); } -sub _minimum_arguments {1} -sub _maximum_arguments {2} +sub _minimum_arguments { 1 } +sub _maximum_arguments { 2 } no Moose::Role;