package ocaml-solo5

  1. Overview
  2. Docs
OCaml cross-compiler to the freestanding Solo5 backend

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v1.3.3.tar.gz
md5=47876167068345542f49279e8fd28896
sha512=272081ec51a6ed69c08e4e8fa64fee3df53fd84c66c0c07a653891c88b342cf74553e1c95711e4fbc18922c899a3448a649f3bd9858f8d89cae834ad2b67fffb

doc/stdlib/Stdlib/Effect/Shallow/index.html

Module Effect.ShallowSource

Sourcetype ('a, 'b) continuation

('a,'b) continuation is a delimited continuation that expects a 'a value and returns a 'b value.

Sourceval fiber : ('a -> 'b) -> ('a, 'b) continuation

fiber f constructs a continuation that runs the computation f.

Sourcetype ('a, 'b) handler = {
  1. retc : 'a -> 'b;
  2. exnc : exn -> 'b;
  3. effc : 'c. 'c t -> (('c, 'a) 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.

Sourceval continue_with : ('c, 'a) continuation -> 'c -> ('a, 'b) handler -> 'b

continue_with k v h resumes the continuation k with value v with the handler h.

Sourceval discontinue_with : ('c, 'a) continuation -> exn -> ('a, 'b) handler -> 'b

discontinue_with k e h resumes the continuation k by raising the exception e with the handler h.

Sourceval discontinue_with_backtrace : ('a, 'b) continuation -> exn -> Printexc.raw_backtrace -> ('b, 'c) handler -> 'c

discontinue_with k e bt h resumes the continuation k by raising the exception e with the handler h using the raw backtrace bt as the origin of the exception.

Sourceval get_callstack : ('a, 'b) continuation -> int -> Printexc.raw_backtrace

get_callstack c n returns a description of the top of the call stack on the continuation c, with at most n entries.