summaryrefslogtreecommitdiffstats
path: root/lib/Spreadsheet/Template/Processor
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2013-04-25 14:21:51 -0500
committerJesse Luehrs <doy@tozt.net>2013-04-25 14:21:51 -0500
commit08e2e1e9adc9d1de0a2e5e7b74cc7c8553f3672c (patch)
treef7c928ba61ab1cd02a31877e863bebfd77b99c3b /lib/Spreadsheet/Template/Processor
parentecbc30fea47a08adca0c709174bd804c4434554e (diff)
downloadspreadsheet-template-08e2e1e9adc9d1de0a2e5e7b74cc7c8553f3672c.tar.gz
spreadsheet-template-08e2e1e9adc9d1de0a2e5e7b74cc7c8553f3672c.zip
outline of the renderer part
Diffstat (limited to 'lib/Spreadsheet/Template/Processor')
-rw-r--r--lib/Spreadsheet/Template/Processor/Identity.pm15
-rw-r--r--lib/Spreadsheet/Template/Processor/Xslate.pm24
2 files changed, 39 insertions, 0 deletions
diff --git a/lib/Spreadsheet/Template/Processor/Identity.pm b/lib/Spreadsheet/Template/Processor/Identity.pm
new file mode 100644
index 0000000..313beb7
--- /dev/null
+++ b/lib/Spreadsheet/Template/Processor/Identity.pm
@@ -0,0 +1,15 @@
+package Spreadsheet::Template::Processor::Identity;
+use Moose;
+
+does 'Spreadsheet::Template::Processor';
+
+sub process {
+ my $self = shift;
+ my ($contents, $vars) = @_
+ return $contents;
+}
+
+__PACKAGE__->meta->make_immutable;
+no Moose;
+
+1;
diff --git a/lib/Spreadsheet/Template/Processor/Xslate.pm b/lib/Spreadsheet/Template/Processor/Xslate.pm
new file mode 100644
index 0000000..6086f0f
--- /dev/null
+++ b/lib/Spreadsheet/Template/Processor/Xslate.pm
@@ -0,0 +1,24 @@
+package Spreadsheet::Template::Processor::Xslate;
+use Moose;
+
+use Text::Xslate;
+
+with 'Spreadsheet::Template::Processor';
+
+has xslate => (
+ is => 'ro',
+ isa => 'Text::Xslate',
+ lazy => 1,
+ default => sub { Text::Xslate->new },
+);
+
+sub process {
+ my $self = shift;
+ my ($contents, $vars) = @_;
+ return $self->xslate->render_string($contents, $vars);
+}
+
+__PACKAGE__->meta->make_immutable;
+no Moose;
+
+1;