File Coverage

blib/lib/DTL/Fast/Tag/Load.pm
Criterion Covered Total %
statement 22 22 100.0
branch 2 2 100.0
condition n/a
subroutine 5 5 100.0
pod 0 1 0.0
total 29 30 96.6


line stmt bran cond sub pod time code
1             package DTL::Fast::Tag::Load;
2 2     2   776 use strict;
  2         6  
  2         47  
3 2     2   9 use utf8;
  2         4  
  2         44  
4 2     2   49 use warnings FATAL => 'all';
  2         4  
  2         67  
5              
6 2     2   9 use DTL::Fast::Template;
  2         4  
  2         400  
7             $DTL::Fast::TAG_HANDLERS{load} = __PACKAGE__;
8              
9             sub new
10             {
11 2     2 0 4 my $proto = shift;
12 2         5 my $parameter = shift;
13              
14 2         14 $parameter =~ s/(^\s+|['"]+|\s+$)//gs;
15 2         10 my @modules = split /\s+/, $parameter;
16              
17 2         6 foreach my $module (@modules)
18             {
19 2 100       9 if (not $DTL::Fast::LOADED_MODULES{$module})
20             {
21 1         8 require Module::Load;
22 1         6 Module::Load::load $module;
23 1         80 $DTL::Fast::LOADED_MODULES{$module} = time;
24             }
25             }
26              
27 2         7 return;
28             }
29              
30             1;