package Pod::Coverage::Imager; use strict; use base 'Pod::Coverage'; sub _get_pods { my $self = shift; my $package = $self->{package}; #print "getting pod location for '$package'\n" if TRACE_ALL; $self->{pod_from} ||= pod_where( { -inc => 1 }, $package ); my $pod_from = $self->{pod_from}; $pod_from = [ $pod_from ] unless ref $pod_from; unless ($pod_from) { $self->{why_unrated} = "couldn't find pod"; return; } #print "parsing '$pod_from'\n" if TRACE_ALL; my $pod = Pod::Coverage::Extractor->new; for my $pod_file (@$pod_from) { $pod->parse_from_file( $pod_file, '/dev/null' ); } return $pod->{identifiers} || []; } sub _get_syms { my ($self, $package) = @_; if ($self->{module}) { eval "require $self->{module}"; return if $@; # fake out require (my $file = $package) =~ s(::)(/)g; $file .= ".pm"; $INC{$file} = 1; } return $self->SUPER::_get_syms($package); } 1;