File: //lib/python3/dist-packages/twisted/web/__pycache__/microdom.cpython-310.pyc
o
�bZ� � @ s� d Z ddlZddlmZmZ ddlmZ ddlmZ ddl m
Z
mZ dd� Zd d
� Z
dd� Zd
Zee�Ze�� ed Zee�Ze�� efdd�Zefdd�ZG dd� de�ZG dd� d�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd � d e�ZG d!d"� d"e�Zd#d$� Z e � Z!G d%d&� d&e�Z"G d'd(� d(e�Z#d)d*� Z$d+d,� Z%G d-d.� d.e�Z&d/d0� Z'd1d2� Z(d3d4� Z)d5d6� Z*G d7d8� d8�Z+dS )9a�
Micro Document Object Model: a partial DOM implementation with SUX.
This is an implementation of what we consider to be the useful subset of the
DOM. The chief advantage of this library is that, not being burdened with
standards compliance, it can remain very stable between versions. We can also
implement utility 'pythonic' ways to access and mutate the XML tree.
Since this has not subjected to a serious trial by fire, it is not recommended
to use this outside of Twisted applications. However, it seems to work just
fine for the documentation generator, which parses a fairly representative
sample of XML.
Microdom mainly focuses on working with HTML and XHTML.
� N)�BytesIO�StringIO)�ioType)�InsensitiveDict)�
ParseError� XMLParserc C sV g }|j }| g}t|�dkr)|�d�}|j|kr||� |j|dd�<