package pecu
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=77d3ce3b785257acce0b62d75db647707ad70b622f48f3c7b6109911d03cbc1e
sha512=0216d7bd533489dd800f48418931832b0d96d277a9424a6fe08ff87eb55cf78c0ad55c26459603a138715d1bcc90768e944cff24f5497d2e3390387aa93a1c14
doc/pecu/Pecu/Inline/index.html
Module Pecu.InlineSource
Decode inline quoted-printable value.
The purpose of this sub-module is to decode/encode inline quoted-printable data described by RFC2047. Header of an email can not emit in anyway (before RFC6532) bytes encoded into 8 bits. To be able to use an encoding such as latin1 or UTF-8, we can use an inlined quoted-printable text.
The type for decoders.
src d s j l provides d with l bytes to read, starting at j in s. This byte range is read by calls to decode with d until `Await is returned. To signal the end of input, call the function with l = 0.
decode d is:
`Awaitifdhas a`Manualinput source and awaits for more input. The client must usesrcto provide it.`Endif the end of input was reached.`Malformed bytesif thebytessequence is malformed according to the decoded quoted-printable encoding scheme. If you are interested in a best-effort decoding you can still continue to decode after an error until the decode synchronizes again on valid bytes.`Data dataif adatasequence value was decoded.`Line lineif aline sequence value plus a line-break was decoded.
Note. Repeated invocation always eventually returns `End, even in case of errors.
decoder_byte_count d is the number of characters already decoded on d (included malformed ones). This is the last decode's end output offset counting from beginning of the stream.
The type for encoders.
encode encoder is:
`Partialiffehas a`Manualdestination and needs more output storage. The client must usedstto provide a new buffer and then callencodewith`Awaituntil`Okis returned.`Okwhen the encoder is ready to encode a new`Char,`Line_breakor`End
For `Manual destination, encoding `End always return `Partial, the client should continue as usual with `Await until `Ok is returned at which point dst_rem encoder is guaranteed to be the sode of the last provided buffer (i.e. nothing was written).
Raises. Invalid_argument if a `Char, `Line_break or `End is encoded after a `Partial encode.