Branch Coverage

blib/lib/Verilog/Netlist/Subclass.pm
Criterion Covered Total %
branch 599 1194 50.1


line true false branch
45 0 0 unless ($_Subclass_Logger_Warned)
64 0 0 if ref $_[0]
70 0 0 if ref $_[0]
76 0 0 if ref $_[0]
110 80 0 if ($base_type eq 'ARRAY') { }
113 0 80 if @_
118 0 80 if @decls % 2 == 1
122 0 80 if do { no strict 'refs'; defined &{$class . "::new";} }
141 80 0 if ($base_type eq "ARRAY")
149 1168 0 if ($base_type eq "ARRAY")
154 0 1168 if ($type =~ /^\*(.)/)
159 40 1128 if ($type eq '@') { }
304 824 elsif ($type eq '%') { }
824 0 elsif ($type eq '$') { }
186 0 1168 if (do { no strict 'refs'; defined &{$class . "::$name";} }) { }
191 0 1168 if (defined $refs{$name})
197 1168 0 if ($base_type eq "ARRAY")
201 40 1128 if (defined $arrays{$name}) { }
304 824 elsif (defined $hashes{$name}) { }
221 0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
13 80 @_ ? :
0 13 if (ref $i eq "HASH" and not @_)
0 13 if @_ > 1
13 0 @_ ? :
438 1678 @_ ? :
0 438 if (ref $i eq "HASH" and not @_)
0 438 if @_ > 1
438 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
6 0 @_ ? :
0 6 if (ref $i eq "HASH" and not @_)
0 6 if @_ > 1
6 0 @_ ? :
0 89 if @_ > 1
15 74 @_ ? :
0 11 if @_ > 1
4 7 @_ ? :
2 24 @_ ? :
0 2 if (ref $i eq "HASH" and not @_)
0 2 if @_ > 1
2 0 @_ ? :
246 0 @_ ? :
0 246 if (ref $i eq "HASH" and not @_)
0 246 if @_ > 1
246 0 @_ ? :
30 599 if @_ > 1
42 436 @_ ? :
11035 45058 @_ ? :
32 11841 if (ref $i eq "HASH" and not @_)
0 11035 if @_ > 1
11035 0 @_ ? :
1510 6592 @_ ? :
7 1559 if (ref $i eq "HASH" and not @_)
0 1510 if @_ > 1
1510 0 @_ ? :
7 46 @_ ? :
0 7 if (ref $i eq "HASH" and not @_)
0 7 if @_ > 1
7 0 @_ ? :
853 1425 @_ ? :
0 853 if (ref $i eq "HASH" and not @_)
0 853 if @_ > 1
851 2 @_ ? :
0 424 if @_ > 1
0 424 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "ARRAY" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
59 193 @_ ? :
0 59 if (ref $i eq "HASH" and not @_)
0 59 if @_ > 1
59 0 @_ ? :
609 835 @_ ? :
0 609 if (ref $i eq "HASH" and not @_)
0 609 if @_ > 1
609 0 @_ ? :
22 84 @_ ? :
0 22 if (ref $i eq "HASH" and not @_)
0 22 if @_ > 1
22 0 @_ ? :
18 5 @_ ? :
0 18 if (ref $i eq "ARRAY" and not @_)
0 18 if @_ > 1
18 0 @_ ? :
663 13 @_ ? :
0 663 if (ref $i eq "ARRAY" and not @_)
0 663 if @_ > 1
663 0 @_ ? :
3 0 @_ ? :
0 3 if (ref $i eq "ARRAY" and not @_)
0 3 if @_ > 1
3 0 @_ ? :
10 312 @_ ? :
0 10 if (ref $i eq "HASH" and not @_)
0 10 if @_ > 1
10 0 @_ ? :
0 30 if @_ > 1
10 20 @_ ? :
0 263 if @_ > 1
51 212 @_ ? :
0 14 if @_ > 1
7 7 @_ ? :
0 436 if @_ > 1
51 385 @_ ? :
0 264 if @_ > 1
0 264 @_ ? :
0 125 if @_ > 1
0 125 @_ ? :
2 0 @_ ? :
2 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 2 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "ARRAY" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 239 if @_ > 1
239 0 @_ ? :
0 470 if @_ > 1
419 51 @_ ? :
0 970 if @_ > 1
0 970 @_ ? :
0 62 if @_ > 1
31 31 @_ ? :
0 2 if @_ > 1
0 2 @_ ? :
0 24 if @_ > 1
12 12 @_ ? :
0 366 if @_ > 1
39 327 @_ ? :
0 4 if @_ > 1
2 2 @_ ? :
0 24 if @_ > 1
12 12 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 14 if @_ > 1
7 7 @_ ? :
0 167 if @_ > 1
36 131 @_ ? :
0 12879 if @_ > 1
12552 327 @_ ? :
0 237 if @_ > 1
0 237 @_ ? :
0 653 if @_ > 1
0 653 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 1 if @_ > 1
0 1 @_ ? :
0 2 if @_ > 1
0 2 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 52 if @_ > 1
0 52 @_ ? :
0 104 if @_ > 1
0 104 @_ ? :
0 21 if @_ > 1
0 21 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 38 if @_ > 1
2 36 @_ ? :
0 264 if @_ > 1
0 264 @_ ? :
0 54 if @_ > 1
0 54 @_ ? :
0 46 if @_ > 1
39 7 @_ ? :
0 114 if @_ > 1
0 114 @_ ? :
0 14 if @_ > 1
0 14 @_ ? :
0 19 if @_ > 1
0 19 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 5 if @_ > 1
0 5 @_ ? :
0 11 if @_ > 1
0 11 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 104 if @_ > 1
0 104 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 2 if @_ > 1
0 2 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 88 if @_ > 1
0 88 @_ ? :
0 21 if @_ > 1
0 21 @_ ? :
0 12615 if @_ > 1
0 12615 @_ ? :
0 679 if @_ > 1
0 679 @_ ? :
0 434 if @_ > 1
0 434 @_ ? :
0 4 if @_ > 1
0 4 @_ ? :
0 64 if @_ > 1
0 64 @_ ? :
0 247 if @_ > 1
0 247 @_ ? :
0 523 if @_ > 1
0 523 @_ ? :
0 2967 if @_ > 1
0 2967 @_ ? :
0 201 if @_ > 1
0 201 @_ ? :
0 88 if @_ > 1
4 84 @_ ? :
0 1427 if @_ > 1
2 1425 @_ ? :
0 1302 if @_ > 1
0 1302 @_ ? :
0 2517 if @_ > 1
0 2517 @_ ? :
0 994 if @_ > 1
0 994 @_ ? :
0 23246 if @_ > 1
0 23246 @_ ? :
0 354 if @_ > 1
11 343 @_ ? :
0 444 if @_ > 1
88 356 @_ ? :
0 11528 if @_ > 1
11250 278 @_ ? :
0 190 if @_ > 1
3 187 @_ ? :
0 248 if @_ > 1
0 248 @_ ? :
0 481 if @_ > 1
200 281 @_ ? :
0 429 unless @_
429 0 defined $init{'name'} ? :
423 6 defined $init{'filename'} ? :
429 0 defined $init{'lineno'} ? :
2 427 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
0 429 defined $init{'userdata'} ? :
0 429 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
0 429 defined $init{'attributes'} ? :
21 408 defined $init{'direction'} ? :
429 0 defined $init{'data_type'} ? :
406 23 defined $init{'comment'} ? :
17 412 defined $init{'array'} ? :
421 6 defined $init{'module'} ? :
4 423 defined $init{'net'} ? :
4 423 defined $init{'sp_autocreated'} ? :
4 421 unless @_
21 404 defined $init{'name'} ? :
21 404 defined $init{'filename'} ? :
21 404 defined $init{'lineno'} ? :
6 19 defined $init{'netlist'} ? :
0 25 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
0 25 defined $init{'userdata'} ? :
0 25 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
4 21 defined $init{'attributes'} ? :
15 10 defined $init{'comment'} ? :
15 10 if defined $init{'_cells'} and ref $init{'_cells'} ne "HASH"
4 17 defined $init{'_cells'} ? :
15 6 if defined $init{'_modports'} and ref $init{'_modports'} ne "HASH"
6 15 defined $init{'_modports'} ? :
0 21 if defined $init{'_ports'} and ref $init{'_ports'} ne "HASH"
0 21 defined $init{'_ports'} ? :
0 21 if defined $init{'_portsordered'} and ref $init{'_portsordered'} ne "ARRAY"
0 15 defined $init{'_portsordered'} ? :
0 15 if defined $init{'_nets'} and ref $init{'_nets'} ne "HASH"
0 6 defined $init{'_nets'} ? :
0 6 defined $init{'_level'} ? :
0 1409 unless @_
1409 0 defined $init{'name'} ? :
1409 0 defined $init{'keyword'} ? :
1409 0 defined $init{'filename'} ? :
9 1400 defined $init{'lineno'} ? :
7 1402 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
0 1409 defined $init{'userdata'} ? :
0 1409 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
1400 9 defined $init{'attributes'} ? :
1401 8 defined $init{'lhs'} ? :
1401 8 defined $init{'rhs'} ? :
1 1408 defined $init{'module'} ? :
1400 38 unless @_
1430 8 defined $init{'name'} ? :
1430 8 defined $init{'keyword'} ? :
1430 8 defined $init{'filename'} ? :
4 1433 defined $init{'lineno'} ? :
402 1035 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
400 1037 defined $init{'userdata'} ? :
0 1437 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
0 1437 defined $init{'attributes'} ? :
28 1409 defined $init{'lhs'} ? :
28 1409 defined $init{'rhs'} ? :
1402 35 defined $init{'module'} ? :
26 2066 unless @_
657 1435 defined $init{'name'} ? :
634 58 defined $init{'filename'} ? :
657 35 defined $init{'lineno'} ? :
0 692 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
0 692 defined $init{'userdata'} ? :
7 685 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
6 660 defined $init{'attributes'} ? :
634 32 defined $init{'data_type'} ? :
657 9 defined $init{'decl_type'} ? :
34 632 defined $init{'net_type'} ? :
602 64 defined $init{'comment'} ? :
634 32 defined $init{'array'} ? :
34 632 defined $init{'module'} ? :
34 632 defined $init{'signed'} ? :
34 9 defined $init{'value'} ? :
0 43 defined $init{'port'} ? :
9 34 defined $init{'msb'} ? :
11 32 defined $init{'lsb'} ? :
1 42 defined $init{'stored_lsb'} ? :
0 43 defined $init{'_used_in'} ? :
0 43 defined $init{'_used_out'} ? :
0 36 defined $init{'_used_inout'} ? :
34 2 defined $init{'simple_type'} ? :
0 36 defined $init{'sp_traced'} ? :
0 36 defined $init{'sp_autocreated'} ? :
0 11110 unless @_
11108 2 defined $init{'name'} ? :
11108 2 defined $init{'filename'} ? :
11108 2 defined $init{'lineno'} ? :
0 11110 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
0 11110 defined $init{'userdata'} ? :
0 11110 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
0 11110 defined $init{'attributes'} ? :
11095 13 defined $init{'comment'} ? :
11108 0 defined $init{'submodname'} ? :
11043 65 defined $init{'module'} ? :
65 11043 defined $init{'params'} ? :
11108 0 defined $init{'range'} ? :
11030 78 if defined $init{'_pins'} and ref $init{'_pins'} ne "HASH"
11030 78 defined $init{'_pins'} ? :
11030 13 defined $init{'byorder'} ? :
0 11043 defined $init{'submod'} ? :
9 11034 defined $init{'gateprim'} ? :
9 11034 defined $init{'_autoinst'} ? :
0 11150 unless @_
120 11030 defined $init{'name'} ? :
120 11030 defined $init{'filename'} ? :
120 11030 defined $init{'lineno'} ? :
11031 119 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
0 11150 defined $init{'userdata'} ? :
0 11150 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
0 120 defined $init{'attributes'} ? :
109 11 defined $init{'comment'} ? :
120 0 defined $init{'_pinselects'} ? :
120 0 defined $init{'portname'} ? :
18 102 defined $init{'portnumber'} ? :
118 1 defined $init{'pinnamed'} ? :
118 1 defined $init{'cell'} ? :
109 10 defined $init{'_nets'} ? :
109 10 defined $init{'port'} ? :
0 119 defined $init{'sp_autocreated'} ? :
41 912 unless @_
884 69 defined $init{'name'} ? :
843 109 defined $init{'filename'} ? :
843 109 defined $init{'lineno'} ? :
29 923 defined $init{'module'} ? :
28 924 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
109 843 defined $init{'userdata'} ? :
0 952 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
5 947 defined $init{'attributes'} ? :
814 29 defined $init{'comment'} ? :
814 29 if defined $init{'_ports'} and ref $init{'_ports'} ne "HASH"
807 36 defined $init{'_ports'} ? :
812 31 if defined $init{'_portsordered'} and ref $init{'_portsordered'} ne "ARRAY"
812 31 defined $init{'_portsordered'} ? :
3 840 if defined $init{'_nets'} and ref $init{'_nets'} ne "HASH"
3 840 defined $init{'_nets'} ? :
0 1056 unless @_
216 33 defined $init{'name'} ? :
206 43 defined $init{'basename'} ? :
214 33 defined $init{'netlist'} ? :
204 43 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
200 47 defined $init{'userdata'} ? :
0 247 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
3 244 defined $init{'attributes'} ? :
0 247 defined $init{'comment'} ? :
14 233 defined $init{'is_libcell'} ? :
4 238 defined $init{'preproc'} ? :
4 238 if defined $init{'_interfaces'} and ref $init{'_interfaces'} ne "HASH"
0 238 defined $init{'_interfaces'} ? :
0 238 if defined $init{'_modules'} and ref $init{'_modules'} ne "HASH"
28 210 defined $init{'_modules'} ? :
25 454 unless @_
251 228 defined $init{'name'} ? :
51 428 defined $init{'filename'} ? :
251 228 defined $init{'lineno'} ? :
14 465 defined $init{'netlist'} ? :
14 465 defined $init{'keyword'} ? :
0 479 if defined $init{'userdata'} and ref $init{'userdata'} ne "HASH"
0 479 defined $init{'userdata'} ? :
8 471 if defined $init{'attributes'} and ref $init{'attributes'} ne "HASH"
237 242 defined $init{'attributes'} ? :
29 450 if defined $init{'attrs'} and ref $init{'attrs'} ne "ARRAY"
37 442 defined $init{'attrs'} ? :
37 442 defined $init{'comment'} ? :
29 450 if defined $init{'_ports'} and ref $init{'_ports'} ne "HASH"
0 479 defined $init{'_ports'} ? :
200 43 if defined $init{'_portsordered'} and ref $init{'_portsordered'} ne "ARRAY"
200 43 defined $init{'_portsordered'} ? :
0 214 if defined $init{'_nets'} and ref $init{'_nets'} ne "HASH"
0 214 defined $init{'_nets'} ? :
0 214 if defined $init{'_cells'} and ref $init{'_cells'} ne "HASH"
0 214 defined $init{'_cells'} ? :
0 214 if defined $init{'_celldecls'} and ref $init{'_celldecls'} ne "HASH"
0 214 defined $init{'_celldecls'} ? :
0 214 if defined $init{'_cellarray'} and ref $init{'_cellarray'} ne "HASH"
0 214 defined $init{'_cellarray'} ? :
0 214 defined $init{'_cellnum'} ? :
0 214 defined $init{'_level'} ? :
0 214 if defined $init{'_statements'} and ref $init{'_statements'} ne "HASH"
0 214 defined $init{'_statements'} ? :
0 214 defined $init{'_stmtnum'} ? :
14 200 defined $init{'is_top'} ? :
12 2 defined $init{'is_libcell'} ? :
0 14 if defined $init{'_autocovers'} and ref $init{'_autocovers'} ne "HASH"
0 14 defined $init{'_autocovers'} ? :
0 14 defined $init{'_autosignal'} ? :
0 14 defined $init{'_autosubcells'} ? :
0 14 if defined $init{'_autotrace'} and ref $init{'_autotrace'} ne "HASH"
0 14 defined $init{'_autotrace'} ? :
0 14 defined $init{'_autoinoutmod'} ? :
0 14 if defined $init{'_pintemplates'} and ref $init{'_pintemplates'} ne "ARRAY"
0 14 defined $init{'_pintemplates'} ? :
0 14 defined $init{'_ctor'} ? :
0 14 defined $init{'_code_symbols'} ? :
0 14 if defined $init{'_covergroups'} and ref $init{'_covergroups'} ne "HASH"
0 14 defined $init{'_covergroups'} ? :
0 14 defined $init{'lesswarn'} ? :
0 531 if @_ > 1
220 311 @_ ? :
0 3 if @_ > 1
0 3 @_ ? :
0 472 if @_ > 1
54 418 @_ ? :
0 1387 if @_ > 1
85 1302 @_ ? :
0 51 if @_ > 1
0 51 @_ ? :
0 17 if @_ > 1
0 17 @_ ? :
0 442 if @_ > 1
442 0 @_ ? :
0 31 if @_ > 1
0 31 @_ ? :
0 11 if @_ > 1
0 11 @_ ? :
0 5 if @_ > 1
0 5 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 0 if @_ > 1
0 0 @_ ? :
0 674 if @_ > 1
45 629 @_ ? :
0 250 if @_ > 1
0 250 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 0 @_ ? :
0 0 if (ref $i eq "HASH" and not @_)
0 0 if @_ > 1
0 0 @_ ? :
0 601 if @_ > 1
0 601 @_ ? :
222 0 80 if $@