HEX
Server: LiteSpeed
System: Linux s787.bom1.mysecurecloudhost.com 4.18.0-477.13.1.lve.el8.x86_64 #1 SMP Thu Jun 1 16:40:47 EDT 2023 x86_64
User: mobilech (5348)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //usr/local/lib64/python3.6/site-packages/lxml/html/__pycache__/_html5builder.cpython-36.pyc
3

��?e��@sZdZddlmZmZddlmZmZGdd�de�ZGdd�de�Z	Gdd	�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
�7/tmp/pip-build-_veujq9v/lxml/lxml/html/_html5builder.py�__init__szDocumentType.__init__N)�__name__�
__module__�__qualname__rr
r
r
rrsrc@seZdZdd�Zdd�ZdS)�DocumentcCsd|_g|_dS)N)�_elementTree�
childNodes)r	r
r
rrszDocument.__init__cCs|jj�j|j�dS)N)r�getrootZaddnext�_element)r	�elementr
r
r�appendChildszDocument.appendChildN)r
rrrrr
r
r
rrsrc@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_builderr
r
rr's
zTreeBuilder.__init__cCs"tjj|�d|_g|_d|_dS)NF)rr�reset�rootInserted�initialComments�doctype)r	r
r
rr!.szTreeBuilder.resetcCs|jjS)N)�documentr)r	r
r
r�getDocument4szTreeBuilder.getDocumentcCsFg}|jdj}|jr"|j|j�|j|j��|jrB|j|j�|S)Nr)�openElementsr�text�append�extend�getchildren�tail)r	�fragmentrr
r
r�getFragment7szTreeBuilder.getFragmentcCs|j|||�}||_dS)N)�doctypeClassr$)r	rrrr$r
r
r�
insertDoctypeAszTreeBuilder.insertDoctypecCs(|js|jj|�ntjj|||�dS)N)r"r#r)rr�
insertComment)r	�data�parentr
r
rr1EszTreeBuilder.insertCommentcCs�g}|jr`|jjr`|jd|jj�|jjdk	s<|jjdk	rV|jd|jj|jjf�|jd�|jd�tjdj|��}x|jD]}|j	t
j|��q�W|j�|_
|j�|j
_|j|�}||_|j
jj|�|jj|�d|_dS)Nz<!DOCTYPE %sz PUBLIC "%s" "%s"�>z
<html></html>�T)r$rr)rrr�
fromstring�joinr#Zaddpreviousrr�
documentClassr%Zgetroottreerrrrr'r")r	r�buf�root�commentZroot_elementr
r
r�
insertRootKs$



zTreeBuilder.insertRoot)N)r
rrrr8rr/rr�
fragmentClassrr!r&r.r0r1r<r
r
r
rr s

rN)�__doc__Zhtml5lib.treebuildersrrr�lxmlr�objectrrrr
r
r
r�<module>	s