File Coverage

blib/lib/Petal/CodePerl/Expr/PerlSprintf.pm
Criterion Covered Total %
statement 26 26 100.0
branch n/a
condition n/a
subroutine 6 6 100.0
pod 0 2 0.0
total 32 34 94.1


line stmt bran cond sub pod time code
1 2     2   12 use strict;
  2         5  
  2         84  
2 2     2   15 use warnings;
  2         4  
  2         96  
3              
4             package Petal::CodePerl::Expr::PerlSprintf;
5              
6 2     2   13 use base qw( Code::Perl::Expr::Base );
  2         3  
  2         201  
7              
8             use Class::MethodMaker (
9 2         29 get_set => [qw( -java Perl Params )]
10 2     2   14 );
  2         3  
11              
12             sub eval
13             {
14 1     1 0 326 my $self = shift;
15              
16 1         3 my @params = @{$self->getParams};
  1         34  
17              
18 1         43 my $perl_f = $self->getPerl;
19 1         13 my $perl = sprintf($perl_f, map {$_->perl} @params);
  4         132  
20              
21 1         119 return eval $perl;
22             }
23              
24             sub perl
25             {
26 1     1 0 1084 my $self = shift;
27              
28 1         4 my @params = @{$self->getParams};
  1         31  
29              
30 1         59 my $perl_f = $self->getPerl;
31              
32 1         12 my $perl = sprintf($perl_f, map {"(".$_->perl.")"} @params);
  4         116  
33            
34 1         49 return $perl;
35             }
36              
37             1;