Обработка и печать исключений с SML - PullRequest
0 голосов
/ 08 октября 2018

У меня есть код, который выглядит примерно так:

ignore
  (f ())
  handle
    AssertionError msg         => (print ("assertion error: " ^ msg ^ "\n"); ())
    | _ (* other exceptions *) => (print ("exception raised\n"); ())

Но мне нужно напечатать общее исключение (с exnMessage?).

Как мне перехватить _ исключение для того, чтобы получить и распечатать свое сообщение?

1 Ответ

0 голосов
/ 08 октября 2018

Сопоставьте исключение с именем вместо _ и используйте exnMessage:

- (hd ([]: string list)) handle e => exnMessage e;
val it = "Empty" : string
...