package ocaml-base-compiler
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=2d0f8090951a97a2c0e5b8a11e90096c0e1791d2e471e4a67f87e3b974044cd0
doc/stdlib/Stdlib/Effect/Deep/index.html
Module Effect.DeepSource
Deep handlers
('a,'b) continuation is a delimited continuation that expects a 'a value and returns a 'b value.
continue k x resumes the continuation k by passing x to k.
discontinue k e resumes the continuation k by raising the exception e in k.
discontinue_with_backtrace k e bt resumes the continuation k by raising the exception e in k using bt as the origin for the exception.
type ('a, 'b) handler = {retc : 'a -> 'b;exnc : exn -> 'b;effc : 'c. 'c t -> (('c, 'b) continuation -> 'b) option;
}('a,'b) handler is a handler record with three fields -- retc is the value handler, exnc handles exceptions, and effc handles the effects performed by the computation enclosed by the handler.
match_with f v h runs the computation f v in the handler h.
'a effect_handler is a deep handler with an identity value handler fun x -> x and an exception handler that raises any exception fun e -> raise e.
try_with f v h runs the computation f v under the handler h.
get_callstack c n returns a description of the top of the call stack on the continuation c, with at most n entries.