File Coverage

blib/lib/Path/Abstract.pm
Criterion Covered Total %
statement 35 35 100.0
branch 6 8 75.0
condition 4 6 66.6
subroutine 11 11 100.0
pod n/a
total 56 60 93.3


line stmt bran cond sub pod time code
1             package Path::Abstract;
2             BEGIN {
3 5     5   275747 $Path::Abstract::VERSION = '0.096';
4             }
5             # ABSTRACT: Fast and featureful UNIX-style path parsing and manipulation
6              
7 5     5   49 use warnings;
  5         11  
  5         148  
8 5     5   27 use strict;
  5         10  
  5         193  
9              
10 5     5   32 use vars qw/$_0_093_warn %_0_093_warning/;
  5         8  
  5         401  
11              
12              
13             $_0_093_warn = 1;
14              
15 5     5   7200 use Sub::Exporter;
  5         74405  
  5         38  
16             {
17             my $exporter = Sub::Exporter::build_exporter({
18             exports => [ path => sub { sub {
19 123     123   13972 return __PACKAGE__->new(@_)
20             } } ],
21             });
22              
23             sub import {
24 5 50 66 5   151 if (@_ && grep { defined && $_ eq '--no_0_093_warning' } @_) {
  10 100       92  
25 1         3 $_0_093_warn = 0;
26             }
27 5   66     14 @_ = grep { ! defined || $_ !~ m/^--/ } @_;
  10         98  
28 5         28 goto $exporter;
29             };
30             }
31              
32             use overload
33 5         46 '""' => 'get',
34             fallback => 1,
35 5     5   1936 ;
  5         13  
36              
37 5     5   432 use base qw/Path::Abstract::Underload/;
  5         11  
  5         3704  
38              
39 5     5   42 use Carp;
  5         12  
  5         1047  
40             sub _0_093_warn {
41 44 50   44   103 if ($_0_093_warn) {
42 44         162 my ($package, $filename, $line, $subroutine) = caller(1);
43 44 100       997 if (! $_0_093_warning{$subroutine}) {
44 4         9 $_0_093_warning{$subroutine} = 1;
45 4         64 $subroutine =~ s///g;
46 4         82 carp "** $subroutine behavior has changed since 0.093\n" .
47             "** To disable this warning: use Path::Abstract qw/--no_0_093_warning/"
48             }
49             }
50             }
51              
52              
53              
54              
55              
56              
57              
58              
59              
60              
61              
62              
63              
64              
65              
66              
67              
68              
69              
70              
71              
72              
73              
74              
75              
76              
77              
78              
79              
80             1;
81              
82             __END__