File Coverage

blib/lib/Sort/Sub/filevercmp.pm
Criterion Covered Total %
statement 24 25 96.0
branch 6 8 75.0
condition n/a
subroutine 6 7 85.7
pod 0 2 0.0
total 36 42 85.7


line stmt bran cond sub pod time code
1             package Sort::Sub::filevercmp;
2              
3             our $AUTHORITY = 'cpan:PERLANCAR'; # AUTHORITY
4             our $DATE = '2019-12-15'; # DATE
5             our $DIST = 'Sort-Sub-filevercmp'; # DIST
6             our $VERSION = '0.002'; # VERSION
7              
8 1     1   1690 use 5.010001;
  1         4  
9 1     1   5 use strict;
  1         2  
  1         19  
10 1     1   5 use warnings;
  1         1  
  1         74  
11              
12             sub meta {
13             return {
14 0     0 0 0 v => 1,
15             summary => 'Sort using Sort::filevercmp',
16             };
17             }
18              
19             sub gen_sorter {
20 3     3 0 1962 require Sort::filevercmp;
21 3         1108 my ($is_reverse, $is_ci) = @_;
22              
23             sub {
24 1     1   5 no strict 'refs';
  1         2  
  1         168  
25              
26 29     29   236 my $caller = caller();
27 29 50       57 my $a = @_ ? $_[0] : ${"$caller\::a"};
  29         76  
28 29 50       48 my $b = @_ ? $_[1] : ${"$caller\::b"};
  29         93  
29              
30 29         40 my $cmp;
31              
32 29 100       46 if ($is_ci) {
33 20         59 $cmp = Sort::filevercmp::filevercmp(lc $a, lc $b);
34             } else {
35 9         19 $cmp = Sort::filevercmp::filevercmp($a, $b);
36             }
37 29 100       6537 $is_reverse ? -1*$cmp : $cmp;
38 3         18 };
39             }
40              
41             1;
42             # ABSTRACT: Sort using Sort::filevercmp
43              
44             __END__