python (3.12.0)
1 # Copyright (C) 2001-2006 Python Software Foundation
2 # Author: Barry Warsaw
3 # Contact: email-sig@python.org
4
5 """Base class for MIME specializations."""
6
7 __all__ = ['MIMEBase']
8
9 import email.policy
10
11 from email import message
12
13
14 class ESC[4;38;5;81mMIMEBase(ESC[4;38;5;149mmessageESC[4;38;5;149m.ESC[4;38;5;149mMessage):
15 """Base class for MIME specializations."""
16
17 def __init__(self, _maintype, _subtype, *, policy=None, **_params):
18 """This constructor adds a Content-Type: and a MIME-Version: header.
19
20 The Content-Type: header is taken from the _maintype and _subtype
21 arguments. Additional parameters for this header are taken from the
22 keyword arguments.
23 """
24 if policy is None:
25 policy = email.policy.compat32
26 message.Message.__init__(self, policy=policy)
27 ctype = '%s/%s' % (_maintype, _subtype)
28 self.add_header('Content-Type', ctype, **_params)
29 self['MIME-Version'] = '1.0'