argra****@users*****
argra****@users*****
2012年 6月 28日 (木) 03:36:16 JST
Index: docs/perl/5.14.1/perlcall.pod diff -u docs/perl/5.14.1/perlcall.pod:1.1 docs/perl/5.14.1/perlcall.pod:1.2 --- docs/perl/5.14.1/perlcall.pod:1.1 Sun Jun 24 03:28:31 2012 +++ docs/perl/5.14.1/perlcall.pod Thu Jun 28 03:36:16 2012 @@ -796,12 +796,11 @@ =end original -Using the G_EVAL flag described above will always set C<$@>: clearing -it if there was no error, and setting it to describe the error if there -was an error in the called code. This is what you want if your intention -is to handle possible errors, but sometimes you just want to trap errors -and stop them interfering with the rest of the program. -(TBT) +上述の G_EVAL フラグを使うと、常に C<$@> を設定します: エラーがなければ +クリアし、呼び出したコードにエラーがあればエラーを記述します。 +これは、可能性のあるエラーを扱おうとするのが目的なら求めているものですが、 +単にエラーをトラップしてプログラムの残りを侵害するのを止めたいだけかも +しれません。 =begin original @@ -815,14 +814,13 @@ =end original -このシナリオは、デストラクターの中から呼ばれるようなコード、非同期な +このシナリオは、デストラクタの中から呼ばれるようなコード、非同期な コールバック、シグナルハンドラといったもので最も有用です。 -In such situations, where the code being called has little relation to the -surrounding dynamic context, the main program needs to be insulated from -errors in the called code, even if they can't be handled intelligently. -It may also be useful to do this with code for C<__DIE__> or C<__WARN__> -hooks, and C<tie> functions. -(TBT) +このような状況では、呼び出されたコードは周りの動的な内容とは +ほとんど関係がなく、メインプログラムは、例え理性的に扱えなくても、 +呼び出されたコードのエラーから隔離される必要があります。 +また、こうするのは C<__DIE__> や C<__WARN__> フックのコードや、 +C<tie> 関数で有用かもしれません。 =begin original @@ -848,13 +846,13 @@ =end original -When G_KEEPERR is used, any error in the called code will terminate the -call as usual, and the error will not propagate beyond the call (as usual -for G_EVAL), but it will not go into C<$@>. Instead the error will be -converted into a warning, prefixed with the string "\t(in cleanup)". -This can be disabled using C<no warnings 'misc'>. If there is no error, -C<$@> will not be cleared. -(TBT) +G_KEEPERR が使われると、呼び出されたコードのエラーは通常通り +呼び出しを終了させ、(G_EVAL での通常通り)エラーは呼び出しを超えて +伝搬しませんが、C<$@> は設定されません。 +エラーが警告に変換される代わりに、"\t(in cleanup)" という文字列が +前置されます。 +これは C<no warnings 'misc'> を使って無効にできます。 +エラーがなければ、C<$@> はクリアされません。 =begin original @@ -863,9 +861,8 @@ =end original -Note that the G_KEEPERR flag does not propagate into inner evals; these -may still set C<$@>. -(TBT) +G_KEEPERR フラグは内側の eval に伝搬しないことに注意してください; +これらは未だに C<$@> を設定します。 =begin original @@ -3840,7 +3837,7 @@ Translate: KIMURA Koichi (5.005) Update: SHIRAKATA Kentaro <argra****@ub32*****> (5.10.0-) -Status: in progress +Status: completed =end meta