The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Data::Section::Simple - Read data from __DATA__

SYNOPSIS

  use Data::Section::Simple qw(get_data_section);

  # Functional interface -- reads from caller package __DATA__
  my $all = get_data_section; # All data in hash reference
  my $foo = get_data_section('foo.html');

  # OO - allows reading from other packages
  my $reader = Data::Section::Simple->new($package);
  my $all = $reader->get_data_section;

  __DATA__

  @@ foo.html
  <html>
   <body>Hello</body>
  </html>

  @@ bar.tt
  [% IF true %]
    Foo
  [% END %]

DESCRIPTION

Data::Section::Simple is a simple module to extract data drom __DATA__ section of the file.

LIMITATIONS

As the name suggests, it's a very simple version of what Data::Section does. If you want more functionalities such as merging data sections or changing header patterns, use Data::Section instead.

This module does not implement caching (yet) which means in every get_data_section or get_data_section($name) seeks and reads the data section every time it's called. If you want to avoid doing so, you should implement caching in your own caller code.

AUTHOR

Tatsuhiko Miyagawa <miyagawa@bulknews.net>

COPYRIGHT

Copyright 2010- Tatsuhiko Miyagawa

The code to read DATA section is based on Mojo::Command get_all_data: Copyright 2008-2010 Sebastian Riedel

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Data::Section Inline::Files