U
    7h                     @   s<   d Z ddl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)XMLGeneratorc                   @   s   e Zd ZdS )UnserializableContentErrorN)__name__
__module____qualname__ r   r   O/var/www/formularioweb/env/lib/python3.8/site-packages/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
charactersZ
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)dict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   Zxml.sax.saxutilsr   
ValueErrorr   r	   r   r   r   r   <module>   s   