B
    ª0H[   ã               @   sH   d Z ddlZddlmZ ddlmZ G dd„ deƒZG dd„ deƒZdS )	z'
Utilities for XML generation/parsing.
é    N)ÚOrderedDict)ÚXMLGeneratorc               @   s   e Zd ZdS )ÚUnserializableContentErrorN)Ú__name__Ú
__module__Ú__qualname__© r   r   úYC:\Users\HIRONO~1\AppData\Local\Temp\pip-install-6bm3nxem\django\django\utils\xmlutils.pyr   
   s   r   c                   s.   e Zd Zddd„Zdd„ Z‡ fdd„Z‡  ZS )	ÚSimplerXMLGeneratorNc             C   s8   |dkri }|   ||¡ |dk	r*|  |¡ |  |¡ dS )z9Convenience method for adding an element with no childrenN)ÚstartElementÚ
charactersÚ
endElement)ÚselfÚnameÚcontentsÚattrsr   r   r	   ÚaddQuickElement   s    
z#SimplerXMLGenerator.addQuickElementc             C   s(   |rt  d|¡rtdƒ‚t | |¡ d S )Nz[\x00-\x08\x0B-\x0C\x0E-\x1F]z/Control characters are not supported in XML 1.0)ÚreÚsearchr   r   r   )r   Úcontentr   r   r	   r      s    zSimplerXMLGenerator.charactersc                s*   |rt t| ¡ ƒƒn|}tƒ  ||¡ d S )N)r   ÚsortedÚitemsÚsuperr   )r   r   r   Zsorted_attrs)Ú	__class__r   r	   r      s    z SimplerXMLGenerator.startElement)NN)r   r   r   r   r   r   Ú__classcell__r   r   )r   r	   r
      s   
	r
   )	Ú__doc__r   Úcollectionsr   Úxml.sax.saxutilsr   Ú
ValueErrorr   r
   r   r   r   r	   Ú<module>   s
   