package octez-libs
- Overview
- No Docs
You can search for identifiers within the package.
in-package search v0.2.0
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=55ea1fb8bb3273a7fc270ca8f650d45c56449665619482aad9bc12f3ea736b7e
sha512=fec850fc2d17d7490bbabd5147d62aad13b3aaed8774270f8a38ab419670ed03e0fd30cf8642a97984eca5c2446726fe590ad99c015f7ec50919dc7652f25053
doc/bare_structs/Bare_structs/Seq_e/index.html
Module Bare_structs.Seq_eSource
include Bare_sigs.Seq_e.S
type ('a, 'e) t = unit -> (('a, 'e) node, 'e) Stdlib.resultinclude Seqes.Sigs.SEQMON2ALL
with type ('a, 'e) mon := ('a, 'e) Stdlib.result
with type ('a, 'e) t := ('a, 'e) t
val iter : ('a -> unit) -> ('a, 'e) t -> (unit, 'e) Stdlib.resultval fold_left : ('a -> 'b -> 'a) -> 'a -> ('b, 'e) t -> ('a, 'e) Stdlib.resultval iteri : (int -> 'a -> unit) -> ('a, 'e) t -> (unit, 'e) Stdlib.resultval fold_lefti :
('b -> int -> 'a -> 'b) ->
'b ->
('a, 'e) t ->
('b, 'e) Stdlib.resultval for_all : ('a -> bool) -> ('a, 'e) t -> (bool, 'e) Stdlib.resultval exists : ('a -> bool) -> ('a, 'e) t -> (bool, 'e) Stdlib.resultval find : ('a -> bool) -> ('a, 'e) t -> ('a option, 'e) Stdlib.resultval find_map : ('a -> 'b option) -> ('a, 'e) t -> ('b option, 'e) Stdlib.resultval init : int -> (int -> 'a) -> ('a, 'e) tval unfold : ('b -> ('a * 'b) option) -> 'b -> ('a, 'e) tval forever : (unit -> 'a) -> ('a, 'e) tval iterate : ('a -> 'a) -> 'a -> ('a, 'e) tval of_dispenser : (unit -> 'a option) -> ('a, 'e) tval is_empty : ('a, 'e) t -> (bool, 'e) Stdlib.resultval length : ('a, 'e) t -> (int, 'e) Stdlib.resultval empty : ('a, 'e) tval return : 'a -> ('a, 'e) tval repeat : 'a -> ('a, 'e) tval to_dispenser : ('a, 'e) t -> unit -> ('a option, 'e) Stdlib.resultval ints : int -> (int, 'e) tval of_seq : 'a Stdlib.Seq.t -> ('a, 'e) treturn_e (Ok x) is a whole sequence containing the single element x. return_e (Error e) is a sequence immediately interrupted by the error e.
interrupted e is a sequence immediately interrupted by the error e.
map_error f seq is a sequence feq.
- If
seqis a whole sequence, thenfeqis the same whole sequence. - If
seqis an interrupted sequence, thenfeqis a sequence interrupted byError (f e)where the elements of the successful prefix are the elements of the successful prefix ofseq.
iter_p f seq is a promise p.
- If
seqis a whole sequence, thenpresolves toOk ()once all the promises created byfon the elements ofseqhave resolved. - If
seqis interrupted byError e, thenpresolves toError eonce all the promises created byfon the elements of the successful prefix ofseqhave resolved.
Note that the behaviour for interrupted sequences is in line with the best-effort semantic of Lwtreslib.
cons_e (Ok x) s is the sequence containing x followed by s. It is a whole sequence if s is.
cons_e (Error e) s is a sequence immediately interrupted by e.
module E :
Seqes.Sigs.SEQMON2TRANSFORMERS
with type ('a, 'e) t := ('a, 'e) t
and type ('a, 'e) mon := ('a, 'e) Stdlib.result
and type ('a, 'e) callermon := ('a, 'e) Stdlib.resultmodule S :
Seqes.Sigs.SEQMON2TRAVERSORS
with type ('a, 'e) t := ('a, 'e) t
and type ('a, 'e) mon := ('a, 'e) Stdlib.result Lwt.t
and type ('a, 'e) callermon := 'a Lwt.tmodule ES :
Seqes.Sigs.SEQMON2TRAVERSORS
with type ('a, 'e) t := ('a, 'e) t
and type ('a, 'e) mon := ('a, 'e) Stdlib.result Lwt.t
and type ('a, 'e) callermon := ('a, 'e) Stdlib.result Lwt.tof_seq_catch s is a sequence with the same elements as s which is interrupted when forcing an element of the sequence raises an exception.
of_seq_once ~when_forced_twice s is a sequence with the same elements as s which is interrupted when an element of the sequence is forced twice.
In other words, it is equivalent to
map_error
(function Seq.Forced_twice -> when_forced_twice | e -> raise e)
(of_seq_catch (Seq.once s))