私は、ファイルの末尾にある__DATA__と__END__キーワードの間に格納されたテンプレート(テンプレートモジュールで処理するための)を持つPerlモジュールを持っています。テンプレートを使用してファイルを生成しようとすると、警告またはエラー出力なしで結果のファイルが空になります。デバッグ後、私は、DATAファイルハンドルが実際に空であり、それがテンプレートモジュールに渡されることを発見しました。読み込み時にPerlのDATAファイルハンドルが空です
このモジュールの以前のバージョンでは、DATAからテンプレートを正しく読み取ることができましたが、私が行った変更のどれもがこのコードの部分に影響するはずはありません。これらの変更は、完全に別個の機能内のロジックの変更で構成され、モジュールに次の使用ステートメントを追加:
use DBI;
use DBI::Const::GetInfoType;
use Switch;
Iは、Perlモジュールの書き込み権限を追加(それは本来読み取り専用であった)と__END__キーワードを除去しようとしていますそれが必要ではないことがわかったので。残念ながら、DATAファイルハンドルはまだ空に見えます。
DATAファイルハンドルを空にする原因になるのはどのような種類の問題で、これらの問題は私の状況に当てはまりますか?私はperl v5.12.5を使用しています。
Debian stableの 'libswitch-perl'パッケージの説明では、「これはコアから削除されているため、互換性のために提供されている古いモジュールです」perl 5.10以降では' given'/'when 'builtinsがもっと好まれる。あなたはv5.12を使っているので、それらは利用可能です。 – david