25fc6aa1f23ef0117c695462ca959ced46174fa0
[gitmo/Moose.git] / lib / Moose / Meta / Method / Accessor / Native / Hash / elements.pm
1 package Moose::Meta::Method::Accessor::Native::Hash::elements;
2
3 use strict;
4 use warnings;
5
6 use Scalar::Util qw( looks_like_number );
7
8 use Moose::Role;
9
10 with 'Moose::Meta::Method::Accessor::Native::Reader' =>
11     { -excludes => ['_maximum_arguments'] };
12
13 sub _maximum_arguments { 0 }
14
15 sub _return_value {
16     my $self = shift;
17     my ($slot_access) = @_;
18
19     return 'map { $_, ' . $slot_access . '->{$_} } '
20              . 'keys %{ (' . $slot_access . ') }';
21 }
22
23 no Moose::Role;
24
25 1;