package mrmime

  1. Overview
  2. Docs
type discrete = [
  1. | `Text
  2. | `Image
  3. | `Audio
  4. | `Video
  5. | `Application
]
type composite = [
  1. | `Message
  2. | `Multipart
]
type extension = [
  1. | `Ietf_token of string
  2. | `X_token of string
]
type ty = [
  1. | discrete
  2. | composite
  3. | extension
]
type subty = [
  1. | `Ietf_token of string
  2. | `Iana_token of string
  3. | `X_token of string
]
type mechanism = [
  1. | `Bit7
  2. | `Bit8
  3. | `Binary
  4. | `Quoted_printable
  5. | `Base64
  6. | `Ietf_token of string
  7. | `X_token of string
]
type value = [
  1. | `String of string
  2. | `Token of string
]
type content = {
  1. ty : ty;
  2. subty : subty;
  3. parameters : (string * value) list;
}
type version = int * int
type field = [
  1. | `ContentType of content
  2. | `ContentEncoding of mechanism
  3. | `ContentID of Rfc822.nonsense Rfc822.msg_id
  4. | `ContentDescription of Rfc5322.unstructured
  5. | `Content of Field_name.t * Rfc5322.unstructured
]
type unsafe = [
  1. | `Unsafe of Field_name.t * Rfc5322.unstructured
]
type lines = [
  1. | `Lines of (string * Location.t) list
]
type field_version = [
  1. | `MIMEVersion of version
]
val of_string : string -> 'a Angstrom.t -> 'a option
val is_tspecials : char -> bool
val invalid_token : string -> 'a Angstrom.t
val nothing_to_do : 'a Angstrom.t
val is_ctl : char -> bool
val is_space : char -> bool
val is_ascii : char -> bool
val is_token : char -> bool
val token : string Angstrom.t
val is_digit : char -> bool
val attribute : string Angstrom.t
val ietf_token : string Angstrom.t
val iana_token : string Angstrom.t
val x_token : string Angstrom.t
val extension_token : [> `Ietf_token of string | `X_token of string ] Angstrom.t
val composite_ty : [> `Ietf_token of string | `Message | `Multipart | `X_token of string ] Angstrom.t
val ty : [> `Application | `Audio | `Ietf_token of string | `Image | `Message | `Multipart | `Text | `Video | `X_token of string ] Angstrom.t
val ty_to_string : [< `Application | `Audio | `Ietf_token of string | `Image | `Message | `Multipart | `Text | `Video | `X_token of string ] -> string
val subty : [< `Application | `Audio | `Ietf_token of Iana.Map.key | `Image | `Message | `Multipart | `Text | `Video | `X_token of Iana.Map.key ] as 'a -> ('a * [> `Iana_token of Iana.Set.elt | `Ietf_token of string | `X_token of string ]) Angstrom.t
val value : [> `String of string | `Token of string ] Angstrom.t
val parameter : (string * [> `String of string | `Token of string ]) Angstrom.t
val content : content Angstrom.t
val version : (int * int) Angstrom.t
val mechanism : [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] Angstrom.t
val encoding : [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] Angstrom.t
val id : ([ `Atom of string | `String of string ] list * [> `Addr of 'a | `Domain of string list | `Literal of string ]) Angstrom.t
val with_location : 'a Angstrom.t -> ('a * Location.t) Angstrom.t
val field : (string -> [> `Content of Field_name.t * Rfc5322.unstructured | `ContentDescription of Rfc5322.unstructured | `ContentEncoding of [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] | `ContentID of [ `Atom of string | `String of string ] list * [> `Addr of 'b | `Domain of string list | `Literal of string ] | `ContentType of content ] as 'a Angstrom.t) -> (string -> 'a Angstrom.t) -> string -> 'a Angstrom.t
val sp : ('a, Format.formatter, unit, string) format4 -> 'a
val part_field : (string -> [> `Content of Field_name.t * Rfc5322.unstructured | `ContentDescription of Rfc5322.unstructured | `ContentEncoding of [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] | `ContentID of [ `Atom of string | `String of string ] list * [> `Addr of 'b | `Domain of string list | `Literal of string ] | `ContentType of content | `Unsafe of Field_name.t * Rfc5322.unstructured ] as 'a Angstrom.t) -> (string -> 'a Angstrom.t) -> string -> 'a Angstrom.t
val message_field : (string -> [> `Content of Field_name.t * Rfc5322.unstructured | `ContentDescription of Rfc5322.unstructured | `ContentEncoding of [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] | `ContentID of [ `Atom of string | `String of string ] list * [> `Addr of 'b | `Domain of string list | `Literal of string ] | `ContentType of content | `MIMEVersion of int * int ] as 'a Angstrom.t) -> (string -> 'a Angstrom.t) -> string -> 'a Angstrom.t
val entity_part_headers : (string -> [> `Content of Field_name.t * Rfc5322.unstructured | `ContentDescription of Rfc5322.unstructured | `ContentEncoding of [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] | `ContentID of [ `Atom of string | `String of string ] list * [> `Addr of 'b | `Domain of string list | `Literal of string ] | `ContentType of content | `Lines of (string * Location.t) list | `Unsafe of Field_name.t * Rfc5322.unstructured ] as 'a Angstrom.t) -> (string -> 'a Angstrom.t) -> ('a * Location.t) list Angstrom.t
val entity_message_headers : (string -> [> `Content of Field_name.t * Rfc5322.unstructured | `ContentDescription of Rfc5322.unstructured | `ContentEncoding of [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] | `ContentID of [ `Atom of string | `String of string ] list * [> `Addr of 'b | `Domain of string list | `Literal of string ] | `ContentType of content | `MIMEVersion of int * int ] as 'a Angstrom.t) -> (string -> 'a Angstrom.t) -> ('a * Location.t) list Angstrom.t
val mime_message_headers : (string -> [> `Content of Field_name.t * Rfc5322.unstructured | `ContentDescription of Rfc5322.unstructured | `ContentEncoding of [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] | `ContentID of [ `Atom of string | `String of string ] list * [> `Addr of 'b | `Domain of string list | `Literal of string ] | `ContentType of content | `MIMEVersion of int * int ] as 'a Angstrom.t) -> (string -> 'a Angstrom.t) -> ('a * Location.t) list Angstrom.t
val mime_part_headers : (string -> [> `Content of Field_name.t * Rfc5322.unstructured | `ContentDescription of Rfc5322.unstructured | `ContentEncoding of [> `Base64 | `Binary | `Bit7 | `Bit8 | `Ietf_token of string | `Quoted_printable | `X_token of string ] | `ContentID of [ `Atom of string | `String of string ] list * [> `Addr of 'b | `Domain of string list | `Literal of string ] | `ContentType of content | `Lines of (string * Location.t) list | `Unsafe of Field_name.t * Rfc5322.unstructured ] as 'a Angstrom.t) -> ('a * Location.t) list Angstrom.t
OCaml

Innovation. Community. Security.