--- trunk/lib/WebPAC/Parser.pm 2006/09/24 17:25:04 686 +++ trunk/lib/WebPAC/Parser.pm 2006/09/24 17:49:05 687 @@ -96,24 +96,28 @@ $Element->isa('PPI::Token::Word') or return ''; $Element->content eq 'lookup' or return ''; - print "#*** expansion: ", $Element->snext_sibling,$/; + $log->debug("expansion: ", $Element->snext_sibling); my $args = $Element->snext_sibling; my @e = $args->child(0)->elements; - print "hum, expect at least 8 elements, got ", scalar @e, " in $args\n" if ($#e < 8); + $log->logdie("hum, expect at least 8 elements, got ", scalar @e, " in $args") if ($#e < 8); - print "# found ", scalar @e, " elements:\n"; + if ($log->is_debug) { + my $report = "found " . scalar @e . " elements:\n"; - foreach my $i ( 0 .. $#e ) { - printf("# %-2d: %-30s %s\n", $i, ( $e[$i] || 'undef' ), $e[$i]->class ); + foreach my $i ( 0 .. $#e ) { + $report .= sprintf("# %-2d: %-30s %s\n", $i, ( $e[$i] || 'undef' ), $e[$i]->class ); + } + + $log->debug($report); } my $key_element = $e[8]->clone; - die "key element must be PPI::Structure::Block" unless $key_element->isa('PPI::Structure::Block'); + $log->logdie("key element must be PPI::Structure::Block") unless $key_element->isa('PPI::Structure::Block'); - print "## key part: ", $key_element, $/; + $log->debug("key part: ", $key_element); my @key; @@ -124,17 +128,17 @@ my $kf = $e->snext_sibling; - print "## key fragment = $kf\n"; + $log->debug("key fragment = $kf"); push @key, eval $kf; - print "ERROR: can't eval { $kf }: $@" if ($@); + $log->logdie("can't eval { $kf }: $@") if ($@); return 1; }); - my $key = join('-', @key ) || print "ERROR: no key found!"; + my $key = join('-', @key ) || $log->logdie("no key found!"); - print "key = $key\n"; + $log->debug("key = $key"); my $create = ' $coderef = ' . $e[7] . $e[8] . '; @@ -144,7 +148,7 @@ } '; - print "create: $create\n"; + $log->debug("create: $create"); $create =~ s/\s+/ /gs; $eval_create->{ $e[3] }->{ $e[5] } .= $create; @@ -160,16 +164,18 @@ $e[8]->remove; - print "# >>> ", $Element->snext_sibling, "\n"; + $log->debug(">>> ", $Element->snext_sibling); }); - print "-----\ncreate: ", dump($eval_create), "\n"; - print "-----\nlookup: ", $Document->serialize, "\n"; - print "-----\n"; + $log->info("create: ", dump($eval_create) ); + $log->info("lookup: ", $Document->serialize ); - my $Dumper = PPI::Dumper->new( $Document ); - $Dumper->print; + if ($self->{debug}) { + my $Dumper = PPI::Dumper->new( $Document ); + $Dumper->print; + } + return 1; } =head1 AUTHOR