HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //usr/local/lib64/python3.8/site-packages/lxml/html/__pycache__/_html5builder.cpython-38.pyc
U

O��i��@sVdZddlmZmZddlmZmZGdd�d�ZGdd�d�ZGdd	�d	ej	�Z	d
S)z�
Legacy module - don't use in new code!

html5lib now has its own proper implementation.

This module implements a tree builder for html5lib that generates lxml
html element trees.  This module uses camelCase as it follows the
html5lib style guide.
�)�_base�etree)�htmlrc@seZdZdd�ZdS)�DocumentTypecCs||_||_||_dS�N)�name�publicId�systemId)�selfrrr	�r�9/tmp/pip-install-gdmoqxf6/lxml/lxml/html/_html5builder.py�__init__szDocumentType.__init__N)�__name__�
__module__�__qualname__r
rrrrrsrc@seZdZdd�Zdd�ZdS)�DocumentcCsd|_g|_dSr)�_elementTree�
childNodes�r
rrrr
szDocument.__init__cCs|j���|j�dSr)r�getrootZaddnext�_element)r
�elementrrr�appendChildszDocument.appendChildN)rrrr
rrrrrrsrc@sZeZdZeZeZdZdZeZ	dd�Z
dd�Zdd�Zdd	�Z
d
d�Zddd
�Zdd�ZdS)�TreeBuilderNcOsDtjtdd�}tjtdd�}|j|_|j|_tj	j
|f|�|�dS)NF)�fullTree)�etree_builders�getETreeModulerr�Element�elementClass�Comment�commentClassrrr
)r
�args�kwargsZhtml_builderZ
etree_builderrrrr
's
zTreeBuilder.__init__cCs"tj�|�d|_g|_d|_dS)NF)rr�reset�rootInserted�initialComments�doctyperrrrr#.szTreeBuilder.resetcCs|jjSr)�documentrrrrr�getDocument4szTreeBuilder.getDocumentcCsFg}|jdj}|jr"|�|j�|�|���|jrB|�|j�|S)Nr)�openElementsr�text�append�extend�getchildren�tail)r
�fragmentrrrr�getFragment7szTreeBuilder.getFragmentcCs|�|||�}||_dSr)�doctypeClassr&)r
rrr	r&rrr�
insertDoctypeAszTreeBuilder.insertDoctypecCs(|js|j�|�ntj�|||�dSr)r$r%r+rr�
insertComment)r
�data�parentrrrr3EszTreeBuilder.insertCommentcCs�g}|jr`|jjr`|�d|jj�|jjdk	s<|jjdk	rV|�d|jj|jjf�|�d�|�d�t�d�|��}|jD]}|�	t
�|��q�|��|_
|��|j
_|�|�}||_|j
j�|�|j�|�d|_dS)Nz<!DOCTYPE %sz PUBLIC "%s" "%s"�>z
<html></html>�T)r&rr+rr	r�
fromstring�joinr%Zaddpreviousrr�
documentClassr'Zgetroottreerrrrr)r$)r
r�buf�root�commentZroot_elementrrr�
insertRootKs&�




zTreeBuilder.insertRoot)N)rrrrr:rr1rr �
fragmentClassr
r#r(r0r2r3r>rrrrr s

rN)
�__doc__Zhtml5lib.treebuildersrrr�lxmlrrrrrrrr�<module>s