File Coverage

blib/lib/File/Find/Object/Base.pm
Criterion Covered Total %
statement 29 29 100.0
branch n/a
condition n/a
subroutine 8 8 100.0
pod n/a
total 37 37 100.0


line stmt bran cond sub pod time code
1             package File::Find::Object::Base;
2             $File::Find::Object::Base::VERSION = '0.3.7';
3 5     5   2306 use strict;
  5         12  
  5         133  
4 5     5   24 use warnings;
  5         22  
  5         121  
5              
6 5     5   27 use integer;
  5         11  
  5         21  
7              
8             # TODO :
9             # _last_dir_scanned should be defined only for ::PathComp , but we should
10             # add a regression test to test it.
11             #
12              
13             use Class::XSAccessor accessors => {
14             (
15 5         16 map { $_ => $_ } (
  5         40  
16             qw(
17             _last_dir_scanned
18             )
19             )
20             )
21 5     5   2655 };
  5         12779  
22              
23 5     5   1083 use File::Spec;
  5         12  
  5         272  
24              
25             # Create a _copy method that does a flat copy of an array returned by
26             # a method as a reference.
27              
28             sub _make_copy_methods
29             {
30 10     10   34 my ( $pkg, $methods ) = @_;
31              
32             ## no critic
33 5     5   31 no strict 'refs';
  5         11  
  5         716  
34 10         33 foreach my $method (@$methods)
35             {
36 15         89 *{ $pkg . "::" . $method . "_copy" } = do
37 15         65 {
38 15         26 my $m = $method;
39             sub {
40 220     220   336 my $self = shift;
41 220         342 return [ @{ $self->$m(@_) } ];
  220         1360  
42 15         70 };
43             };
44             }
45             ## use critic
46 10         29 return;
47             }
48              
49             1;
50              
51             __END__