line |
true |
false |
branch |
18
|
2 |
69 |
if (my $arguments = delete $params{'+arguments'}) |
34
|
71 |
0 |
if $self->{'routes'} |
35
|
0 |
71 |
unless defined $self->{'strict_trailing_slash'} |
36
|
0 |
71 |
unless defined $self->{'strict_case'} |
38
|
7 |
64 |
if (my $methods = $self->{'method'}) |
39
|
6 |
1 |
unless ref $methods eq 'ARRAY' |
59
|
18 |
153 |
unless $self->_match_method($args{'method'}) |
61
|
90 |
63 |
unless substr($path, 0, 1) eq '/' |
63
|
5 |
6 |
if (not $self->{'strict_trailing_slash'} and $path ne '/' and not $path =~ m[/$]) |
68
|
61 |
92 |
unless @captures |
70
|
85 |
7 |
unless $self->{'defaults'} |
73
|
0 |
89 |
unless @captures |
77
|
87 |
2 |
if (defined $value or not exists $captures->{$capture}) |
83
|
2 |
90 |
if ($self->{'arguments_push'}) { } |
86
|
0 |
2 |
unless $args{'arguments'} |
89
|
2 |
3 |
if (exists $arguments->{$key}) { } |
90
|
2 |
0 |
unless ref $arguments->{$key} eq 'ARRAY' |
91
|
1 |
1 |
ref $value eq 'ARRAY' ? : |
100
|
74 |
16 |
unless $args{'arguments'} |
101
|
85 |
5 |
unless $self->arguments |
112
|
21 |
71 |
if ($self->{'subroutes'}) |
138
|
49 |
37 |
if ($type eq 'capture') { } |
|
8 |
29 |
elsif ($type eq 'glob') { } |
|
29 |
0 |
elsif ($type eq 'text') { } |
139
|
8 |
9 |
if ($part->{'level'} and exists $params{$name}) |
143
|
10 |
39 |
unless (exists $params{$name}) |
145
|
9 |
1 |
if $part->{'level'} and $part->{'level'} > $optional_depth |
147
|
1 |
0 |
if (exists $self->{'defaults'} and exists $self->{'defaults'}{$name}) { } |
160
|
3 |
37 |
if (defined(my $constraint = $part->{'constraint'})) |
161
|
2 |
1 |
unless $param =~ /^ $constraint $/msx |
168
|
3 |
5 |
unless (exists $params{$name}) |
169
|
1 |
2 |
if (exists $self->{'defaults'} and exists $self->{'defaults'}{$name}) { } |
|
1 |
1 |
elsif ($part->{'optional'}) { } |
193
|
71 |
9 |
if ($path ne '') |
201
|
3 |
32 |
if ($parent_pattern) |
203
|
0 |
3 |
unless substr($head, -1) eq '/' |
208
|
10 |
25 |
if ($path ne '/' and $trailing_slash) |
221
|
142 |
29 |
unless defined $methods |
223
|
7 |
22 |
unless defined $value |
232
|
0 |
71 |
if ref $self->{'pattern'} eq 'Regexp' |
235
|
4 |
67 |
unless ($pattern =~ m[ \A ( / | \(/.+?\)\?/ ) ]msx) |
249
|
150 |
151 |
if ($pattern =~ m[ \G \/ ]cgmsx) { } |
|
53 |
98 |
elsif ($pattern =~ / \G :($TOKEN) /cgmsx) { } |
|
9 |
89 |
elsif ($pattern =~ / \G \*($TOKEN) /cgmsx) { } |
|
61 |
28 |
elsif ($pattern =~ / \G ($TOKEN) /cgmsx) { } |
|
16 |
12 |
elsif ($pattern =~ / \G \( /cgmsx) { } |
|
11 |
1 |
elsif ($pattern =~ / \G \)\? /cgmsx) { } |
|
1 |
0 |
elsif ($pattern =~ / \G \) /cgmsx) { } |
250
|
79 |
71 |
if ($part) |
261
|
4 |
49 |
if (exists $self->{'constraints'}{$name}) { } |
263
|
1 |
3 |
if (ref $constraint eq 'ARRAY') |
272
|
4 |
49 |
$constraint ? : |
313
|
70 |
203 |
if ($part->[-1] and substr($pattern, pos $pattern, 1) eq '/') |
318
|
1 |
70 |
if ($par_depth != 0) |
322
|
6 |
0 |
unless ($self->{'strict_trailing_slash'} or $self->{'subroutes'}) |
323
|
2 |
4 |
if ($re =~ m[/$]) { } |
|
1 |
3 |
elsif ($re =~ /\)\?$/) { } |
334
|
13 |
57 |
if ($self->{'subroutes'}) { } |
341
|
68 |
2 |
if ($self->{'strict_case'}) { } |
348
|
43 |
27 |
if ($part and @$part) |