Specification of primitive types
module Args : sig ... endmodule Result_spec : sig ... endtype ('a, 'b) t = {name : string; |
args : 'a Args.Spec.t; |
result : 'b Result_spec.t; |
run : Shexp_process__.Env.t ‑> 'a; |
}val make : string ‑> 'a Args.Spec.t ‑> 'b Result_spec.t ‑> (Shexp_process__.Env.t ‑> 'a) ‑> ('a, 'b) tval run : ('a, 'b) t ‑> Shexp_process__.Env.t ‑> ('a, 'b) Args.t ‑> 'bval sexp_of_call : ('a, 'b) t ‑> ('a, 'b) Args.t ‑> Shexp_sexp.Std.Sexp.tval sexp_of_result : ('a, 'b) t ‑> 'b ‑> Shexp_sexp.Std.Sexp.t optionReturns None if the result is Unit or Env