
    k"g                     H    d Z ddlZddlmZ  G d de      Z G d de      Zy)z'
Utilities for XML generation/parsing.
    N)XMLGeneratorc                       e Zd Zy)UnserializableContentErrorN)__name__
__module____qualname__     N/var/www/html/djangosite/lib/python3.12/site-packages/django/utils/xmlutils.pyr   r   	   s    r
   r   c                   ,     e Zd ZddZd Z fdZ xZS )SimplerXMLGeneratorc                 x    |i }| j                  ||       || j                  |       | j                  |       y)z9Convenience method for adding an element with no childrenN)startElement
characters
endElement)selfnamecontentsattrss       r   addQuickElementz#SimplerXMLGenerator.addQuickElement   s:    =E$&OOH%r
   c                 v    |r!t        j                  d|      rt        d      t        j                  | |       y )Nz[\x00-\x08\x0B-\x0C\x0E-\x1F]z/Control characters are not supported in XML 1.0)researchr   r   r   )r   contents     r   r   zSimplerXMLGenerator.characters   s7    ryy!A7K -A  	g.r
   c                 r    |r"t        t        |j                                     n|}t        |   ||       y )N)dictsorteditemssuperr   )r   r   r   sorted_attrs	__class__s       r   r   z SimplerXMLGenerator.startElement    s+    6;tF5;;=12T<0r
   )NN)r   r   r   r   r   r   __classcell__)r!   s   @r   r   r      s    /1 1r
   r   )__doc__r   xml.sax.saxutilsr   
ValueErrorr   r   r	   r
   r   <module>r&      s*    
 )	 	1, 1r
   