2

Perl で Pod::Simple を使用しようとしていますが、出力が得られません。Pod::Simple::Text で出力を取得できます。以下に短いテスト プログラムを示します。

use English;
use strict;
use Pod::Simple;
use Pod::Simple::Text;

my $pod_document = <<END_POD;
=pod

=head1 NAME

something

=head1 SYNOPSIS

something else

=cut
END_POD

my $pod_parser = new Pod::Simple();
my $pod_output;
if  ($ARGV[0] == 1) {$pod_parser->output_fh(*STDOUT);}
if  ($ARGV[0] == 2) {$pod_parser->output_fh(\*STDOUT);}
if  ($ARGV[0] == 3) {$pod_parser->output_fh(*STDOUT{IO});}
if  ($ARGV[0] == 4) {$pod_parser->output_string(\$pod_output);}
if  ($ARGV[0] == 5) {Pod::Simple::Text->filter(\$pod_document);}
$pod_parser->parse_string_document(\$pod_document);
if  ($ARGV[0] == 4) {print $pod_output;}

exit 0;

この perl コードを pod-test.pl という名前のファイルに入れました。コマンド ライン引数 1、2、3、または 4 を指定して実行すると、何も出力されません。「perl pod-test.pl 5」は問題なく動作します。

output_fh または output_string メソッドを呼び出すにはどうすればよいですか?

4

1 に答える 1