package io

  1. Overview
  2. Docs
type ('i, 'o, 'r) node =
  1. | Yield of 'o * ('i, 'o, 'r) node lazy_t
  2. | Await of 'i -> ('i, 'o, 'r) node
  3. | Ready of 'r
type 'r effect = (Elements.void, Elements.void, 'r) node
type ('o, 'r) producer = (Elements.void, 'o, 'r) node
type ('i, 'r) consumer = ('i, Elements.void, 'r) node
val return : 'a -> ('b, 'c, 'd) node
val (>>=) : ('a, 'b, 'c) node -> ('d -> ('e, 'f, 'g) node) -> ('e, 'f, 'g) node
val (>>) : ('a, 'b, 'c) node -> ('a, 'b, 'd) node Lazy.t -> ('a, 'b, 'd) node
val forever : ('a, 'b, 'c) node -> ('a, 'b, 'd) node
val replicate : int -> ('a, 'b, 'c) node -> ('a, 'b, unit) node
val empty : ('a, 'b, unit) node
val yield : 'a -> ('b, 'c, unit) node
val await : ('a, 'b, 'c) node
val id : ('a, 'b, 'c) node
val compose : ('a, 'b, 'c) node -> ('d, 'e, 'f) node -> ('g, 'h, 'i) node
val (<<<) : ('a, 'b, 'c) node -> ('d, 'a, 'c) node -> ('d, 'b, 'c) node
val (>>>) : ('a, 'b, 'c) node -> ('b, 'd, 'c) node -> ('a, 'd, 'c) node
val run : (Elements.void, 'a, 'b) node -> 'c
val next : ('a, 'b, 'c) node -> ('d * ('e, 'f, 'g) node) option
module Seq : sig ... end
module Test : sig ... end