使用 SML 处理和打印异常
Handling and printing exceptions with SML
我的代码看起来很像:
ignore
(f ())
handle
AssertionError msg => (print ("assertion error: " ^ msg ^ "\n"); ())
| _ (* other exceptions *) => (print ("exception raised\n"); ())
但我需要打印通用异常消息(exnMessage
?)。
如何捕获 _
异常以获取并打印其消息?
用名称而不是 _
匹配异常并使用 exnMessage
:
- (hd ([]: string list)) handle e => exnMessage e;
val it = "Empty" : string
我的代码看起来很像:
ignore
(f ())
handle
AssertionError msg => (print ("assertion error: " ^ msg ^ "\n"); ())
| _ (* other exceptions *) => (print ("exception raised\n"); ())
但我需要打印通用异常消息(exnMessage
?)。
如何捕获 _
异常以获取并打印其消息?
用名称而不是 _
匹配异常并使用 exnMessage
:
- (hd ([]: string list)) handle e => exnMessage e;
val it = "Empty" : string