1 |
package HTML; |
2 |
|
3 |
use strict; |
4 |
use warnings; |
5 |
|
6 |
use Time::HiRes qw/time/; |
7 |
use Data::Dump qw/dump/; |
8 |
use View; |
9 |
|
10 |
use Data::Dump qw/dump/; |
11 |
|
12 |
warn "available templates = ",dump( Template::Declare->templates ); |
13 |
|
14 |
use Template::Declare; |
15 |
use Template::Declare::Tags; # defaults to 'HTML' |
16 |
Template::Declare->init( roots => ['HTML','View'], around_template => sub { |
17 |
my ($orig, $path, $args, $code) = @_; |
18 |
my $t = time; |
19 |
html { |
20 |
head {} |
21 |
body { |
22 |
$orig->(); |
23 |
} |
24 |
} |
25 |
warn "TEMPLATE $path ",dump($args),sprintf(" in %.4fs\n",time - $t); |
26 |
}); |
27 |
|
28 |
sub view { |
29 |
# warn "## view",dump( @_ ); |
30 |
my $self = shift; |
31 |
return Template::Declare->show( @_ ); |
32 |
} |