summaryrefslogtreecommitdiffstats
path: root/lib/Spreadsheet/Template/Generator.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Spreadsheet/Template/Generator.pm')
-rw-r--r--lib/Spreadsheet/Template/Generator.pm11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/Spreadsheet/Template/Generator.pm b/lib/Spreadsheet/Template/Generator.pm
index 655f1b0..0590eb6 100644
--- a/lib/Spreadsheet/Template/Generator.pm
+++ b/lib/Spreadsheet/Template/Generator.pm
@@ -4,13 +4,22 @@ use Moose;
use Class::Load 'load_class';
use JSON;
+has parser_options => (
+ is => 'ro',
+ isa => 'HashRef',
+ default => sub { {} },
+);
+
sub generate {
my $self = shift;
my ($filename) = @_;
(my $ext = $filename) =~ s/.*\.//;
my $class = $self->parser_classes->{$ext};
load_class($class);
- my $parser = $class->new(filename => $filename);
+ my $parser = $class->new(
+ filename => $filename,
+ %{ $self->parser_options }
+ );
my $data = $parser->parse;
return JSON->new->pretty->canonical->encode($data);
}