diff options
Diffstat (limited to 'lib/Spreadsheet/Template/Generator.pm')
-rw-r--r-- | lib/Spreadsheet/Template/Generator.pm | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/lib/Spreadsheet/Template/Generator.pm b/lib/Spreadsheet/Template/Generator.pm index c751e99..79282d7 100644 --- a/lib/Spreadsheet/Template/Generator.pm +++ b/lib/Spreadsheet/Template/Generator.pm @@ -5,18 +5,55 @@ use Moose; use Class::Load 'load_class'; use JSON; +=head1 SYNOPSIS + + use Spreadsheet::Template::Generator; + + my $generator = Spreadsheet::Template::Generator->new; + open my $fh, '>:encoding(utf8)', 'out.json'; + $fh->print($generator->generate($filename)); + +=head1 DESCRIPTION + +This module is used to create new templates from existing spreadsheets. You can +then modify this output to be suitable to use as input for +L<Spreadsheet::Template> by, for instance, adding in L<Text::Xslate> directives +to use your actual data, rather than the hardcoded data in the original +spreadsheet. + +=cut + +=attr parser_class + +The class to use for parsing the spreadsheet. Defaults to +L<Spreadsheet::Template::Generator::Parser::XLSX>. + +=cut + has parser_class => ( is => 'ro', isa => 'Str', default => 'Spreadsheet::Template::Generator::Parser::XLSX', ); +=attr parser_options + +Options to pass to the parser constructor. Defaults to an empty hashref. + +=cut + has parser_options => ( is => 'ro', isa => 'HashRef', default => sub { {} }, ); +=attr parser + +The L<Spreadsheet::Template::Generator::Parser> instance that will be used. + +=cut + has parser => ( is => 'ro', does => 'Spreadsheet::Template::Generator::Parser', @@ -31,6 +68,14 @@ has parser => ( }, ); +=method generate($filename) + +Returns a string containing the JSON representation of the data contained in +the spreadsheet file C<$filename>. This representation is documented in +L<Spreadsheet::Template>. + +=cut + sub generate { my $self = shift; my ($filename) = @_; |