line |
true |
false |
branch |
81
|
2 |
57 |
if $edge->undirected |
90
|
24 |
204 |
if $d == 0 |
94
|
98 |
106 |
if $d == -1 |
99
|
6 |
198 |
if $edge->{'bidirectional'} |
105
|
57 |
171 |
if $i == 4 |
118
|
31 |
874 |
if ($src == $dst) |
121
|
31 |
0 |
unless scalar @$rc == 0 |
126
|
77 |
742 |
if $src->is_multicelled or $dst->is_multicelled or $edge->has_ports |
141
|
0 |
742 |
if $self->{'debug'} |
143
|
679 |
63 |
if ($dx == 0 or $dy == 0) { } |
147
|
0 |
679 |
if $self->{'debug'} |
154
|
579 |
100 |
if (abs $dx1 == 2 or abs $dy1 == 2) |
156
|
567 |
12 |
unless (exists $$cells{"$x,$y"}) |
161
|
5 |
562 |
if ($edge->bidirectional) { } |
|
13 |
549 |
elsif ($edge->undirected) { } |
163
|
4 |
1 |
if $dy == 0 |
164
|
1 |
4 |
if $dx == 0 |
168
|
7 |
6 |
if $dy == 0 |
169
|
6 |
7 |
if $dx == 0 |
173
|
266 |
283 |
if $dx == 1 and $dy == 0 |
174
|
176 |
373 |
if $dx == 0 and $dy == 1 |
175
|
66 |
483 |
if $dx == -1 and $dy == 0 |
176
|
41 |
508 |
if $dx == 0 and $dy == -1 |
180
|
4 |
563 |
if (($edge->{'to'}->attribute('shape') || '') eq 'edge') |
183
|
3 |
1 |
if ($dx > 0) { } |
|
0 |
1 |
elsif ($dx < 0) { } |
192
|
3 |
564 |
if (($edge->{'from'}->attribute('shape') || '') eq 'edge') |
201
|
51 |
61 |
if $dx == 0 |
208
|
101 |
181 |
if exists $$cells{"$x,$y"} |
211
|
22 |
159 |
if $label_done++ == 0 |
215
|
11 |
170 |
if $x == $x1 and $y == $y1 |
218
|
11 |
101 |
if ($done == 0) |
220
|
0 |
11 |
if $self->{'debug'} |
241
|
0 |
63 |
if $self->{'debug'} |
247
|
63 |
0 |
if ref $edge and ($edge->label || '') eq '' |
251
|
16 |
51 |
if exists $$cells{"$x,$y"} |
252
|
0 |
51 |
if $self->{'debug'} |
253
|
0 |
51 |
if $label++ == 0 |
259
|
36 |
27 |
if exists $$cells{"$x,$y"} |
261
|
27 |
36 |
if ($done == 0) |
266
|
0 |
27 |
if $self->{'debug'} |
271
|
0 |
19 |
if exists $$cells{"$x,$y"} |
272
|
0 |
19 |
if $self->{'debug'} |
278
|
36 |
27 |
if ($done != 0) |
282
|
0 |
36 |
if $self->{'debug'} |
289
|
8 |
59 |
if exists $$cells{"$x,$y"} |
290
|
0 |
59 |
if $self->{'debug'} |
296
|
11 |
25 |
if exists $$cells{"$x,$y"} |
298
|
25 |
11 |
if ($done == 0) |
303
|
0 |
25 |
if $self->{'debug'} |
306
|
25 |
0 |
if $edge->label eq '' |
310
|
4 |
27 |
if exists $$cells{"$x,$y"} |
311
|
0 |
27 |
if $self->{'debug'} |
312
|
0 |
27 |
if $label++ == 0 |
319
|
48 |
15 |
if ($done == 0) |
321
|
0 |
48 |
if $self->{'debug'} |
326
|
0 |
15 |
if $self->{'debug'} |
338
|
0 |
31 |
if $self->{'debug'} |
366
|
3 |
28 |
if $flow == 270 |
374
|
2 |
29 |
if $flow == 0 |
382
|
7 |
24 |
if $flow == 180 |
394
|
0 |
114 |
if $self->{'debug'} |
395
|
83 |
31 |
unless $places[$idx + 2] == $this_try |
400
|
0 |
31 |
if $self->{'debug'} |
402
|
0 |
31 |
unless $self->_path_is_clear(\@rc) |
404
|
0 |
31 |
if $self->{'debug'} |
440
|
1262 |
5892 |
if (@$heap == 0) { } |
|
1522 |
4370 |
elsif ($elem->[0] < $heap->[0][0]) { } |
|
838 |
3532 |
elsif ($elem->[0] > $heap->[-1][0]) { } |
462
|
1910 |
1622 |
if (scalar @$heap < 10) { } |
467
|
862 |
4946 |
if ($e->[0] > $el) |
485
|
5040 |
2510 |
if ($heap->[$m][0] <= $el) { } |
496
|
1438 |
2513 |
if ($heap->[$l][0] > $el) |
531
|
0 |
0 |
if ($e->[1] == $x and $e->[2] == $y) |
564
|
6564 |
0 |
if (defined $x1) |
569
|
299 |
6265 |
if ref $cells->{$xy} and $cells->{$xy}->isa('Graph::Easy::Edge') |
572
|
6563 |
1 |
if (defined $px) |
581
|
3247 |
3316 |
unless $dx1 == $dx2 or $dy1 == $dy2 |
595
|
16665 |
4195 |
if $dx != 0 and $dy != 0 |
636
|
7 |
1212 |
if $dx2 == 0 and $dy2 == 0 |
638
|
0 |
1219 |
if $dx1 == 0 and $dy1 == 0 |
641
|
0 |
1219 |
unless $$edge_type{"$dx1,$dy1,$dx2,$dy2"} |
661
|
331 |
2871 |
if exists $$cells{"$nx,$ny"} |
662
|
258 |
2944 |
if ($type == 1) { } |
|
71 |
2873 |
elsif ($type == 2) { } |
686
|
0 |
12150 |
if $self->{'debug'} > 2 |
689
|
745 |
10839 |
if $x < $min_x or $x > $max_x or $y < $min_y or $y > $max_y |
692
|
0 |
10839 |
if $self->{'debug'} > 2 |
694
|
3882 |
6957 |
if exists $closed->{$p} |
696
|
956 |
752 |
if (exists $cells->{$p} and ref $cells->{$p} and $cells->{$p}->isa('Graph::Easy::Edge')) |
702
|
417 |
539 |
if $type == 1 or $type == 2 |
705
|
752 |
5249 |
if exists $cells->{$p} |
722
|
240 |
2 |
if defined $cache->{'min_x'} |
736
|
2 |
2 |
if $x < $min_x |
737
|
2 |
2 |
if $y < $min_y |
738
|
4 |
0 |
if $x > $max_x |
739
|
3 |
1 |
if $y > $max_y |
742
|
0 |
2 |
if $self->{'debug'} |
792
|
16 |
94 |
unless exists $next_fields->{$type} |
799
|
33 |
61 |
if $type == 1 || $type == 2 and $c->{'type'} & $mask |
811
|
6 |
116 |
if exists $cells->{$sxsy} |
854
|
19 |
12 |
if $end or $edge->{'bidirectional'} |
865
|
95 |
13 |
unless exists $$cells{"$x,$y"} |
868
|
5 |
8 |
unless $cell->isa('Graph::Easy::Edge::Cell') |
872
|
0 |
8 |
unless $cell_type == 1 or $cell_type == 2 |
876
|
2 |
6 |
unless scalar grep({$e == $_;} @$shared) |
900
|
0 |
248 |
if $self->{'debug'} |
917
|
0 |
248 |
if ($edge->{'to'}->attribute('shape') eq 'edge') |
921
|
0 |
248 |
if ($edge->{'from'}->attribute('shape') eq 'edge') |
942
|
28 |
220 |
if defined $e_p and @ee_p == 1 |
948
|
28 |
56 |
if @{$s->{'cells'};} > 0 |
952
|
18 |
230 |
if (@shared > 0) { } |
958
|
0 |
18 |
if $self->{'debug'} |
963
|
6 |
12 |
if $path |
973
|
16 |
214 |
if defined $e_p |
979
|
0 |
242 |
unless scalar @B > 0 |
985
|
20 |
222 |
if defined $s_p and @ss_p == 1 |
991
|
21 |
41 |
if @{$s->{'cells'};} > 0 |
994
|
13 |
229 |
if (@shared > 0) { } |
1000
|
0 |
13 |
if $self->{'debug'} |
1005
|
0 |
13 |
if $path |
1017
|
18 |
211 |
if $edge->{'bidirectional'} |
1021
|
36 |
193 |
if defined $s_p |
1024
|
0 |
229 |
unless @start > 0 |
1033
|
602 |
510 |
if ($sy < $src->{'y'} or $sy >= $src->{'y'} + $src->{'cy'}) { } |
1035
|
230 |
372 |
if $sy < $src->{'y'} |
1036
|
372 |
230 |
if $sy > $src->{'y'} |
1040
|
253 |
257 |
if $sx < $src->{'x'} |
1041
|
257 |
253 |
if $sx > $src->{'x'} |
1053
|
13 |
229 |
if (@$path > 0 and keys %$start_cells > 0) |
1064
|
12 |
230 |
if (@$path > 0 and keys %$end_cells > 0) |
1120
|
11 |
1161 |
if $rcell and not $rcell =~ /::Edge/ |
1122
|
298 |
863 |
if $rcell =~ /::Edge/ |
1123
|
266 |
32 |
if $t != 0 and $t != 1 and $t != 2 |
1132
|
1104 |
2114 |
if $dist < $lowest |
1133
|
1104 |
2114 |
if $dist < $lowest |
1138
|
32 |
863 |
if $t != 0 |
1144
|
0 |
895 |
if $self->{'debug'} > 1 |
1165
|
0 |
3442 |
if $self->{'debug'} |
1168
|
0 |
3442 |
if ($tries++ > $max_tries) |
1175
|
0 |
3442 |
if $self->{'debug'} > 1 |
1188
|
240 |
13590 |
if ($x == $stop[$i] and $y == $stop[$i + 1]) |
1190
|
228 |
12 |
if defined $stop[$i + 2] |
1192
|
12 |
228 |
if ($per_field > 3) { } |
|
0 |
228 |
elsif ($self->{'debug'} > 1) { } |
1196
|
0 |
12 |
if $self->{'debug'} > 1 |
1205
|
0 |
3202 |
unless defined $x and defined $y |
1216
|
0 |
5666 |
unless (defined $nx and defined $ny) |
1222
|
5666 |
0 |
if defined $px and defined $py |
1227
|
1566 |
4100 |
if exists $open_by_pos->{$n} |
1245
|
3300 |
9344 |
if $d < $lowest_distance |
1248
|
0 |
4100 |
if $self->{'debug'} > 1 |
1263
|
2 |
240 |
unless (defined $elem) |
1265
|
0 |
2 |
if $self->{'debug'} |
1284
|
0 |
1155 |
unless exists $$closed{"$cx,$cy"} |
1292
|
1155 |
0 |
if ($edge_type == 0) |
1297
|
0 |
1155 |
unless (defined $px) |
1308
|
0 |
0 |
if ($edge_flags & 512) != 0 |
1309
|
0 |
0 |
if ($edge_flags & 2048) != 0 |
1311
|
0 |
0 |
if ($edge_flags & 256) != 0 |
1312
|
0 |
0 |
if ($edge_flags & 1024) != 0 |
1317
|
240 |
915 |
unless (defined $lx) |
1324
|
228 |
927 |
unless (defined $lx) |
1338
|
77 |
151 |
if ($edge_flags & 128) != 0 |
1339
|
39 |
189 |
if ($edge_flags & 32) != 0 |
1341
|
79 |
149 |
if ($edge_flags & 64) != 0 |
1342
|
40 |
188 |
if ($edge_flags & 16) != 0 |
1350
|
0 |
1155 |
if $self->{'debug'} > 1 |
1352
|
0 |
0 |
if ($px == $lx and $py == $ly and $cx != $lx || $cy != $ly) |
1356
|
0 |
0 |
if $self->{'debug'} |
1360
|
0 |
1155 |
if ($type & 15) == 0 |
1367
|
239 |
117 |
if ($label_cell == 0 and not exists $$cells{"$cx,$cy"} and $t == 1 || $t == 2) |
1373
|
155 |
898 |
if $type == 5 or $t == 6 or $t == 3 or $t == 4 |
1378
|
240 |
915 |
if $$closed{"$cx,$cy"}[5] |
1386
|
0 |
8 |
if @bends >= 3 and $self->{'debug'} |
1389
|
8 |
232 |
if @bends >= 3 |
1391
|
0 |
240 |
if wantarray |
1475
|
0 |
0 |
if $a->[0] != $pattern->[0] or $b->[0] != $pattern->[1] or $c->[0] != $pattern->[2] or $dx != $pattern->[3] or $dy != $pattern->[4] |
1490
|
0 |
0 |
if $pattern->[5] == 2 |
1492
|
0 |
0 |
if exists $$cells{"$cx,$cy"} |
1501
|
0 |
0 |
if $x == $cx and $y == $cy |
1508
|
0 |
0 |
if exists $$cells{"$x,$y"} |
1522
|
0 |
0 |
if exists $$cells{"$x,$y"} |
1527
|
0 |
0 |
if $x == $cx and $y == $cy |
1539
|
0 |
0 |
$a->[3] - $c->[3] ? : |
1625
|
0 |
0 |
if exists $cells->{$xy} and ref($cells->{$xy}) =~ /Node/ |
1627
|
0 |
0 |
if exists $cells->{$xy} and not exists $path->{$xy} |
1631
|
0 |
0 |
unless exists $closed->{$xy} or exists $open->{$xy} |
1634
|
0 |
0 |
if (exists $closed->{$xy}) { } |
|
0 |
0 |
elsif (exists $open->{$xy}) { } |
1648
|
0 |
0 |
if exists $path->{$xy} |