package rpclib

  1. Overview
  2. Docs

The Param module is associated with parameters to RPCs. RPCs are defined in terms of 'a Param.t values.

type 'a t = {
  1. name : string option;
  2. description : string list;
  3. typedef : 'a Rpc.Types.def;
  4. version : Rpc.Version.t option;
}

A Param.t has a name, description and a typedef. We may also want to add in here default values, example values and so on

type boxed =
  1. | Boxed : 'a t -> boxed

We box parameters to put them into lists

val mk : ?name:string -> ?description:string list -> ?version:Rpc.Version.t -> 'a Rpc.Types.def -> 'a t

mk ~name ~description typ creates a Param.t out of a type definition from the Types module. If the name or description are omitted, the name or description from the type definition will be inherited