File Coverage

blib/lib/Text/Markup/Pod.pm
Criterion Covered Total %
statement 27 27 100.0
branch 3 4 75.0
condition n/a
subroutine 6 6 100.0
pod 0 1 0.0
total 36 38 94.7


line stmt bran cond sub pod time code
1             package Text::Markup::Pod;
2              
3 2     2   36895 use 5.8.1;
  2         7  
4 2     2   11 use strict;
  2         3  
  2         65  
5 2     2   11 use warnings;
  2         3  
  2         90  
6 2     2   570 use Pod::Simple::XHTML 3.15;
  2         37161  
  2         527  
7              
8             # Disable the use of HTML::Entities.
9             $Pod::Simple::XHTML::HAS_HTML_ENTITIES = 0;
10              
11             our $VERSION = '0.31';
12              
13             sub parser {
14 4     4 0 11 my ($file, $encoding, $opts) = @_;
15 4         19 my $p = Pod::Simple::XHTML->new;
16             # Output everything as UTF-8.
17 4         405 $p->html_header_tags('');
18 4     3   42 $p->strip_verbatim_indent(sub { (sort map { /^(\s+)/ } @{$_[0]})[0] });
  3         13181  
  15         69  
  3         8  
19 4         34 $p->output_string(\my $html);
20             # Want user supplied options to override even these default behaviors,
21             # if necessary
22 4 50       2336 my $opt = $opts ? { @$opts } : {};
23 4         14 foreach my $method ( keys %$opt ) {
24 3         11 my $v = $opt->{$method};
25 3         10 $p->$method($v);
26             }
27 4         35 $p->parse_file($file);
28 4 100       1936 return unless $p->content_seen;
29 3         33 utf8::encode($html);
30 3         90 return $html;
31             }
32              
33             1;
34             __END__