-module(ewe@internal@exception). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/ewe/internal/exception.gleam"). -export([rescue/1]). -export_type([exception/0]). -if(?OTP_RELEASE >= 27). -define(MODULEDOC(Str), -moduledoc(Str)). -define(DOC(Str), -doc(Str)). -else. -define(MODULEDOC(Str), -compile([])). -define(DOC(Str), -compile([])). -endif. ?MODULEDOC(false). -type exception() :: {errored, gleam@dynamic:dynamic_()} | {thrown, gleam@dynamic:dynamic_()} | {exited, gleam@dynamic:dynamic_()}. -file("src/ewe/internal/exception.gleam", 23). ?DOC(false). -spec rescue(fun(() -> JNX)) -> {ok, JNX} | {error, exception()}. rescue(Callable) -> ewe_ffi:rescue(Callable).