File: //lib64/python3.8/email/__pycache__/headerregistry.cpython-38.pyc
U
e5dKQ @ sz d Z ddlmZ ddlmZ ddlmZ ddlmZ G dd dZG dd d Z G d
d de
Zdd
ZG dd dZ
G dd de
ZG dd dZG dd deZG dd dZG dd deZG dd deZG dd deZG dd dZG d d! d!ZG d"d# d#eZG d$d% d%eZG d&d' d'ZG d(d) d)Zeeeeeeeeeeeeeeeeeeeed*ZG d+d, d,Zd-S ).a; Representing and manipulating email headers via custom objects.
This module provides an implementation of the HeaderRegistry API.
The implementation is designed to flexibly follow RFC5322 rules.
Eventually HeaderRegistry will be a public API, but it isn't yet,
and will probably change some before that happens.
)MappingProxyType)utils)errors)_header_value_parserc @ s^ e Zd ZdddZedd Zedd Zed d
Zedd Zd
d Z dd Z
dd ZdS )Address Nc C s d td||||f}d|ks(d|kr0td|dk r|s@|rHtdt|\}}|rjtd|||jrz|jd |j}|j }|| _
|| _|| _dS ) a Create an object representing a full email address.
An address can have a 'display_name', a 'username', and a 'domain'. In
addition to specifying the username and domain separately, they may be
specified together by using the addr_spec keyword *instead of* the
username and domain keywords. If an addr_spec string is specified it
must be properly quoted according to RFC 5322 rules; an error will be
raised if it is not.
An Address object has display_name, username, domain, and addr_spec
attributes, all of which are read-only. The addr_spec and the string
value of the object are both quoted according to RFC5322 rules, but
without any Content Transfer Encoding.
r N
z8invalid arguments; address parts cannot contain CR or LFz=addrspec specified when username and/or domain also specifiedz6Invalid addr_spec; only '{}' could be parsed from '{}'r )
joinfilter
ValueError TypeErrorparserZ
get_addr_specformatall_defects
local_partdomain
_display_name _username_domain)selfdisplay_nameusernamer addr_specZinputsZa_srest r ,/usr/lib64/python3.8/email/headerregistry.py__init__ s&