U
    d¿/eS  ã                   @   sJ   d Z ddlZddlZddlZddlmZ ddgZdZG dd„ dejƒZ	dS )	z(Encoding parameter handling and default.é    Né   )ÚcopyingÚDEFAULT_ENCODINGÚEncodingzutf-8c                       sr   e Zd ZdZeZedœeje ddœ‡ fdd„Z	‡ fdd„Z
eed	œd
d„ƒZejeje ddœdd„ƒZ‡  ZS )r   z<Encoding used for input and output with ``'utf-8'`` default.)ÚencodingN)r   Úreturnc                   s   t ƒ jf |Ž || _d S ©N)ÚsuperÚ__init__r   )Úselfr   Úkwargs©Ú	__class__© ú5/tmp/pip-unpacked-wheel-n8ok7rre/graphviz/encoding.pyr
      s    zEncoding.__init__c                    s   t ƒ jf d| ji|—ŽS )z3Return the kwargs to create a copy of the instance.r   )r	   Ú_copy_kwargsÚ	_encoding)r   r   r   r   r   r      s    zEncoding._copy_kwargs)r   c                 C   s   | j S )z'The encoding for the saved source file.)r   )r   r   r   r   r      s    zEncoding.encodingc                 C   s$   |d krt  ¡ }t |¡ || _d S r   )ÚlocaleÚgetpreferredencodingÚcodecsÚlookupr   )r   r   r   r   r   r   #   s    
)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   ÚtypingÚOptionalÚstrr
   r   Úpropertyr   ÚsetterÚ__classcell__r   r   r   r   r      s   ÿ)
r   r   r   r   Ú r   Ú__all__r   ZCopyBaser   r   r   r   r   Ú<module>   s   