9c066569cb85a7bf1e6168fd14dee19c61025883
[catagits/CatalystX-HelpText.git] / lib / CatalystX / HelpText / Finder / TemplateToolkit.pm
1 package CatalystX::HelpText::Finder::TemplateToolkit;
2 use Moose;
3 use List::MoreUtils qw/ uniq /;
4 use Template;
5 use namespace::autoclean;
6
7 sub find_helptext_keys_in_fn {
8     my ($self, $fn, $script) = @_;
9     my @keys = ();
10     my $t = Template->new({
11         INCLUDE_PATH => [ $script->template_search_dir ],
12         ABSOLUTE => 1,
13     });
14     my $out;
15     $t->process($fn, { help_text => sub { push @keys, shift } }, \$out);
16     return [ uniq @keys ];
17 }
18
19 __PACKAGE__->meta->make_immutable;
20 1;
21