Branch Coverage

blib/lib/Data/Smile/XS.pm
Criterion Covered Total %
branch 32 50 64.0


line true false branch
19 5 19 unless ref $x
20 18 1 if eval { do { $x->isa("Path::Tiny") } } or eval { do { $x->isa("Path::Class::File") } }
27 17 2 if (_is_pathish_filename($file))
31 19 0 unless (ref $file)
32 0 19 unless open my $fh, "<:raw", $file
36 0 0 if (eval { do { $file->can("read") } } or eval { do { $file->can("getline") } } or ref $file eq "GLOB")
47 1 4 if (_is_pathish_filename($file))
51 4 1 unless (ref $file)
52 0 4 unless open my $fh, ">:raw", $file
56 0 0 if (eval { do { $file->can("print") } } or eval { do { $file->can("write") } } or ref $file eq "GLOB")
66 0 5 if @_ > 3
68 2 3 if (@_ >= 3 and defined $opts)
69 0 2 if ref $opts ne "HASH"
75 4 0 eval { do { die "write: $!" unless print {$fh;} $bytes; 1 } } ? :
76 0 4 unless print {$fh;} $bytes
80 3 1 if ($close)
81 0 3 unless close $fh
84 4 0 $ok ? :
89 0 19 if @_ > 2
91 1 18 if (@_ >= 2 and defined $opts)
92 0 1 if ref $opts ne "HASH"
98 0 19 unless defined $buf
100 19 0 if ($close)
101 0 19 unless close $fh
104 1 18 defined $opts ? :