File: //lib64/python3.9/xml/dom/__pycache__/expatbuilder.cpython-39.opt-2.pyc
a
    �DOg��  �                   @   s  d dl mZmZmZ d dl mZmZmZ d dlmZ d dl	m
Z
mZ d dlm
Z
 ejZejZejZejjZejjZejjZejjZe�� Ze�dd�e�dd�e�dd	�e�dd
�e�dd�e�dd�e�dd
�e�dd�e�dd�d�	ZG dd� de�Zdd� Zdd� ZG dd� d�ZeeefZG dd� de�Z G dd� de�Z!G dd� de!�Z"G dd � d e!�Z#d!Z$d"e$ Z%G d#d$� d$e�Z&G d%d&� d&�Z'G d'd(� d(e'e�Z(G d)d*� d*e'e&�Z)G d+d,� d,e*�Z+G d-d.� d.e�Z,d:d0d1�Z-d;d2d3�Z.d<d4d5�Z/d=d6d7�Z0d8d9� Z1dS )>�    )�
xmlbuilder�minidom�Node)�EMPTY_NAMESPACE�EMPTY_PREFIX�XMLNS_NAMESPACE)�expat)�
_append_child�_set_attribute_node)�
NodeFilterNZcdata�enumeration�entity�entities�idZidrefZidrefsZnmtokenZnmtokens)	ZCDATA�ENUMZENTITYZENTITIES�IDZIDREFZIDREFSZNMTOKENZNMTOKENSc                   @   sZ   e Zd ZdZddd�Zdd� Zdd� Zd	d
� Zdd� Zd
d� Z	dd� Z
dd� Zdd� ZdS )�ElementInfo��
_attr_info�_model�tagNameNc                 C   s   || _ g | _|| _d S �N)r   r   r   )�selfr   �model� r   �,/usr/lib64/python3.9/xml/dom/expatbuilder.py�__init__?   s    zElementInfo.__init__c                 C   s   | j | j| jfS r   r   �r   r   r   r   �__getstate__D   s    zElementInfo.__getstate__c                 C   s   |\| _ | _| _d S r   r   )r   �stater   r   r   �__setstate__G   s    zElementInfo.__setstate__c                 C   sN   | j D ]@}|d |kr|d }|d dkr6td   S t|d    S qtjS )N�   ���r   �(r   )r   �
_typeinfo_mapr   �_no_type)r   �aname�info�tr   r   r   �getAttributeTypeJ   s    
zElementInfo.getAttributeTypec                 C   s   t jS r   )r   r%   )r   ZnamespaceURIZ	localNamer   r   r   �getAttributeTypeNST   s    zElementInfo.getAttributeTypeNSc                 C   s,   | j r$| j d }|tjjtjjfvS dS d S �Nr   F)r   r   r   Z
XML_CTYPE_ANYZXML_CTYPE_MIXED)r   �typer   r   r   �isElementContentW   s    
�zElementInfo.isElementContentc                 C   s    | j r| j d tjjkS dS d S r+   )r   r   r   ZXML_CTYPE_EMPTYr   r   r   r   �isEmpty_   s    zElementInfo.isEmptyc                 C   s,   | j D ] }|d |kr|d dk  S qdS )Nr!   r"