The cost depends on the encoding of the content and the main media type.
N = Size of the message H = Size of the headers of the sub-message(s)
Format: time complexity, memory complexity
| 7bit, 8bit, binary | Base64, Quoted_printable ------------------------------------------------------------- message | O(N), O(H) | O(N), O(N) multipart | O(N), O(H) | O(N), O(N) * | O(1), O(1) | O(N), O(N)
Where * is any other main media type: text, image, application...
Encoding and type can be obtained from the headers, using the modules Headers.Content_type and Headers.Content_transfer_encoding, and the corresponding default values.
Creates an object of type t from a Bigstring.t. The source Bigstring might not be copied, so it should be copied if the need to mutate it arises. The latter does not apply if the implementation of to_bigstring explicitly says that this is unnecessary.
This function only needs implementation if t
exposed to be a polymorphic variant.
Despite what the type reads, this does *not* produce a function after reading;
instead it takes the constructor tag (int) before reading and reads the rest of the
variant t
afterwards.