File Coverage

blib/lib/Daiku/Daikufile.pm
Criterion Covered Total %
statement 101 101 100.0
branch 3 4 75.0
condition n/a
subroutine 30 30 100.0
pod 0 1 0.0
total 134 136 98.5


line stmt bran cond sub pod time code
1             package Daiku::Daikufile;
2 3     3   11 use strict;
  3         4  
  3         90  
3 3     3   14 use warnings;
  3         4  
  3         727  
4 3     3   1312 use Mouse;
  3         65733  
  3         13  
5              
6             my $file_id = 1;
7              
8             sub parse {
9 10     10 0 23 my ($self, $file) = @_;
10              
11 10         14 my $code = do {
12 10 50       327 open my $fh, "<", $file or die "open $file failed: $!\n";
13 10         38 local $/; <$fh>;
  10         217  
14             };
15              
16             # code taken from Module::CPANfile::Environment
17 10         12 my ($engine, $err);
18             {
19 10         14 local $@;
  10         14  
20 10         19 $file_id++;
21 3     3   1031 $engine = eval <<"EVAL"; ## no critic
  3     3   9  
  3     3   210  
  3     3   14  
  3     3   5  
  3     2   69  
  3     2   10  
  3     2   4  
  3     2   65  
  3     2   10  
  3     2   7  
  3     2   18  
  3     2   2489  
  3     2   27922  
  3     2   18  
  2     2   14  
  2     2   4  
  2     2   147  
  2     2   9  
  2     2   2  
  2     1   54  
  2     1   11  
  2     1   3  
  2     1   51  
  2     1   9  
  2         2  
  2         11  
  2         73  
  2         2  
  2         14  
  2         12  
  2         3  
  2         145  
  2         9  
  2         3  
  2         58  
  2         94  
  2         3  
  2         65  
  2         10  
  2         2  
  2         14  
  2         104  
  2         3  
  2         12  
  2         12  
  2         3  
  2         127  
  2         8  
  2         3  
  2         57  
  2         7  
  2         2  
  2         47  
  2         6  
  2         2  
  2         10  
  2         76  
  2         2  
  2         14  
  1         5  
  1         2  
  1         57  
  1         4  
  1         1  
  1         29  
  1         3  
  1         1  
  1         20  
  1         3  
  1         1  
  1         4  
  1         37  
  1         2  
  1         4  
  10         683  
22             package Daiku::Daikufile::Sandbox$file_id;
23             use Daiku;
24             use strict;
25             use warnings;
26             use utf8;
27             use autodie;
28              
29             # line 1 "$file"
30             $code;
31             engine;
32             EVAL
33 10         28 $err = $@;
34             }
35              
36 10 100       27 if ($err) { die "Parsing $file failed: $err\n" }
  1         17  
37              
38 9         35 return $engine;
39             }
40              
41 3     3   1255 no Mouse; __PACKAGE__->meta->make_immutable;
  3         4  
  3         11  
42              
43             1;