line |
true |
false |
branch |
104
|
0 |
0 |
unless ${"${class}::init_done";} |
107
|
0 |
0 |
unless ref $input |
115
|
0 |
0 |
if ($$obj{'lazy'}) { } |
|
0 |
0 |
elsif (not $$obj{'iterator'}) { } |
135
|
0 |
0 |
if ${"$_[0]::init_done";} |
139
|
0 |
0 |
unless ref $_[0] |
147
|
0 |
0 |
wantarray ? : |
149
|
0 |
0 |
$sigil eq '%' ? : |
|
0 |
0 |
$sigil eq '@' ? : |
|
0 |
0 |
$sigil eq '$' ? : |
152
|
0 |
0 |
unless $_[1] |
153
|
0 |
0 |
unless $_[1] |
154
|
0 |
0 |
$sigil eq '%' ? : |
|
0 |
0 |
$sigil eq '@' ? : |
|
0 |
0 |
$sigil eq '$' ? : |
161
|
0 |
0 |
if (defined &{"${class}::DELEGATE_SUBS";}) |
166
|
0 |
0 |
unless ref $methods |
174
|
0 |
0 |
if (defined &{"${class}::DISPATCH_TABLE";}) |
181
|
0 |
0 |
if (defined &{"${class}::DISPATCH_FIELD";}) |
188
|
0 |
0 |
if (my(@subformat) = $class->subformat_list) |
191
|
0 |
0 |
if ($field eq 'Data') { } |
208
|
0 |
0 |
if ($field eq '_') |
215
|
0 |
0 |
if (ref $format) { } |
230
|
0 |
0 |
unless (grep /\{/, @$format) |
249
|
0 |
0 |
@member_fields ? : |
253
|
0 |
0 |
ref $_ ? : |
257
|
0 |
0 |
@member_fields ? : |
271
|
0 |
0 |
unless ($field_parser{$field}) |
287
|
0 |
0 |
if defined &{"${class}::$field";} |
289
|
0 |
0 |
if ($enc_fields{$field} and my $encoding = $class->ENCODING) |
329
|
0 |
0 |
unless $class |
333
|
0 |
0 |
unless my $base_class = $self->BASE_CLASS |
334
|
0 |
0 |
if $class eq '::BASE::' |
346
|
0 |
0 |
exists $$table{$field} ? : |
348
|
0 |
0 |
if UNIVERSAL::isa($class, 'CODE') |
349
|
0 |
0 |
unless defined $class |
351
|
0 |
0 |
if (my $members = $$self{'parent'}{'callback_members'}) |
352
|
0 |
0 |
unless $$members{$class} |
354
|
0 |
0 |
unless my $subclass = $self->classname($class) |
355
|
0 |
0 |
if $subclass eq $class |
361
|
0 |
0 |
unless defined $module |
366
|
0 |
0 |
if eval {
do {
require $file;
1
}
} |
367
|
0 |
0 |
unless $@ =~ /^Can't locate / |
383
|
0 |
0 |
$self->SUBFORMAT ? : |
388
|
0 |
0 |
$self->DEFAULT_ARGS ? : |
393
|
0 |
0 |
$self->DISPATCH_TABLE ? : |
398
|
0 |
0 |
$self->DELEGATE_SUBS ? : |
413
|
0 |
0 |
unless grep /\{/, @formats |
417
|
0 |
0 |
if $format =~ /\{/ |
440
|
0 |
0 |
if $@ |
461
|
0 |
0 |
unless ref(my $sub = $$self{'lazy'}) |
463
|
0 |
0 |
unless $$self{'iterator'} |
469
|
0 |
0 |
unless defined $data |
473
|
0 |
0 |
unless ${"${class}::init_done";} |
478
|
0 |
0 |
if (my $field = $Parse::Binary::DispatchField{$class}) |
479
|
0 |
0 |
if (my $subclass = ($DispatchClass{$class}{$$self{'struct'}{$field}} ||= $self->dispatch_class($$self{'struct'}{$field}))) |
499
|
0 |
0 |
if (my $subclass = delete $args{'Class'}) |
522
|
0 |
0 |
unless my $field = $Parse::Binary::DispatchField{$super_class} |
523
|
0 |
0 |
unless my $table = $Parse::Binary::DispatchTable{$super_class} |
525
|
0 |
0 |
unless $class->is_type($$table{$code}) |
536
|
0 |
0 |
unless my $parent = $$self{'parent'} |
554
|
0 |
0 |
if $obj == $siblings[$index] |
567
|
0 |
0 |
if ($$self{'lazy'}) |
574
|
0 |
0 |
$$self{'index'} ? : |
585
|
0 |
0 |
$_ == $self ? : |
602
|
0 |
0 |
unless defined $data |
603
|
0 |
0 |
if UNIVERSAL::can($data, 'dump') |
604
|
0 |
0 |
if UNIVERSAL::isa($data, 'SCALAR') |
612
|
0 |
0 |
unless open FH, "< $file" |
621
|
0 |
0 |
unless $Parse::Binary::HasMembers{ref $self} |
657
|
0 |
0 |
wantarray ? : |
662
|
0 |
0 |
unless $$self{'struct'}{$field} |
669
|
0 |
0 |
unless $Parse::Binary::HasMembers{ref $self} |
674
|
0 |
0 |
if $member->is_type($type) |
682
|
0 |
0 |
unless $Parse::Binary::HasMembers{ref $self} |
684
|
0 |
0 |
if ($$self{'lazy'} and not $$self{'iterated'}) |
685
|
0 |
0 |
if (ref $$self{'lazy'}) |
692
|
0 |
0 |
if $member->is_type($type) |
700
|
0 |
0 |
unless shift @{$$self{'_next_member'}{$type};} |
712
|
0 |
0 |
unless my $field = $fields[$field_idx] |
716
|
0 |
0 |
if ($item_idx > $#$items) |
726
|
0 |
0 |
if UNIVERSAL::isa($item, 'CODE') |
727
|
0 |
0 |
unless $self->valid_memberdata($item) |
740
|
0 |
0 |
$type ? : |
743
|
0 |
0 |
wantarray ? : |
750
|
0 |
0 |
$self->is_type($type) ? : |
752
|
0 |
0 |
wantarray ? : |
779
|
0 |
0 |
if $Parse::Binary::HasMembers{ref $self} |
786
|
0 |
0 |
if (ref $file) { } |
|
0 |
0 |
elsif (not defined $file and my $fh = $$self{'output'}) { } |
793
|
0 |
0 |
unless defined $file |
794
|
0 |
0 |
if defined $file |
801
|
0 |
0 |
unless open FH, "> $file" |
817
|
0 |
0 |
unless defined $type |
821
|
0 |
0 |
if (exists $type_cache{$class}{$type}) |
830
|
0 |
0 |
if $class =~ /::$type$/ |
834
|
0 |
0 |
if $super_class->is_type($type) |
849
|
0 |
0 |
unless $$self{'children'}{$field} |
860
|
0 |
0 |
unless my $parent = $$self{'parent'} |
861
|
0 |
0 |
unless not &Scalar::Util::blessed($parent) or $$parent{'lazy'} |
866
|
0 |
0 |
if $self->is_type($type) |
867
|
0 |
0 |
unless my $parent = $$self{'parent'} |
875
|
0 |
0 |
@_ ? : |
879
|
0 |
0 |
if $offset > length $data |
882
|
0 |
0 |
unless defined $replace |
892
|
0 |
0 |
unless open my $fh, '>', $file |
901
|
0 |
0 |
unless my $types = shift() |
904
|
0 |
0 |
unless my $sub = $$map{ref $self} || $$map{'*'} |
919
|
0 |
0 |
unless defined &{"${pkg}::$method";} |
921
|
0 |
0 |
unless $type eq '*' |
938
|
0 |
0 |
unless $$self{'lazy'} |