Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
12 changed files
with
160 additions
and
128 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -1,5 +1,6 @@ | |||
META.yml | META.yml | ||
Makefile | !META.json | ||
inc/ | MYMETA.* | ||
pm_to_blib | |||
*~ | *~ | ||
/Data-Section-Simple-* | |||
/.build |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,3 @@ | |||
use 5.008001; | |||
use Module::Build::Tiny 0.013; | |||
Build_PL(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,53 @@ | |||
{ | |||
"abstract" : "Read data from __DATA__", | |||
"author" : [ | |||
"Tatsuhiko Miyagawa <miyagawa@bulknews.net>" | |||
], | |||
"dynamic_config" : 0, | |||
"generated_by" : "Dist::Milla version v0.9.1, Dist::Zilla version 4.300032, CPAN::Meta::Converter version 2.130870", | |||
"license" : [ | |||
"perl_5" | |||
], | |||
"meta-spec" : { | |||
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", | |||
"version" : "2" | |||
}, | |||
"name" : "Data-Section-Simple", | |||
"prereqs" : { | |||
"configure" : { | |||
"requires" : { | |||
"Module::Build::Tiny" : "0.013" | |||
} | |||
}, | |||
"develop" : { | |||
"requires" : { | |||
"Test::Pod" : "1.41" | |||
} | |||
}, | |||
"runtime" : { | |||
"requires" : { | |||
"perl" : "5.008001" | |||
} | |||
}, | |||
"test" : { | |||
"requires" : { | |||
"Test::More" : "0.88", | |||
"Test::Requires" : "0" | |||
} | |||
} | |||
}, | |||
"release_status" : "stable", | |||
"resources" : { | |||
"bugtracker" : { | |||
"web" : "https://github.com/miyagawa/Data-Section-Simple/issues" | |||
}, | |||
"homepage" : "https://github.com/miyagawa/Data-Section-Simple", | |||
"repository" : { | |||
"type" : "git", | |||
"url" : "https://github.com/miyagawa/Data-Section-Simple.git", | |||
"web" : "https://github.com/miyagawa/Data-Section-Simple" | |||
} | |||
}, | |||
"version" : "0.03" | |||
} | |||
|
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,91 @@ | |||
# 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 from | |||
`__DATA__` section of the file. | |||
|
|||
# LIMITATIONS | |||
|
|||
As the name suggests, this module is a simpler version of the | |||
excellent [Data::Section](http://search.cpan.org/perldoc?Data::Section). If you want more functionalities such as | |||
merging data sections or changing header patterns, use | |||
[Data::Section](http://search.cpan.org/perldoc?Data::Section) instead. | |||
|
|||
This module does not implement caching (yet) which means in every | |||
`get_data_section` or `get_data_section($name)` this module | |||
seeks and re-reads the data section. If you want to avoid doing so for | |||
the better performance, you should implement caching in your own | |||
caller code. | |||
|
|||
# BUGS | |||
|
|||
## \_\_DATA\_\_ appearing elsewhere | |||
|
|||
If you data section has literal `__DATA__` in the data section, this | |||
module might be tricked by that. Although since its pattern match is | |||
greedy, `__DATA__` appearing _before_ the actual data section | |||
(i.e. in the code) might be okay. | |||
|
|||
This is by design -- in theory you can `tell` the DATA handle before | |||
reading it, but then reloading the data section of the file (handy for | |||
developing inline templates with PSGI web applications) would fail | |||
because the pos would be changed. | |||
|
|||
If you don't like this design, again, use the superior | |||
[Data::Section](http://search.cpan.org/perldoc?Data::Section). | |||
|
|||
## utf8 pragma | |||
|
|||
If you enable [utf8](http://search.cpan.org/perldoc?utf8) pragma in the caller's package (or the package | |||
you're inspecting with the OO interface), the data retrieved via | |||
`get_data_section` is decoded, but otherwise undecoded. There's no | |||
reliable way for this module to programmatically know whether utf8 | |||
pragma is enabled or not: it's your responsibility to handle them | |||
correctly. | |||
|
|||
# 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](http://search.cpan.org/perldoc?Data::Section) [Inline::Files](http://search.cpan.org/perldoc?Inline::Files) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,6 @@ | |||
requires 'perl', '5.008001'; | |||
|
|||
on test => sub { | |||
requires 'Test::More', '0.88'; | |||
requires 'Test::Requires'; | |||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1 @@ | |||
[@Milla] |