line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package String::Normal::Type::City; |
2
|
9
|
|
|
9
|
|
32
|
use strict; |
|
9
|
|
|
|
|
9
|
|
|
9
|
|
|
|
|
210
|
|
3
|
9
|
|
|
9
|
|
29
|
use warnings; |
|
9
|
|
|
|
|
8
|
|
|
9
|
|
|
|
|
206
|
|
4
|
9
|
|
|
9
|
|
29
|
use String::Normal::Type; |
|
9
|
|
|
|
|
9
|
|
|
9
|
|
|
|
|
118
|
|
5
|
9
|
|
|
9
|
|
203
|
use String::Normal::Config; |
|
9
|
|
|
|
|
10
|
|
|
9
|
|
|
|
|
1238
|
|
6
|
|
|
|
|
|
|
|
7
|
|
|
|
|
|
|
our $address_stem; |
8
|
|
|
|
|
|
|
|
9
|
|
|
|
|
|
|
sub transform { |
10
|
2
|
|
|
2
|
1
|
3
|
my ($self,$value) = @_; |
11
|
|
|
|
|
|
|
|
12
|
2
|
|
|
|
|
7
|
$value = String::Normal::Type::_scrub_value( $value ); |
13
|
|
|
|
|
|
|
|
14
|
|
|
|
|
|
|
# TODO: refactor this code and remove dependencies on %address_stem |
15
|
|
|
|
|
|
|
# single spaced records are guaranteed |
16
|
2
|
|
|
|
|
3
|
my @tokens = (); |
17
|
2
|
|
|
|
|
5
|
for my $token (split ' ', $value) { |
18
|
4
|
50
|
|
|
|
8
|
$token = defined( $address_stem->{$token} ) ? $address_stem->{$token} : $token; |
19
|
4
|
|
|
|
|
6
|
push @tokens, $token; |
20
|
|
|
|
|
|
|
} |
21
|
|
|
|
|
|
|
|
22
|
2
|
|
|
|
|
10
|
$value = join ' ', @tokens; |
23
|
|
|
|
|
|
|
} |
24
|
|
|
|
|
|
|
|
25
|
|
|
|
|
|
|
sub new { |
26
|
1
|
|
|
1
|
1
|
1
|
my $self = shift; |
27
|
1
|
|
|
|
|
5
|
$address_stem = String::Normal::Config::AddressStem::_data( @_ ); |
28
|
1
|
|
|
|
|
6
|
return bless {@_}, $self; |
29
|
|
|
|
|
|
|
} |
30
|
|
|
|
|
|
|
|
31
|
|
|
|
|
|
|
1; |
32
|
|
|
|
|
|
|
|
33
|
|
|
|
|
|
|
__END__ |