File Coverage

blib/lib/Moose/Meta/Method/Accessor/Native/Array/unshift.pm
Criterion Covered Total %
statement 22 22 100.0
branch n/a
condition n/a
subroutine 8 8 100.0
pod n/a
total 30 30 100.0


line stmt bran cond sub pod time code
1             package Moose::Meta::Method::Accessor::Native::Array::unshift;
2             our $VERSION = '2.2203';
3              
4 4     4   2717 use strict;
  4         12  
  4         130  
5 4     4   20 use warnings;
  4         11  
  4         119  
6              
7 4     4   25 use Moose::Role;
  4         11  
  4         31  
8              
9             with 'Moose::Meta::Method::Accessor::Native::Array::Writer';
10              
11 9     9   31 sub _adds_members { 1 }
12              
13             sub _potential_value {
14 19     19   39 my $self = shift;
15 19         47 my ($slot_access) = @_;
16              
17 19         63 return '[ @_, @{ (' . $slot_access . ') } ]';
18             }
19              
20             sub _inline_optimized_set_new_value {
21 12     12   30 my $self = shift;
22 12         36 my ($inv, $new, $slot_access) = @_;
23              
24 12         58 return 'unshift @{ (' . $slot_access . ') }, @_;';
25             }
26              
27             sub _return_value {
28 38     38   73 my $self = shift;
29 38         83 my ($slot_access) = @_;
30              
31 38         155 return 'scalar @{ (' . $slot_access . ') }';
32             }
33              
34 4     4   33 no Moose::Role;
  4         9  
  4         21  
35              
36             1;