Perlエラーの基本
($! -> オペレーティングシステムエラー)
($? -> 子プロセスエラー)
- プログラムによって起動されるサブプロセスでエラーが発生した場合
- Perlは"$?"に子プロセスの終了ステータスを設定
($@ -> evalからのエラー)
- eval使用時にエラーが発生した場合
($^E -> オペレーティングシステム固有のエラー)
- 一部のシステムでは、"$^E"変数から多くの情報を得ることができる
- 標準のPerlでは、"$!"と同じ
Templateモジュール
Templateモジュールでは、不具合が生じたときに"$Template::ERROR"変数を設定するなど、独自のエラー処理が実装されている。
また、errorメソッドも実装されている。
例外
- eval
- die
- Fatalモジュール
- 処理失敗時にPerl組み込み関数のエラーから例外を発生させる
- サブルーチンラッピングを使用することで、戻り値は例外として補足されるため、戻り値のチェックは不要となる
#!/usr/bin/perl use strict; use warnings; use Fatal qw(open); open my $fh, '>', $file;