6a4e75463fd989558769f88edbf77099b3200589
[gitmo/Moose.git] / lib / Moose / Meta / Method / Accessor / Native / Array / get.pm
1 package Moose::Meta::Method::Accessor::Native::Array::get;
2
3 use strict;
4 use warnings;
5
6 use Class::MOP::MiniTrait;
7
8 use Moose::Role;
9
10 with 'Moose::Meta::Method::Accessor::Native::Reader' => {
11     -excludes => [
12         qw(
13             _minimum_arguments
14             _maximum_arguments
15             _inline_check_arguments
16             )
17     ],
18     },
19     'Moose::Meta::Method::Accessor::Native::Array';
20
21 sub _minimum_arguments { 1 }
22
23 sub _maximum_arguments { 1 }
24
25 sub _inline_check_arguments {
26     my $self = shift;
27
28     return $self->_inline_check_var_is_valid_index('$_[0]');
29 }
30
31 sub _return_value {
32     my $self = shift;
33     my ($slot_access) = @_;
34
35     return $slot_access . '->[ $_[0] ]';
36 }
37
38 1;