File: //home/arjun/projects/env/lib64/python3.10/site-packages/lxml/__pycache__/sax.cpython-310.pyc
o
we�$ � @ s� d Z ddlmZ ddlmZ ddlmZ ddlmZm Z ddlm
Z
mZ G dd� dej�Z
d d
� ZG dd� de�ZG d
d� de�Zdd� ZdS )a?
SAX-based adapter to copy trees from/to the Python standard library.
Use the `ElementTreeContentHandler` class to build an ElementTree from
SAX events.
Use the `ElementTreeProducer` class or the `saxify()` function to fire
the SAX events of an ElementTree against a SAX ContentHandler.
See https://lxml.de/sax.html
� )�absolute_import)�ContentHandler)�etree)�ElementTree�
SubElement)�Comment�ProcessingInstructionc @ s e Zd ZdZdS )�SaxErrorzGeneral SAX error.
N)�__name__�
__module__�__qualname__�__doc__� r r �A/home/arjun/projects/env/lib/python3.10/site-packages/lxml/sax.pyr s r c C s, | d dkrt | dd � �dd��S d | fS )Nr �{� �})�tuple�split)�tagr r r � _getNsTag s r c @ s� e Zd ZdZd dd�Zdd� Zeeejd�Zdd � Zd
d� Z dd
� Z
dd� Zdd� Zdd� Z
d dd�Zdd� Zdd� Zd dd�Zdd� Zdd� ZeZdS )!�ElementTreeContentHandlerz/Build an lxml ElementTree from SAX events.
Nc C sL t �| � d | _g | _g | _d | _d d gi| _i | _|d u r!tj }|| _
d S �N)r �__init__�_root�_root_siblings�_element_stack�_default_ns�_ns_mapping�
_new_mappingsr �Element�_makeelement)�self�makeelementr r r r &