17 |
|
|
18 |
=head1 VERSION |
=head1 VERSION |
19 |
|
|
20 |
Version 0.05 |
Version 0.06 |
21 |
|
|
22 |
=cut |
=cut |
23 |
|
|
24 |
our $VERSION = '0.05'; |
our $VERSION = '0.06'; |
25 |
|
|
26 |
=head1 SYNOPSIS |
=head1 SYNOPSIS |
27 |
|
|
148 |
return $self->{_lookup_create}->{ _q($database) }->{ _q($input) }; |
return $self->{_lookup_create}->{ _q($database) }->{ _q($input) }; |
149 |
} |
} |
150 |
|
|
151 |
|
=head2 normalize_rules |
152 |
|
|
153 |
|
my $source = $parser->normalize_rules($database, $input); |
154 |
|
|
155 |
|
=cut |
156 |
|
|
157 |
|
sub normalize_rules { |
158 |
|
my $self = shift; |
159 |
|
my ($database,$input) = @_; |
160 |
|
$input = _input_name($input); |
161 |
|
return unless ( |
162 |
|
defined( $self->{_normalize_source}->{ _q($database) } ) && |
163 |
|
defined( $self->{_normalize_source}->{ _q($database) }->{ _q($input) } ) |
164 |
|
); |
165 |
|
return $self->{_normalize_source}->{ _q($database) }->{ _q($input) }; |
166 |
|
} |
167 |
|
|
168 |
=head1 PRIVATE |
=head1 PRIVATE |
169 |
|
|
170 |
=head2 _read_sources |
=head2 _read_sources |
249 |
my $Document = PPI::Document->new( \$source ) || $log->logdie("can't parse source:\n", $self->{source}); |
my $Document = PPI::Document->new( \$source ) || $log->logdie("can't parse source:\n", $self->{source}); |
250 |
|
|
251 |
$Document->prune('PPI::Token::Whitespace'); |
$Document->prune('PPI::Token::Whitespace'); |
252 |
|
$Document->prune('PPI::Token::Comment'); |
253 |
#$Document->prune('PPI::Token::Operator'); |
#$Document->prune('PPI::Token::Operator'); |
254 |
|
|
255 |
# Find all the named subroutines |
# Find all the named subroutines |
314 |
|
|
315 |
$log->debug("key = $key"); |
$log->debug("key = $key"); |
316 |
|
|
|
my $create = "save_into_lookup('$key', $e[7] $e[8] );\n"; |
|
|
|
|
|
$log->debug("create: $create"); |
|
|
|
|
317 |
return $self->_lookup_error("invalid database $e[3] in $path" ) unless $self->valid_database( $e[3] ); |
return $self->_lookup_error("invalid database $e[3] in $path" ) unless $self->valid_database( $e[3] ); |
318 |
return $self->_lookup_error("invalid input $e[5] of database $e[3] in $path", ) unless $self->valid_database_input( $e[3], $e[5] ); |
return $self->_lookup_error("invalid input $e[5] of database $e[3] in $path", ) unless $self->valid_database_input( $e[3], $e[5] ); |
319 |
|
|
320 |
|
my $create = qq{ |
321 |
|
save_into_lookup($e[3],$e[5],'$key', $e[7] $e[8] ); |
322 |
|
}; |
323 |
|
|
324 |
|
$log->debug("create: $create"); |
325 |
|
|
326 |
# save code to create this lookup |
# save code to create this lookup |
327 |
$self->{_lookup_create}->{ _q($e[3]) }->{ _q($e[5]) } .= $create; |
$self->{_lookup_create}->{ _q($e[3]) }->{ _q($e[5]) } .= $create; |
328 |
$self->{_lookup_create_key}->{ _q($e[3]) }->{ _q($e[5]) }->{ _q($key) }++; |
$self->{_lookup_create_key}->{ _q($e[3]) }->{ _q($e[5]) }->{ _q($key) }++; |
353 |
$log->debug("create: ", dump($self->{_lookup_create}) ); |
$log->debug("create: ", dump($self->{_lookup_create}) ); |
354 |
$log->debug("normalize: $normalize_source"); |
$log->debug("normalize: $normalize_source"); |
355 |
|
|
356 |
$self->{_normalize_source}->{$database}->{$input} = $normalize_source; |
$self->{_normalize_source}->{$database}->{$input} .= $normalize_source; |
357 |
|
|
358 |
if ($self->{debug}) { |
if ($self->{debug}) { |
359 |
my $Dumper = PPI::Dumper->new( $Document ); |
my $Dumper = PPI::Dumper->new( $Document ); |