App-xml_grep2
view release on metacpan or search on metacpan
lib/App/Xml_grep2.pm view on Meta::CPAN
print map( { $self->{format} ? $self->indented_xml( $_->toString( $self->{format}, $self->{original_encoding}), $format) . "\n"
: $_->toString( 0, $self->{original_encoding}) . "\n"
} @$nodes
);
}
sub file_list
{ my $self= shift;
my $rules= File::Find::Rule->new;
if( $self->{include}) { $rules->name( $self->{include}); }
if( $self->{exclude}) { $rules->not_name( $self->{exclude}); }
unless( $self->{recursive}) { $rules->maxdepth( 0); }
$rules->not_directory();
my @files= $rules->in( @_);
return @files;
}
sub grep_nodes
{ my( $self, $xpath, $file)= @_;
my( undef, @nodes)= $self->findnodes( $file => $xpath) or return ;
if( $self->{max_count }&& (@nodes >= $self->{max_count})) { $#nodes= $self->{max_count }-1; }
return \@nodes;
( run in 0.277 second using v1.01-cache-2.11-cpan-4d4bc49f3ae )