line |
true |
false |
branch |
50
|
0 |
13 |
unless /\G \s*\{/gx |
54
|
31 |
31 |
if (/\G (\s+)/cgx) { } |
|
0 |
31 |
elsif (/\G (\# [^\n]* \n)/cgx) { } |
|
3 |
28 |
elsif (/\G has \s* ([\$\@\%])\.([a-zA-Z_]\w*) \s* \;/cgx) { } |
|
0 |
28 |
elsif (/\G sub \s+ ($identifier)
\s*? ( \( ( $signature ) \) )? (\s+ $traits)?/cgx) { } |
|
13 |
15 |
elsif (/\G method \s+ ($identifier)
\s*? ( \( ( $signature ) \) )? (\s+ $traits)?/cgx) { } |
|
2 |
13 |
elsif (/\G submethod \s+ ($identifier)
\s*? ( \( ( $signature ) \) )? (\s+ $traits)?/cgx) { } |
|
13 |
0 |
elsif (/\G \}/cgx) { } |
67
|
0 |
0 |
if /\S/ |
70
|
0 |
0 |
$2 ? : |
82
|
0 |
0 |
if /\S/ |
86
|
0 |
13 |
$sig ? : |
98
|
0 |
0 |
if /\S/ |
102
|
0 |
2 |
$2 ? : |
140
|
13 |
0 |
if $$data[-1]{'type'} eq 'empty' |
143
|
0 |
18 |
if ($$_{'name'} eq 'new') { } |
|
0 |
18 |
elsif ($$_{'name'} eq 'DESTROY') { } |
151
|
13 |
0 |
unless ($newstruct) |
161
|
13 |
0 |
unless ($destroystruct) |
175
|
41 |
3 |
if ($$_{'type'} ne 'attr' and $$_{'type'}) |
176
|
0 |
41 |
if (exists $seen{$$_{'name'}}) |
190
|
13 |
31 |
if ($$_{'type'} eq 'sub') |
204
|
3 |
41 |
if ($$_{'type'} eq 'attr') |
212
|
28 |
16 |
if ($$_{'type'} eq 'method' or $$_{'type'} eq 'submethod') |
217
|
13 |
31 |
if ($$_{'type'} eq 'sub') |
241
|
41 |
3 |
if ($$_{'type'} ne 'attr') |
246
|
3 |
41 |
if ($$_{'type'} eq 'attr') { } |
257
|
13 |
31 |
if ($$_{'type'} eq 'sub') |
267
|
13 |
31 |
if ($$_{'type'} eq 'sub') |
283
|
13 |
31 |
if ($$_{'type'} eq 'method') |
295
|
15 |
29 |
if ($$_{'type'} eq 'submethod') |
307
|
0 |
212 |
if @_ |
310
|
13 |
199 |
if (/\G class (\s+ $identifier)? (\s+ $traits)? (?= \s* \{ )/cgx) |
311
|
6 |
3 |
if /\S/ |
315
|
3 |
10 |
unless ($name) |
326
|
3 |
10 |
if ($anon) { } |
337
|
15 |
1 |
if @_ |