File Coverage

blib/lib/Dotiac/DTL/Compiled.pm
Criterion Covered Total %
statement 37 42 88.1
branch 1 2 50.0
condition n/a
subroutine 9 11 81.8
pod 5 5 100.0
total 52 60 86.6


line stmt bran cond sub pod time code
1             ###############################################################################
2             #Comment.pm
3             #Last Change: 2009-01-19
4             #Copyright (c) 2009 Marc-Seabstian "Maluku" Lucksch
5             #Version 0.8
6             ####################
7             #This file is part of the Dotiac::DTL project.
8             #http://search.cpan.org/perldoc?Dotiac::DTL
9             #
10             #Comment.pm is published under the terms of the MIT license, which basically
11             #means "Do with it whatever you want". For more information, see the
12             #license.txt file that should be enclosed with libsofu distributions. A copy of
13             #the license is (at the time of writing) also available at
14             #http://www.opensource.org/licenses/mit-license.php .
15             ###############################################################################
16            
17            
18             package Dotiac::DTL::Compiled;
19 12     12   92 use strict;
  12         26  
  12         575  
20 12     12   73 use warnings;
  12         24  
  12         1107  
21             our $VERSION = 0.8;
22            
23             sub new {
24 116     116 1 106311 my $class=shift;
25 116         300 my $name=shift;
26 116         260 my $self={};
27 116         378 $self->{name}=$name;
28 116         531 bless $self,$class;
29 116         246 eval {
30             #{
31 12     12   63 no strict 'refs';
  12         27  
  12         1228  
32             #warn Data::Dumper->Dump([${"$name"."::params"}]) if ${"$name"."::params"} and %{${"$name"."::params"}};
33 116 50       170 %Dotiac::DTL::params=%{${"$name"."::params"}} if ${"$name"."::params"};
  116         198  
  116         952  
  116         849  
34             };
35 116         3184 return $self;
36             }
37            
38             sub print {
39 130     130 1 349 my $self=shift;
40 130         320 my $name=$self->{name};
41             {
42 12     12   61 no strict "refs";
  12         22  
  12         868  
  130         219  
43 130         937 "${name}::print"->(@_);
44             }
45             }
46            
47             sub string {
48 131     131 1 874 my $self=shift;
49 131         569 my $name=$self->{name};
50             {
51 12     12   64 no strict "refs";
  12         23  
  12         1016  
  131         190  
52 131         990 "${name}::string"->(@_);
53             }
54             }
55             sub perl {
56 0     0 1   die "Can't perlify a compiled template";
57             }
58             sub eval {
59 0     0 1   my $self=shift;
60 0           my $name=$self->{name};
61             {
62 12     12   248 no strict "refs";
  12         20  
  12         913  
  0            
63 0           "${name}::eval"->(@_);
64             }
65             }
66             1;
67             __END__