summaryrefslogtreecommitdiffstats
path: root/lib/Spreadsheet/Template/Processor/Xslate.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Spreadsheet/Template/Processor/Xslate.pm')
-rw-r--r--lib/Spreadsheet/Template/Processor/Xslate.pm24
1 files changed, 24 insertions, 0 deletions
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;