File Coverage

blib/lib/Template/Pure/UndefObject.pm
Criterion Covered Total %
statement 17 20 85.0
branch 2 4 50.0
condition n/a
subroutine 7 10 70.0
pod 0 2 0.0
total 26 36 72.2


line stmt bran cond sub pod time code
1             package Template::Pure::UndefObject;
2            
3 27     27   87 use strict;
  27         30  
  27         581  
4 27     27   84 use warnings;
  27         26  
  27         542  
5 27     27   81 use Scalar::Util 'blessed';
  27         26  
  27         1813  
6            
7             use overload
8 0     0   0 'bool' => sub { 0 },
9 0     0   0 '!' => sub { 1 },
10 0     0   0 q{""} => sub { undef },
11 27     27   99 'fallback' => 1;
  27         39  
  27         205  
12            
13 3     3 0 8 sub can { 1 } # probably evil...
14 2     2   4 sub AUTOLOAD { shift }
15            
16             sub maybe {
17 1 50   1 0 3 blessed $_[0] ? $_[0] : do {
18 1         1 my ($class, $obj) = @_;
19 1 50       5 defined $obj ? $obj :
20             bless {}, $class };
21             }
22            
23             1;