관리-도구
편집 파일: headerregistry.cpython-311.opt-1.pyc
� c��fSQ � � � d Z ddlmZ ddlmZ ddlmZ ddlmZ G d� d� � Z G d� d � � Z G d � de � � Zd� Z G d � d� � Z G d� de � � Z G d� d� � Z G d� de� � Z G d� d� � Z G d� de� � Z G d� de� � Z G d� de� � Z G d� d� � Z G d� d � � Z G d!� d"e� � Z G d#� d$e� � Z G d%� d&� � Z G d'� d(� � Zi d)e�d*e�d+e�d,e�d-e�d.e�d/e�d0e�d1e�d2e�d3e�d4e�d5e�d6e�d7e�d8e�d9e�eeed:��Z G d;� d<� � Zd=S )>z�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. � )�MappingProxyType)�utils)�errors)�_header_value_parserc � � e Zd Zdd�Zed� � � Zed� � � Zed� � � Zed� � � Zd� Z d � Z d � ZdS )�Address� Nc � � d� t d||||f� � � � }d|v sd|v rt d� � �|�q|s|rt d� � �t j |� � \ }}|r#t d� ||� � � � �|j r |j d �|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 ) �join�filter� ValueError� TypeError�parser� get_addr_spec�format�all_defects� local_part�domain� _display_name� _username�_domain)�self�display_name�usernamer � addr_spec�inputs�a_s�rests �;/opt/alt/python311/lib64/python3.11/email/headerregistry.py�__init__zAddress.__init__ s� � �"