| line | true | false | branch | 
 
| 37 | 13 | 4 | if defined $_ | 
 
| 38 | 13 | 4 | if grep {length $_ if defined $_;} $p{'scheme'} | 
 
| 40 | 20 | 14 | if defined $_ | 
 
|  | 3 | 14 | if (grep {length $_ if defined $_;} $p{'username'}, $p{'password'}) | 
 
| 43 | 0 | 3 | if ($uri->can('user') and $uri->can('password')) { } | 
 
| 53 | 14 | 20 | if defined $_ | 
 
| 54 | 14 | 20 | if grep {length $_ if defined $_;} $p{$k} | 
 
| 57 | 7 | 10 | if ($p{'path'}) | 
 
| 58 | 5 | 2 | if (ref $p{'path'}) { } | 
 
| 70 | 1 | 16 | if defined $_ | 
 
| 71 | 1 | 16 | if grep {length $_ if defined $_;} $p{'fragment'} | 
 
| 92 | 4 | 12 | if ($sep ne '&' and $uri->query) | 
 
| 108 | 27 | 43 | if defined $_ | 
 
| 109 | 25 | 10 | if grep {length $_ if defined $_;} map({$$p{$_};} 'host', 'fragment') | 
 
| 114 | 7 | 3 | ref $$p{'path'} ? : | 
 
|  | 8 | 2 | if ref $$p{'path'} ? @{$$p{'path'};} : defined $$p{'path'} && length $$p{'path'} | 
 
| 117 | 0 | 2 | if keys %{$$p{'query'};} |