Js.ExnProvide utilities for dealing with Js exceptions
val asJsExn : exn -> t optionval stack : t -> string optionval message : t -> string optionval name : t -> string optionval fileName : t -> string option* anyToExnInternal obj will take any value obj and wrap it * in a Js.Exn.Error if given value is not an exn already. If * obj is an exn, it will return obj without any changes. * * This function is mostly useful for cases where you want to unify a type of a value * that potentially is either exn, a JS error, or any other JS value really (e.g. for * a value passed to a Promise.catch callback) * * IMPORTANT: This is an internal API and may be changed / removed any time in the future. * *
* switch (Js.Exn.unsafeAnyToExn("test")) {
* | Js.Exn.Error(v) =>
* switch (Js.Exn.message(v)) {
* | Some(str) => Js.log("We won't end up here")
* | None => Js.log2("We will land here: ", v)
* }
* }
* * *