File Coverage

blib/lib/App/ansiprintf.pm
Criterion Covered Total %
statement 22 22 100.0
branch 1 2 50.0
condition n/a
subroutine 8 8 100.0
pod 0 2 0.0
total 31 34 91.1


line stmt bran cond sub pod time code
1             package App::ansiprintf;
2              
3 2     2   554248 use v5.14;
  2         10  
4 2     2   14 use warnings;
  2         5  
  2         149  
5 2     2   604 use open IO => ':utf8', ':std';
  2         1701  
  2         15  
6              
7             our $VERSION = "2.07";
8              
9             our $WARN //= $ENV{ANSIPRINTF_WARNING} // 1;
10             $SIG{__WARN__} = sub {
11             my $warning = shift;
12             if ($warning =~ /^(.*) in sprintf at /) {
13             print STDERR "$1\n" if $WARN;
14             } else {
15             print STDERR $warning;
16             }
17             };
18              
19 2     2   1957 use Pod::Usage;
  2         154372  
  2         351  
20 2     2   1243 use Text::ANSI::Printf qw(ansi_printf);
  2         9  
  2         206  
21             $Text::ANSI::Printf::REORDER = 1;
22              
23 2     2   959 use App::ansiprintf::Util qw(decode_argv unescape);
  2         6  
  2         349  
24              
25             sub new {
26 9     9 0 438855 return __PACKAGE__;
27             }
28              
29             sub run {
30 9     9 0 38 my $app = shift;
31 9 50       58 local @ARGV = decode_argv splice @_ or pod2usage;
32 9         274 ansi_printf map unescape, @ARGV;
33 9         26426 return 0;
34             }
35              
36             1;
37              
38             __END__