package mrmime

  1. Overview
  2. Docs
type uutf_charset = [
  1. | `UTF_8
  2. | `UTF_16
  3. | `UTF_16BE
  4. | `UTF_16LE
]
type charset = [
  1. | Rosetta.encoding
  2. | uutf_charset
  3. | `US_ASCII
  4. | `Charset of string
]
type encoding =
  1. | Quoted_printable
  2. | Base64
type encoded_word = {
  1. charset : charset;
  2. encoding : encoding;
  3. raw : string * char * string;
  4. data : (string, Rresult.R.msg) result;
}
val is_normalized : encoded_word -> bool
val charset_of_uppercase_string : string -> charset
val charset_of_string : string -> string * charset
val is_especials : char -> bool
val is_ctl : char -> bool
val is_space : char -> bool
val token : string Angstrom.t
type share = [
  1. | `End
  2. | `Uchar of Uchar.t
]
val normalize_quoted_printable_with_rosetta : ?chunk:int -> charset:Rosetta.encoding -> string -> (string, [> Rresult.R.msg ]) Rresult.result
val normalize_quoted_printable_with_uutf : ?chunk:int -> charset:[< Uutf.decoder_encoding ] -> string -> (string, [> Rresult.R.msg ]) Rresult.result
val normalize_base64_with_rosetta : ?chunk:int -> charset:Rosetta.encoding -> string -> (string, [> Rresult.R.msg ]) Rresult.result
val normalize_base64_with_uutf : ?chunk:int -> charset:[< Uutf.decoder_encoding ] -> string -> (string, [> Rresult.R.msg ]) Rresult.result
val normalize_quoted_printable : ?chunk:int -> charset: [< `Charset of 'a | `ISO_8859_1 | `ISO_8859_10 | `ISO_8859_11 | `ISO_8859_13 | `ISO_8859_14 | `ISO_8859_15 | `ISO_8859_16 | `ISO_8859_2 | `ISO_8859_3 | `ISO_8859_4 | `ISO_8859_5 | `ISO_8859_6 | `ISO_8859_7 | `ISO_8859_8 | `ISO_8859_9 | `KOI8_R | `KOI8_U | `US_ASCII | `UTF_16 | `UTF_16BE | `UTF_16LE | `UTF_7 | `UTF_8 ] -> string -> (string, [> Rresult.R.msg ]) Rresult.result
val normalize_base64 : ?chunk:int -> charset: [< `Charset of 'a | `ISO_8859_1 | `ISO_8859_10 | `ISO_8859_11 | `ISO_8859_13 | `ISO_8859_14 | `ISO_8859_15 | `ISO_8859_16 | `ISO_8859_2 | `ISO_8859_3 | `ISO_8859_4 | `ISO_8859_5 | `ISO_8859_6 | `ISO_8859_7 | `ISO_8859_8 | `ISO_8859_9 | `KOI8_R | `KOI8_U | `US_ASCII | `UTF_16 | `UTF_16BE | `UTF_16LE | `UTF_7 | `UTF_8 ] -> string -> (string, [> Rresult.R.msg ]) Rresult.result
val normalize : ?chunk:int -> charset: [< `Charset of 'a & 'b | `ISO_8859_1 | `ISO_8859_10 | `ISO_8859_11 | `ISO_8859_13 | `ISO_8859_14 | `ISO_8859_15 | `ISO_8859_16 | `ISO_8859_2 | `ISO_8859_3 | `ISO_8859_4 | `ISO_8859_5 | `ISO_8859_6 | `ISO_8859_7 | `ISO_8859_8 | `ISO_8859_9 | `KOI8_R | `KOI8_U | `US_ASCII | `UTF_16 | `UTF_16BE | `UTF_16LE | `UTF_7 | `UTF_8 ] -> encoding:encoding -> string -> (string, [> Rresult.R.msg ]) Rresult.result
val invalid_encoding : char -> 'a Angstrom.t
val encoded_text : string Angstrom.t
val encoded_word : encoded_word Angstrom.t
OCaml

Innovation. Community. Security.