(** JMAP Mail Parser Module This module provides a centralized location for all mail-specific JSON parsing functions. It builds on top of the core parser module and adds mail-specific type parsing. open Jmap_core The parser uses ezjsonm for JSON handling, following the same pattern as jmap_parser.ml in jmap-core. Reference: RFC 8621 (JMAP for Mail) Test files: test/data/mail/*.json *) (** Parse Mailbox from JSON *) let parse_mailbox json = Jmap_mailbox.Parser.of_json json (** Parse Thread from JSON *) let parse_thread json = Jmap_thread.Parser.of_json json (** Parse Email from JSON *) let parse_email json = Jmap_email.Parser.of_json json (** Parse EmailAddress from JSON *) let parse_email_address json = Jmap_email.EmailAddress.of_json json (** Parse EmailHeader from JSON *) let parse_email_header json = Jmap_email.EmailHeader.of_json json (** Parse BodyPart from JSON *) let parse_body_part json = Jmap_email.BodyPart.of_json json (** Parse BodyValue from JSON *) let parse_body_value json = Jmap_email.BodyValue.of_json json (** Parse Identity from JSON *) let parse_identity json = Jmap_identity.Parser.of_json json (** Parse EmailSubmission from JSON *) let parse_email_submission json = Jmap_email_submission.Parser.of_json json (** Parse EmailSubmission Envelope from JSON *) let parse_envelope json = Jmap_email_submission.Envelope.of_json json (** Parse EmailSubmission Address from JSON *) let parse_address json = Jmap_email_submission.Address.of_json json (** Parse DeliveryStatus from JSON *) let parse_delivery_status json = Jmap_email_submission.DeliveryStatus.of_json json (** Parse VacationResponse from JSON *) let parse_vacation_response json = Jmap_vacation_response.Parser.of_json json (** Parse SearchSnippet from JSON *) let parse_search_snippet json = Jmap_search_snippet.Parser.of_json json (** Parse Mailbox/get request from JSON *) let parse_mailbox_get_request json = Jmap_mailbox.Get.request_of_json json (** Parse Mailbox/get response from JSON *) let parse_mailbox_get_response json = Jmap_mailbox.Get.response_of_json json (** Parse Mailbox/query request from JSON *) let parse_mailbox_query_request json = Jmap_mailbox.Query.request_of_json json (** Parse Mailbox/query response from JSON *) let parse_mailbox_query_response json = Jmap_mailbox.Query.response_of_json json (** Parse Mailbox/set request from JSON *) let parse_mailbox_set_request json = Jmap_mailbox.Set.request_of_json json (** Parse Mailbox/set response from JSON *) let parse_mailbox_set_response json = Jmap_mailbox.Set.response_of_json json (** Parse Thread/get request from JSON *) let parse_thread_get_request json = Jmap_thread.Get.request_of_json json (** Parse Thread/get response from JSON *) let parse_thread_get_response json = Jmap_thread.Get.response_of_json json (** Parse Email/get request from JSON *) let parse_email_get_request json = Jmap_email.Get.request_of_json json (** Parse Email/get response from JSON *) let parse_email_get_response json = Jmap_email.Get.response_of_json json (** Parse Email/query request from JSON *) let parse_email_query_request json = Jmap_email.Query.request_of_json json (** Parse Email/query response from JSON *) let parse_email_query_response json = Jmap_email.Query.response_of_json json (** Parse Email/set request from JSON *) let parse_email_set_request json = Jmap_email.Set.request_of_json json (** Parse Email/set response from JSON *) let parse_email_set_response json = Jmap_email.Set.response_of_json json (** Parse Email/import request from JSON *) let parse_email_import_request json = Jmap_email.Import.request_of_json json (** Parse Email/import response from JSON *) let parse_email_import_response json = Jmap_email.Import.response_of_json json (** Parse Email/parse request from JSON *) let parse_email_parse_request json = Jmap_email.Parse.request_of_json json (** Parse Email/parse response from JSON *) let parse_email_parse_response json = Jmap_email.Parse.response_of_json json (** Parse Identity/get request from JSON *) let parse_identity_get_request json = Jmap_identity.Get.request_of_json json (** Parse Identity/get response from JSON *) let parse_identity_get_response json = Jmap_identity.Get.response_of_json json (** Parse EmailSubmission/get request from JSON *) let parse_email_submission_get_request json = Jmap_email_submission.Get.request_of_json json (** Parse EmailSubmission/get response from JSON *) let parse_email_submission_get_response json = Jmap_email_submission.Get.response_of_json json (** Parse EmailSubmission/query request from JSON *) let parse_email_submission_query_request json = Jmap_email_submission.Query.request_of_json json (** Parse EmailSubmission/query response from JSON *) let parse_email_submission_query_response json = Jmap_email_submission.Query.response_of_json json (** Parse EmailSubmission/set request from JSON *) let parse_email_submission_set_request json = Jmap_email_submission.Set.request_of_json json (** Parse EmailSubmission/set response from JSON *) let parse_email_submission_set_response json = Jmap_email_submission.Set.response_of_json json (** Parse VacationResponse/get request from JSON *) let parse_vacation_response_get_request json = Jmap_vacation_response.Get.request_of_json json (** Parse VacationResponse/get response from JSON *) let parse_vacation_response_get_response json = Jmap_vacation_response.Get.response_of_json json (** Parse VacationResponse/set request from JSON *) let parse_vacation_response_set_request json = Jmap_vacation_response.Set.request_of_json json (** Parse VacationResponse/set response from JSON *) let parse_vacation_response_set_response json = Jmap_vacation_response.Set.response_of_json json (** Parse SearchSnippet/get request from JSON *) let parse_search_snippet_get_request json = Jmap_search_snippet.Get.request_of_json json (** Parse SearchSnippet/get response from JSON *) let parse_search_snippet_get_response json = Jmap_search_snippet.Get.response_of_json json (** Parse Mailbox Filter from JSON *) let parse_mailbox_filter json = Jmap_mailbox.Filter.of_json json (** Parse Email Filter from JSON *) let parse_email_filter json = Jmap_email.Filter.of_json json (** Parse EmailSubmission Filter from JSON *) let parse_email_submission_filter json = Jmap_email_submission.Filter.of_json json (** Parse Mailbox Rights from JSON *) let parse_mailbox_rights json = Jmap_mailbox.Rights.of_json json (** Serialize Mailbox to JSON *) let mailbox_to_json mailbox = Jmap_mailbox.Parser.to_json mailbox (** Serialize Thread to JSON *) let thread_to_json thread = Jmap_thread.Parser.to_json thread (** Serialize Email to JSON *) let email_to_json email = Jmap_email.Parser.to_json email (** Serialize Identity to JSON *) let identity_to_json identity = Jmap_identity.Parser.to_json identity (** Serialize EmailSubmission to JSON *) let email_submission_to_json submission = Jmap_email_submission.Parser.to_json submission (** Serialize VacationResponse to JSON *) let vacation_response_to_json vacation = Jmap_vacation_response.Parser.to_json vacation (** Serialize SearchSnippet to JSON *) let search_snippet_to_json snippet = Jmap_search_snippet.Parser.to_json snippet