Module Mavryk_protocol_environment_alpha.Seq

type !'a t = unit -> 'a Mavryk_base.TzPervasives.Seq.node
and !'a node = 'a Mavryk_base.TzPervasives.Seq.node =
  1. | Nil
  2. | Cons of 'a * 'a t
val empty : 'a t
val return : 'a -> 'a t
val cons : 'a -> 'a t -> 'a t
val append : 'a t -> 'a t -> 'a t
val map : ('a -> 'b) -> 'a t -> 'b t
val filter : ('a -> bool) -> 'a t -> 'a t
val filter_map : ('a -> 'b option) -> 'a t -> 'b t
val flat_map : ('a -> 'b t) -> 'a t -> 'b t
val fold_left : ('a -> 'b -> 'a) -> 'a -> 'b t -> 'a
val iter : ('a -> unit) -> 'a t -> unit
val unfold : ('b -> ('a * 'b) option) -> 'b -> 'a t
val first : 'a t -> 'a option
val fold_left_e : ('a -> 'b -> ('a, 'trace) Pervasives.result) -> 'a -> 'b t -> ('a, 'trace) Pervasives.result
val fold_left_s : ('a -> 'b -> 'a Lwt.t) -> 'a -> 'b t -> 'a Lwt.t
val fold_left_es : ('a -> 'b -> ('a, 'trace) Pervasives.result Lwt.t) -> 'a -> 'b t -> ('a, 'trace) Pervasives.result Lwt.t
val iter_e : ('a -> (unit, 'trace) Pervasives.result) -> 'a t -> (unit, 'trace) Pervasives.result
val iter_s : ('a -> unit Lwt.t) -> 'a t -> unit Lwt.t
val iter_es : ('a -> (unit, 'trace) Pervasives.result Lwt.t) -> 'a t -> (unit, 'trace) Pervasives.result Lwt.t
val iter_ep : ('a -> (unit, 'error Error_monad.trace) Pervasives.result Lwt.t) -> 'a t -> (unit, 'error Error_monad.trace) Pervasives.result Lwt.t
val iter_p : ('a -> unit Lwt.t) -> 'a t -> unit Lwt.t