File Coverage

blib/lib/Catmandu/Fix/prepend.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   85375  
  1         4  
  1         5  
4             our $VERSION = '1.2018';
5              
6             use Moo;
7 1     1   6 use Catmandu::Util::Path qw(as_path);
  1         2  
  1         4  
8 1     1   637 use namespace::clean;
  1         3  
  1         41  
9 1     1   6 use Catmandu::Fix::Has;
  1         2  
  1         3  
10 1     1   599  
  1         2  
  1         5  
11             has path => (fix_arg => 1);
12             has value => (fix_arg => 1);
13              
14             with 'Catmandu::Fix::Builder';
15              
16             my ($self) = @_;
17             my $val = $self->value;
18 2     2   19 as_path($self->path)->updater(if_value => sub {join('', $val, $_[0])});
19 2         6 }
20 2     3   9  
  3         54  
21             1;
22              
23              
24             =pod
25              
26             =head1 NAME
27              
28             Catmandu::Fix::prepend - add a prefix to the value of a field
29              
30             =head1 SYNOPSIS
31              
32             # prepend to a value. e.g. {name => 'smith'}
33             prepend(name, 'mr. ') # {name => 'mr. smith'}
34              
35             =head1 SEE ALSO
36              
37             L<Catmandu::Fix>
38              
39             =cut