Testing a Gemini codegen run
at main 1.5 kB view raw
1(** Basic JMAP types as defined in RFC 8620. *) 2 3(** The Id data type. 4 A string of 1 to 255 octets, using URL-safe base64 characters. 5 @see <https://www.rfc-editor.org/rfc/rfc8620.html#section-1.2> RFC 8620, Section 1.2 *) 6type id = string 7 8(** The Int data type. 9 An integer in the range [-2^53+1, 2^53-1]. Represented as OCaml's standard [int]. 10 @see <https://www.rfc-editor.org/rfc/rfc8620.html#section-1.3> RFC 8620, Section 1.3 *) 11type jint = int 12 13(** The UnsignedInt data type. 14 An integer in the range [0, 2^53-1]. Represented as OCaml's standard [int]. 15 @see <https://www.rfc-editor.org/rfc/rfc8620.html#section-1.3> RFC 8620, Section 1.3 *) 16type uint = int 17 18(** The Date data type. 19 A string in RFC 3339 "date-time" format. 20 Represented as a float using Unix time. 21 @see <https://www.rfc-editor.org/rfc/rfc8620.html#section-1.4> RFC 8620, Section 1.4 *) 22type date = float 23 24(** The UTCDate data type. 25 A string in RFC 3339 "date-time" format, restricted to UTC (Z timezone). 26 Represented as a float using Unix time. 27 @see <https://www.rfc-editor.org/rfc/rfc8620.html#section-1.4> RFC 8620, Section 1.4 *) 28type utc_date = float 29 30(** Represents a JSON object used as a map String -> V. *) 31type 'v string_map = (string, 'v) Hashtbl.t 32 33(** Represents a JSON object used as a map Id -> V. *) 34type 'v id_map = (id, 'v) Hashtbl.t 35 36(** Represents a JSON Pointer path with JMAP extensions. 37 @see <https://www.rfc-editor.org/rfc/rfc8620.html#section-3.7> RFC 8620, Section 3.7 *) 38type json_pointer = string