File Coverage

blib/lib/Git/Repository/Plugin/Log.pm
Criterion Covered Total %
statement 22 22 100.0
branch 4 4 100.0
condition n/a
subroutine 7 7 100.0
pod 1 1 100.0
total 34 34 100.0


line stmt bran cond sub pod time code
1             package Git::Repository::Plugin::Log;
2             $Git::Repository::Plugin::Log::VERSION = '1.314';
3 2     2   141423 use warnings;
  2         7  
  2         84  
4 2     2   7 use strict;
  2         3  
  2         39  
5 2     2   49 use 5.006;
  2         6  
6              
7 2     2   986 use Git::Repository::Plugin;
  2         913  
  2         155  
8             our @ISA = qw( Git::Repository::Plugin );
9 2     2   62 sub _keywords { qw( log ) }
10              
11 2     2   973 use Git::Repository::Log::Iterator;
  2         4  
  2         193  
12              
13             sub log {
14              
15             # skip the invocant when invoked as a class method
16 22 100   22 1 596833 shift if !ref $_[0];
17              
18             # get the iterator
19 22         185 my $iter = Git::Repository::Log::Iterator->new(@_);
20              
21             # scalar context: return the iterator
22 18 100       356 return $iter if !wantarray;
23              
24             # list context: return all Git::Repository::Log objects
25 9         18 my @logs;
26 9         45 while ( my $log = $iter->next ) {
27 13         47 push @logs, $log;
28             }
29 7         117 return @logs;
30             }
31              
32             1;
33              
34             __END__