Branch Coverage

blib/lib/Protocol/DBus/Marshal.pm
Criterion Covered Total %
branch 48 58 82.7


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])
81 0 92 unless ($pack ||= {g => 'C/a x', o => 'L/a x', s => 'L/a x'}->{$sct})
109 3 3 if ($array_start % 8)
116 3 3 if (0 == index($sct, '{')) { }
120 2 1 $DICT_CANONICAL ? :
135 3 3 if $compensate_align8
183 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') { }
192 8 7 if (substr($sct_sig, 1, 1) eq '{') { }
240 83 94 $is_string ? :
250 0 39 unless length $sig
263 83 94 if ($pack_tmpl = {g => 'C/a x', o => 'L/a x', s => 'L/a x'}->{$sct_sig}) { }
267 0 94 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})
345 11 41 if $sig_offset == length $sig
357 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}) { }
363 0 0 unless $ok
387 12 6 if ($char0 eq 'a') { }
6 0 elsif ($char0 eq '(') { }
394 4 2 unless $ok
411 15 0 $_ENDIAN_PACK eq '<' ? :