File Coverage

blib/lib/Catmandu/Fix/array.pm
Criterion Covered Total %
statement 19 19 100.0
branch n/a
condition n/a
subroutine 7 7 100.0
pod n/a
total 26 26 100.0


line stmt bran cond sub pod time code
1              
2             use Catmandu::Sane;
3 1     1   89303  
  1         4  
  1         6  
4             our $VERSION = '1.2018';
5              
6             use Moo;
7 1     1   6 use Catmandu::Util::Path qw(as_path);
  1         1  
  1         4  
8 1     1   682 use namespace::clean;
  1         3  
  1         47  
9 1     1   6 use Catmandu::Fix::Has;
  1         1  
  1         3  
10 1     1   606  
  1         2  
  1         5  
11             with 'Catmandu::Fix::Builder';
12              
13             has path => (fix_arg => 1);
14              
15             my ($self) = @_;
16             as_path($self->path)->updater(if_hash_ref => sub {[%{$_[0]}]});
17 1     1   11 }
18 1     1   8  
  1         2  
  1         18  
19             1;
20              
21              
22             =pod
23              
24             =head1 NAME
25              
26             Catmandu::Fix::array - creates an array out of a hash
27              
28             =head1 SYNOPSIS
29              
30             # tags => {name => 'Peter', age => 12}
31             array(tags)
32             # tags => ['name', 'Peter', 'age', 12]
33              
34             =head1 DESCRIPTION
35              
36             This fix functions transforms hash fields to array. String fields and array
37             fields are left unchanged.
38              
39             =head1 SEE ALSO
40              
41             L<Catmandu::Fix::hash>, L<Catmandu::Fix>
42              
43             =cut