type 's scheduler = {
bind : a b. ('a, 's) io -> ('a -> ('b, 's) io) -> ('b, 's) io; |
return : a. 'a -> ('a, 's) io; |
}
type ('f, 's, 'e) seek = {
lseek : 'f -> int -> [ `SET | `CUR | `END ] -> ((int, 'e) Stdlib.result, 's) io; |
}
module type X = sig ... end
module type FUNCTOR = sig ... end
module type IFLOW = sig ... end
module type OFLOW = sig ... end