| line | % | coverage | branch |
| 149 | 50 | T | F | if (not defined $class) { } |
| 50 | T | F | elsif (&Scalar::Util::blessed($class)) { } |
| 164 | 50 | T | F | unless (-d $directory) |
| 273 | 50 | T | F | if (not ref $self) { } |
| 50 | T | F | elsif (ref $self eq 'HASH') { } |
| 100 | T | F | elsif (ref $_[0] eq 'HASH') { } |
| 50 | T | F | elsif (ref $_[0]) { } |
| 50 | T | F | elsif (scalar @_ and scalar(@_) % 2 == 0) { } |
| 274 | 0 | T | F | if (scalar @_) { } |
| 0 | T | F | elsif (not defined $self) { } |
| 0 | T | F | elsif ($self eq __PACKAGE__) { } |
| 297 | 50 | T | F | unless my $location = $params{"location"} |
| 302 | 100 | T | F | unless (_valid_location($location)) |
| 306 | 50 | T | F | if ($location =~ /^(.+),\s*Washington\s*DC,(.+)$/) |
| 310 | 100 | T | F | if (my $rc = $known_locations{$location}) |
| 327 | 100 | T | F | unless $location =~ /,/ or $params{"region"} |
| 331 | 50 | T | F | if $cached_result |
| 339 | 50 | T | F | if "Geo::Coder::Free::MissCache"->missed($miss_scope, $miss_key) |
| 348 | 50 | T | F | if ($location =~ /^([\w\s\-]+),([\w\s]+),([\w\s]+)?$/) { } |
| 0 | T | F | elsif ($location =~ /^([\w\s\-]+),([\w\s]+),([\w\s]+),\s*(Canada|United States|USA|US)?$/) { } |
| 0 | T | F | elsif ($location =~ /^[\w\s-],[\w\s-]/) { } |
| 0 | T | F | elsif ($location =~ /^[\w\s-]+$/ and my $region = $params{'region'}) { } |
| 0 | T | F | elsif ($location =~ /^([\w\s-]+),\s*(\w+)$/) { } |
| 358 | 50 | T | F | if ($location =~ /^St\.? (.+)/) |
| 361 | 50 | T | F | if ($country =~ /^(Canada|United States|USA|US)$/) |
| 399 | 50 | T | F | if ($country) |
| 400 | 50 | T | F | if (defined $country and $country eq 'UK' || $country eq 'United Kingdom' || $country eq 'England') |
| 408 | 50 | T | F | if ($state and $admin1cache{$state}) { } |
| 50 | T | F | elsif ($admin1cache{$country} and not defined $state) { } |
| 413 | 50 | T | F | unless $$self{"admin1"} //= "Geo::Coder::Free::DB::MaxMind::admin1"->new("no_entry", 1) |
| 416 | 50 | T | F | if (my $admin1 = $$self{'admin1'}->fetchrow_hashref('asciiname', $country)) { } |
| 50 | T | F | elsif ($state) { } |
| 50 | T | F | elsif ($countrycode) { } |
| 0 | T | F | elsif (Locale::Country::code2country($country)) { } |
| 421 | 0 | T | F | if ($state =~ /^[A-Z]{2}$/) { } |
| 428 | 0 | T | F | if ($$admin1{"concatenated_codes"} =~ /^\Q$concatenated_codes\E\./i) |
| 444 | 50 | T | F | unless (defined $concatenated_codes) |
| 452 | 50 | T | F | if ($country =~ /^(United States|USA|US)$/) { } |
| 50 | T | F | elsif ($country eq 'Canada' and $state and length $state > 2) { } |
| 453 | 0 | T | F | if ($county and length $county > 2) |
| 454 | 0 | T | F | if (my $twoletterstate = ($_locale_us //= "Locale::US"->new)->{"state2code"}{uc $county}) |
| 458 | 0 | T | F | if ($state and length $state > 2) |
| 459 | 0 | T | F | if (my $twoletterstate = ($_locale_us //= "Locale::US"->new)->{"state2code"}{uc $state}) |
| 464 | 0 | T | F | if (($_locale_ca //= "Locale::CA"->new)->{"province2code"}{uc $state}) |
| 466 | 0 | T | F | unless (defined $location) |
| 473 | 50 | T | F | unless $$self{"admin2"} //= "Geo::Coder::Free::DB::MaxMind::admin2"->new("no_entry", 1) |
| 475 | 50 | T | F | if (defined $county and $county =~ /^[A-Z]{2}$/ and $country =~ /^(United States|USA|US)$/) { } |
| 50 | T | F | elsif ($county and $admin1cache{$county}) { } |
| 50 | T | F | elsif ($county and $admin2cache{$county}) { } |
| 50 | T | F | elsif (defined $state and $admin2cache{$state} and not defined $county) { } |
| 485 | 50 | T | F | if (defined $county and $county eq 'London') { } |
| 50 | T | F | elsif (defined $county) { } |
| 493 | 0 | T | F | if ($$admin2{"concatenated_codes"} =~ /$concatenated_codes/) |
| 495 | 0 | T | F | if ($region =~ /^[A-Z]{2}\.([A-Z]{2})\./) { } |
| 497 | 0 | T | F | if (defined $state and $state =~ /^[A-Z]{2}$/) { } |
| 498 | 0 | T | F | if ($state eq $rc) |
| 512 | 50 | T | F | if ($state and not defined $region) |
| 513 | 0 | T | F | if ($state =~ /^[A-Z]{2}$/) { } |
| 520 | 0 | T | F | if ($$admin2{"concatenated_codes"} =~ /$concatenated_codes/) |
| 529 | 50 | T | F | if (scalar @regions == 0 and not defined $region) |
| 534 | 50 | T | F | if (scalar @admin2s == 0 and $country =~ /^(Canada|United States|USA|US)$/ and not $location =~ /\sCounty/i) |
| 539 | 50 | T | F | if (scalar @admin2s and defined $admin2s[0]{'concatenated_codes'}) { } |
| 50 | T | F | elsif (defined $county) { } |
| 542 | 0 | T | F | if ($concat =~ /^CA\.(\d\d)\./) { } |
| 0 | T | F | elsif ($concat =~ /$concatenated_codes/) { } |
| 553 | 50 | T | F | unless (defined $$self{"admin1"}) |
| 554 | 0 | T | F | unless $$self{"admin1"} = "Geo::Coder::Free::DB::MaxMind::admin1"->new("no_entry", 1) |
| 559 | 0 | T | F | if ($$admin1{"concatenated_codes"} =~ /^\Q$concatenated_codes\E\./i) |
| 561 | 0 | T | F | if (scalar @admin1s == 1) |
| 570 | 50 | T | F | unless (defined $$self{"cities"}) |
| 578 | 50 | T | F | if (defined $county and $county =~ /^[A-Z]{2}$/ and $country =~ /^(United States|USA|US)$/) { } |
| 581 | 50 | T | F | if ($region_only) { } |
| 588 | 50 | T | F | if ($region) |
| 591 | 0 | T | F | if ($country_code) |
| 596 | 0 | T | F | if (scalar @admin2s == 1) |
| 597 | 0 | T | F | if ($state) { } |
| 0 | T | F | elsif ($county) { } |
| 608 | 50 | T | F | if (my $c = $params{'region'}) { } |
| 50 | T | F | elsif ($countrycode) { } |
| 689 | 50 | T | F | unless (defined $city) |
| 692 | 0 | T | F | if ($country =~ /^(United States|USA|US)$/) |
| 693 | 0 | T | F | unless $region =~ /^[A-Z]{2}$/ |
| 698 | 0 | T | F | if defined $city |
| 702 | 50 | T | F | if (defined $city and defined $$city{"Latitude"}) |
| 704 | 50 | T | F | if defined $$city{"Region"} and $$city{"Region"} =~ /^[A-Z]\d$/ |
| 705 | 50 | T | F | if defined $$city{"Population"} and length $$city{"Population"} == 0 |
| 713 | 50 | T | F | $$options{'City'} ? : |
| 757 | 0 | T | F | if (not ref $self) { } |
| 0 | T | F | elsif (ref $self eq 'HASH') { } |
| 0 | T | F | elsif (ref $_[0] eq 'HASH') { } |
| 0 | T | F | elsif (ref $_[0]) { } |
| 0 | T | F | elsif (scalar @_ and scalar(@_) % 2 == 0) { } |
| 758 | 0 | T | F | if (scalar @_) { } |
| 0 | T | F | elsif (not defined $self) { } |
| 0 | T | F | elsif ($self eq __PACKAGE__) { } |
| 785 | 0 | T | F | if ($latlng) { } |
| 793 | 0 | T | F | unless (defined $latitude and defined $longitude) |
| 797 | 0 | T | F | unless (defined $$self{"cities"}) |
| 807 | 0 | T | F | unless defined $c and $c =~ /^-?\d+\.?\d*$/ |
| 811 | 0 | T | F | if (wantarray) |
| 831 | 0 | T | F | if ($rc) |
| 842 | 0 | T | F | if (my $region = $$loc{"Region"}) |
| 847 | 0 | T | F | if ($county) { } |
| 850 | 0 | T | F | unless $$self{"admin2"} //= "Geo::Coder::Free::DB::MaxMind::admin2"->new("no_entry", 1) |
| 859 | 0 | T | F | if ($_country =~ /^[A-Z]{2}$/ and $_reg =~ /^[A-Z0-9]{1,10}$/) |
| 863 | 0 | T | F | if (ref $row and $$row{"name"}) |