summaryrefslogtreecommitdiffstats
path: root/lib/Spreadsheet/Template/Helpers/Xslate.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Spreadsheet/Template/Helpers/Xslate.pm')
-rw-r--r--lib/Spreadsheet/Template/Helpers/Xslate.pm15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/Spreadsheet/Template/Helpers/Xslate.pm b/lib/Spreadsheet/Template/Helpers/Xslate.pm
index 2fd97be..c49cfa9 100644
--- a/lib/Spreadsheet/Template/Helpers/Xslate.pm
+++ b/lib/Spreadsheet/Template/Helpers/Xslate.pm
@@ -1,6 +1,7 @@
package Spreadsheet::Template::Helpers::Xslate;
use strict;
use warnings;
+use Data::Dumper;
use JSON;
@@ -10,10 +11,10 @@ use Sub::Exporter 'build_exporter';
my $import = build_exporter({
exports => [
- map { $_ => \&_curry_package } qw(format c true false)
+ map { $_ => \&_curry_package } qw(format c merge true false)
],
groups => {
- default => [qw(format c true false)],
+ default => [qw(format c merge true false)],
},
});
@@ -31,6 +32,16 @@ sub format {
return '';
}
+sub merge {
+ my ($package, $range, $contents, $format) = @_;
+
+ return $JSON->encode({
+ range => "$range",
+ contents => "$contents",
+ format => _formats($package, $format)
+ });
+}
+
sub c {
my ($package, $contents, $format, $type, %args) = @_;