diff options
author | R David Murray <rdmurray@bitdance.com> | 2011-03-15 21:43:21 (GMT) |
---|---|---|
committer | R David Murray <rdmurray@bitdance.com> | 2011-03-15 21:43:21 (GMT) |
commit | 31f218bc6b22e2b360087323e79acef7c1c32537 (patch) | |
tree | 991bb5daee9746202c51dca7c6edfc695ae0513d /Doc | |
parent | b637680f7e4e23c59c12dd5f95c78b75a51e75f4 (diff) | |
parent | 729c5e203da8adc06acddaa3e7ea472d9c255774 (diff) | |
download | cpython-31f218bc6b22e2b360087323e79acef7c1c32537.zip cpython-31f218bc6b22e2b360087323e79acef7c1c32537.tar.gz cpython-31f218bc6b22e2b360087323e79acef7c1c32537.tar.bz2 |
Merge #11216: document all possible set_charset execution paths.
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/library/email.message.rst | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/Doc/library/email.message.rst b/Doc/library/email.message.rst index ebe2d9c..1e6a485 100644 --- a/Doc/library/email.message.rst +++ b/Doc/library/email.message.rst @@ -139,15 +139,22 @@ Here are the methods of the :class:`Message` class: string naming a character set, or ``None``. If it is a string, it will be converted to a :class:`~email.charset.Charset` instance. If *charset* is ``None``, the ``charset`` parameter will be removed from the - :mailheader:`Content-Type` header. Anything else will generate a - :exc:`TypeError`. - - The message will be assumed to be of type :mimetype:`text/\*` encoded with - *charset.input_charset*. It will be converted to *charset.output_charset* - and encoded properly, if needed, when generating the plain text - representation of the message. MIME headers (:mailheader:`MIME-Version`, - :mailheader:`Content-Type`, :mailheader:`Content-Transfer-Encoding`) will - be added as needed. + :mailheader:`Content-Type` header (the message will not be otherwise + modified). Anything else will generate a :exc:`TypeError`. + + If there is no existing :mailheader:`MIME-Version` header one will be + added. If there is no existing :mailheader:`Content-Type` header, one + will be added with a value of :mimetype:`text/plain`. Whether the + :mailheader:`Content-Type` header already exists or not, its ``charset`` + parameter will be set to *charset.output_charset*. If + *charset.input_charset* and *charset.output_charset* differ, the payload + will be re-encoded to the *output_charset*. If there is no existing + :mailheader:`Content-Transfer-Encoding` header, then the payload will be + transfer-encoded, if needed, using the specified + :class:`~email.charset.Charset`, and a header with the appropriate value + will be added. If a :mailheader:`Content-Transfer-Encoding` header + already exists, the payload is assumed to already be correctly encoded + using that :mailheader:`Content-Transfer-Encoding` and is not modified. .. method:: get_charset() |