This repository has no description
1(*---------------------------------------------------------------------------
2 Copyright (c) 2025 Anil Madhavapeddy. All rights reserved.
3 SPDX-License-Identifier: ISC
4 ---------------------------------------------------------------------------*)
5
6type t = {
7 name : string;
8 value : string;
9}
10
11let create ~name ~value = { name; value }
12
13let name t = t.name
14let value t = t.value
15
16let make name value = { name; value }
17
18let jsont =
19 let kind = "EmailHeader" in
20 Jsont.Object.map ~kind make
21 |> Jsont.Object.mem "name" Jsont.string ~enc:name
22 |> Jsont.Object.mem "value" Jsont.string ~enc:value
23 |> Jsont.Object.finish
24
25(* Header parsed forms - these are used with header:Name:form properties *)
26
27let raw_jsont = Jsont.string
28
29let text_jsont = Jsont.string
30
31let addresses_jsont = Jsont.list Mail_address.jsont
32
33let grouped_addresses_jsont = Jsont.list Mail_address.Group.jsont
34
35let message_ids_jsont = Jsont.list Jsont.string
36
37let date_jsont = Proto_date.Rfc3339.jsont
38
39let urls_jsont = Jsont.list Jsont.string