�
Ϫ�f�s � �> � d Z ddlmZ ddlmZmZmZ ddlmZ d� Z ddiZ
G d� d � ZeZdd
�Z
d� Zd� Zd
� Zd� Z G d� de� Z G d� d� Z G d� de� Z ee� G d� d� � Z G d� de� Zd� Z G d� dej4 � Z G d� d� Zy) z�
DOM-like XML processing support.
This module provides support for parsing XML into DOM-like object structures
and serializing such structures to an XML string representation, optimized
for use in streaming XML applications.
� )�cast)� Attribute� Interface�implementer)�suxc �T � | j dd� }t |� dk( r|S d|d fS )zSInternal method for splitting a prefixed Element name into its
respective parts�:� � Nr )�split�len)�name�ntoks �;/usr/lib/python3/dist-packages/twisted/words/xish/domish.py�_splitPrefixr s2 � � �:�:�c�1��D�
�4�y�A�~����d�1�g��� z$http://www.w3.org/XML/1998/namespace�xmlc �2 � e Zd ZdZdd�Zd� Zd� Zd� Zd d�Zy)
�_ListSerializerz=Internal class which serializes an Element tree into a bufferNc �� � g | _ i | _ |r| j j |� | j j t � t j � g|xs g z | _ d| _ y �Nr )� writelist�prefixes�update�
G_PREFIXES�values�prefixStack�
prefixCounter)�selfr �prefixesInScopes r �__init__z_ListSerializer.__init__' |