Branch Coverage

blib/lib/Protocol/DBus/Marshal.pm
Criterion Covered Total %
branch 47 56 83.9


line true false branch
48 67 61 $_data_are_not_list ? :
51 6 122 if (index($sct, 'a') == 0) { }
11 111 elsif (index($sct, '(') == 0) { }
19 92 elsif ($sct eq 'v') { }
72 7 85 if ($sct eq 'o')
73 0 7 unless ($datum =~ m[\A/(?:[A-Za-z0-9_]+(?:/[A-Za-z0-9_]+)*)?\z])
106 3 3 if ($array_start % 8)
113 3 3 if (0 == index($sct, '{')) { }
117 2 1 $DICT_CANONICAL ? :
132 3 3 if $compensate_align8
180 15 228 if (substr($sct_sig, 0, 1) eq 'a') { }
12 216 elsif (substr($sct_sig, 0, 1) eq '(') { }
39 177 elsif (substr($sct_sig, 0, 1) eq 'v') { }
189 8 7 if (substr($sct_sig, 1, 1) eq '{') { }
237 83 94 $is_string ? :
247 0 39 unless length $sig
260 128 141 if ($pack_tmpl = {g => 'C/a x', o => 'L/a x', s => 'L/a x'}->{$sct_sig}) { }
264 0 141 unless ($pack_tmpl = {b => 'L', d => 'd', h => 'L', i => 'l', n => 's', q => 'S', t => 'Q', u => 'L', x => 'q', y => 'C'}->{$sct_sig})
351 11 41 if $sig_offset == length $sig
363 0 41 if ($next_sct eq 'v') { }
0 41 elsif ($next_sct eq 'g') { }
3 38 elsif ({g => 'C/a x', o => 'L/a x', s => 'L/a x'}->{$next_sct}) { }
20 18 elsif (my $width = {b => 4, d => 8, g => 2, h => 4, i => 4, n => 2, o => 5, q => 2, s => 5, t => 8, u => 4, x => 8, y => 1}->{$next_sct}) { }
369 0 0 unless $ok
393 12 6 if ($char0 eq 'a') { }
6 0 elsif ($char0 eq '(') { }
400 4 2 unless $ok
417 15 0 $_ENDIAN_PACK eq '<' ? :