Branch Coverage

blib/lib/Tangence/Type.pm
Criterion Covered Total %
branch 140 166 84.3


line true false branch
50 797 219 if (@_ == 1) { }
140 79 elsif ($_[0] eq 'list') { }
79 0 elsif ($_[0] eq 'dict') { }
53 0 797 unless $class->can("make")
101 1 128 unless ref $value eq "ARRAY"
112 1 128 unless $type == 2
133 1 70 unless ref $value eq "HASH"
136 19 51 if $Tangence::Message::SORT_HASH_KEYS
147 1 70 unless $type == 3
169 29 73 $value ? :
176 2 101 unless $type == 0
177 72 29 if $num == 0
178 29 0 if $num == 1
205 5 662 if ($n < 0)
206 3 2 if $n >= -128
207 0 2 if $n >= -32768
208 2 0 if $n >= '-2147483648'
212 645 17 if $n <= 255
213 14 3 if $n <= 65535
214 3 0 if $n <= 4294967295
220 1 722 unless defined $value
221 2 720 if ref $value
222 2 718 unless $value == $value
223 2 716 if $value == "+Inf" or $value == "-Inf"
235 5 719 unless $type == 0
236 0 719 unless exists $format{$num}
238 51 668 if (my $subtype = $self->SUBTYPE)
239 0 51 unless $subtype == $num
319 0 7 if $exp64 == 0
325 2 5 if $exp64 == 1024
330 2 3 if abs $exp64 < 15 and ($float64BIN & "\0\0\3\377\377\377\377\377") eq "\0\0\0\0\0\0\0\0"
333 1 2 if abs $exp64 < 127 and ($float64BIN & "\0\0\0\0\37\377\377\377") eq "\0\0\0\0\0\0\0\0"
341 0 15 unless defined $value
342 0 15 if ref $value
346 4 11 if $subtype == 16
350 9 2 $value == $value ? :
358 0 15 unless $type == 0
359 0 15 unless exists $format{$num} or $num == 16
362 8 7 if (my $subtype = $self->SUBTYPE)
363 0 8 unless $subtype == $num
366 4 11 if $num == 16
387 0 10 unless defined $value
388 0 10 if ref $value
400 4 6 if ($exp == 128) { }
1 5 elsif ($exp > 15) { }
3 2 elsif ($exp > -15) { }
403 2 2 $mant32 ? :
404 2 2 if $mant16
432 0 10 unless $type == 0
433 0 10 unless $num == 16
445 5 5 if ($exp == 16) { }
3 2 elsif ($exp > -15) { }
448 2 3 $mant16 ? :
491 1 531 unless defined $value
492 4 527 if ref $value
502 5 525 unless $type == 1
520 38 23 if (not defined $value) { }
21 2 elsif (builtin::blessed($value) and $value->isa('Tangence::Object')) { }
2 0 elsif (builtin::blessed($value) and $value->isa('Tangence::ObjectProxy')) { }
527 0 21 if $value->{'destroyed'}
529 20 1 unless $stream->peer_hasobj->{$id}
549 0 61 unless $type == 4
550 38 23 unless $num
551 23 0 if ($num == 4) { }
586 38 171 if (not defined $value) { }
21 150 elsif (not ref $value) { }
0 150 elsif (builtin::blessed($value) and $value->isa('Tangence::Object') || $value->isa('Tangence::ObjectProxy')) { }
140 10 elsif (my $struct = eval { do { 'Tangence::Struct'->for_perlname(ref $value) } }) { }
5 5 elsif (ref $value eq 'ARRAY') { }
5 0 elsif (ref $value eq 'HASH') { }
598 19 2 if $tmp =~ /^[[:ascii:]]+$/u
601 1 20 if (builtin::is_bool($value)) { }
1 19 elsif (int $value eq $value and $value == $value) { }
2 17 elsif ($message->stream->_ver_can_num_float and $is_numeric) { }
639 1 3 if ($num >= 0 and $num <= 1) { }
1 2 elsif ($num >= 2 and $num <= 9) { }
2 0 elsif ($num >= 16 and $num <= 18) { }
667 4 205 if ($(Syntax::Keyword::Match/topic) == 0) { }
17 188 elsif ($(Syntax::Keyword::Match/topic) == 1) { }
38 150 elsif ($(Syntax::Keyword::Match/topic) == 4) { }
5 145 elsif ($(Syntax::Keyword::Match/topic) == 2) { }
5 140 elsif ($(Syntax::Keyword::Match/topic) == 3) { }
140 0 elsif ($(Syntax::Keyword::Match/topic) == 5) { }