File Coverage

blib/lib/App/Ack/Filter/Inverse.pm
Criterion Covered Total %
statement 9 19 47.3
branch n/a
condition n/a
subroutine 3 8 37.5
pod 4 5 80.0
total 16 32 50.0


line stmt bran cond sub pod time code
1             package App::Ack::Filter::Inverse;
2              
3             =head1 NAME
4              
5             App::Ack::Filter::Inverse
6              
7             =head1 DESCRIPTION
8              
9             The filter class that inverts another filter.
10              
11             =cut
12              
13              
14 2     2   13 use strict;
  2         4  
  2         56  
15 2     2   11 use warnings;
  2         3  
  2         54  
16 2     2   967 use parent 'App::Ack::Filter';
  2         597  
  2         11  
17              
18             sub new {
19 0     0 0   my ( $class, $filter ) = @_;
20              
21 0           return bless {
22             filter => $filter,
23             }, $class;
24             }
25              
26             sub filter {
27 0     0 1   my ( $self, $file ) = @_;
28              
29 0           return !$self->{filter}->filter( $file );
30             }
31              
32             sub invert {
33 0     0 1   my $self = shift;
34              
35 0           return $self->{'filter'};
36             }
37              
38             sub is_inverted {
39 0     0 1   return 1;
40             }
41              
42             sub inspect {
43 0     0 1   my ( $self ) = @_;
44              
45 0           my $filter = $self->{'filter'};
46              
47 0           return "!$filter";
48             }
49              
50             1;