Web::Scraperのscraperコマンドのサブコマンド
冗長なタイトルだなあ・・・。
d, y, s, q, c, c all というのがあるらしいです。いつも忘れるので。
sub run_loop { my($tree, $term) = @_; while (defined(my $in = $term->readline("scraper> "))) { if ($in eq 'd') { $Data::Dumper::Indent = 1; warn Dumper result; } elsif ($in eq 'y') { warn Dump result; } elsif ($in eq 's') { $print->($tree->as_HTML(q('"&<>), " ", {})); } elsif ($in eq 'q') { return; } elsif ($in eq 'c') { print generate_code($source, $stack[-1]); } elsif ($in =~ /^c\s+all\s*$/) { print generate_code($source, @stack); } else { my $res = eval $in; warn $@ if $@; push @stack, $in unless $@; } } }