module Printexc: sig end
例外表示機能です。
val to_string : exn -> string
Printexc.to_string e
は例外 e
を文字列として表記したものを返します
val print : ('a -> 'b) -> 'a -> 'b
Printexc.print fn x
は関数 fn
に x
を適用して、その適用結果を返します。
fn x
の評価で何らかの例外が発生したら、その例外の名前を標準エラー出力に表示して、再度同じ例外を発生します。関数適用を抜け出す例外を捕らえて報告するのに使えます。
val catch : ('a -> 'b) -> 'a -> 'b
Printexc.catch fn x
は
Printexc.print
と同じようなものですが、キャッチされなかった例外を表示したあと、プログラムを終了コード 2 で異常終了します。この関数は推奨されません。かつては
Printexc.catch
でキャッチされなかった例外を表示していましたが、今ではランタイムシステムがサポートしています。さらに、
Printexc.catch
を呼び出すと、デバッガのスタックバックトラック機能を使って例外の位置を追跡することが困難になります。よって、今後書くコードに
Printexc.catch
は使用しないでください。