module type Fetch =
sig
type 'a fetched
'a
val fetch : string -> (string -> 'a) -> 'a fetched
string -> (string -> 'a) -> 'a fetched
val (>>=) : 'a fetched -> ('a -> 'b fetched) -> 'b fetched
'a fetched -> ('a -> 'b fetched) -> 'b fetched
val (>|=) : 'a fetched -> ('a -> 'b) -> 'b fetched
'a fetched -> ('a -> 'b) -> 'b fetched
end