File Coverage

blib/lib/Log/ger/Like/LogAny.pm
Criterion Covered Total %
statement 15 15 100.0
branch 2 2 100.0
condition 2 3 66.6
subroutine 3 3 100.0
pod 0 1 0.0
total 22 24 91.6


line stmt bran cond sub pod time code
1             package Log::ger::Like::LogAny;
2              
3             our $DATE = '2017-07-12'; # DATE
4             our $VERSION = '0.003'; # VERSION
5              
6             # IFUNBUILT
7             # use strict 'subs', 'vars';
8             # use warnings;
9             # END IFUNBUILT
10              
11             sub get_logger {
12 2     2 0 9 my ($package, %args) = @_;
13              
14 2         7 my $caller = caller(0);
15 2         4308 require Log::ger;
16 2         680 require Log::ger::Plugin;
17 2         2984 my $log = Log::ger->get_logger(category => $caller, %args);
18 2         3736 Log::ger::Plugin->set({
19             name => 'LogAny',
20             target => 'object',
21             target_arg => $log,
22             });
23 2         5197 $log;
24             }
25              
26             sub import {
27 2     2   26 my $package = shift;
28              
29 2 100 66     112 if (@_ && $_[0] eq '$log') {
30 1         2 shift;
31 1         4 my $caller = caller(0);
32 1         4 my $log = __PACKAGE__->get_logger(category => $caller, @_);
33 1         6 *{"$caller\::log"} = \$log;
  1         127  
34             }
35             }
36              
37             package
38             Log::Any; # hide from PAUSE
39              
40             unless (defined(&{"get_logger"})) {
41 1     1   36 sub get_logger { goto &Log::ger::Like::LogAny::get_logger }
42             }
43              
44             1;
45             # ABSTRACT: Log like Log::Any
46              
47             __END__