Viewing File: /usr/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/etree.cpython-36.pyc

3

aj1@sddlmZmZmZddlmZddlZddlmZddlm	Z	ddlm
Z
dd	l
mZdd
lm
Z
ejdZdd
dZe
eZdS))absolute_importdivisionunicode_literals)	text_typeN)base)	_ihatexml)	constants)
namespaces)moduleFactoryFactoryz
{([^}]*)}(.*)Fc	sjdjGfdddtjGfdddGfdddGfdd	d	Gfd
ddfdd
	fdd}G	fdddtj}tS)NZasdcseZdZd$fdd	ZddZddZdd	ZeeeZd
dZ	dd
Z
ee
e	ZddZddZ
eee
ZddZddZeeeZddZddZddZddZd%ddZd d!Zd"d#ZdS)&z getETreeBuilder.<locals>.ElementNcs^||_||_j|j|||_|dkr:td|jf|_n|j|jf|_d|_g|_g|_	dS)Nhtml)
_name
_namespaceElement_getETreeTag_elementrZ	nameTupleparent_childNodes_flags)selfname	namespace)ElementTree/usr/lib/python3.6/etree.py__init__s

z)getETreeBuilder.<locals>.Element.__init__cSs|dkr|}nd||f}|S)Nz{%s}%sr)rrrZ	etree_tagrrrr#sz-getETreeBuilder.<locals>.Element._getETreeTagcSs||_|j|j|j|j_dS)N)rrrrtag)rrrrr_setName*sz)getETreeBuilder.<locals>.Element._setNamecSs|jS)N)r)rrrr_getName.sz)getETreeBuilder.<locals>.Element._getNamecSs||_|j|j|j|j_dS)N)rrrrr)rrrrr
_setNamespace3sz.getETreeBuilder.<locals>.Element._setNamespacecSs|jS)N)r)rrrr
_getNamespace7sz.getETreeBuilder.<locals>.Element._getNamespacecSs|jjS)N)rattrib)rrrr_getAttributes<sz/getETreeBuilder.<locals>.Element._getAttributescSspx"t|jjjD]}|jj|=qWxF|jD]:\}}t|trVd|d|df}n|}|jj||q.WdS)Nz{%s}%srr)listrr"keysitems
isinstancetupleset)r
attributeskeyvaluerrrr_setAttributes?s
z/getETreeBuilder.<locals>.Element._setAttributescSs|jS)N)r)rrrr_getChildNodesMsz/getETreeBuilder.<locals>.Element._getChildNodescSs.|jdd=g|_x|D]}|j|qWdS)N)rrZinsertChild)rr,elementrrr_setChildNodesPs
z/getETreeBuilder.<locals>.Element._setChildNodescSst|jjpt|jS)z,Return true if the node has children or text)boolrtextlen)rrrr
hasContentXsz+getETreeBuilder.<locals>.Element.hasContentcSs$|jj||jj|j||_dS)N)rappendrr)rnoderrrappendChild\sz,getETreeBuilder.<locals>.Element.appendChildcSs,t|jj|j}|jj||j||_dS)N)r$rindexinsertr)rr6ZrefNoder8rrrinsertBeforeasz-getETreeBuilder.<locals>.Element.insertBeforecSs$|jj||jj|jd|_dS)N)rremoverr)rr6rrrremoveChildfsz,getETreeBuilder.<locals>.Element.removeChildcSst|js,|jjsd|j_|jj|7_n|dkrb|jdjsLd|jd_|jdj|7_nxt|j}|j|j}|dkr|j|djsd|j|d_|j|dj|7_n |jjsd|j_|jj|7_dS)Nrrr>r>)r3rr2tailr$r8)rdatar:Zchildrenr8rrr
insertTextks"

z+getETreeBuilder.<locals>.Element.insertTextcSs8t||j|j}x |jjD]\}}||j|<qW|S)N)typerrr*r&)rr/rr,rrr	cloneNodesz*getETreeBuilder.<locals>.Element.cloneNodecSsl|jr"|jdjj|jj7_n0|jjs2d|j_|jjdk	rR|jj|jj7_d|j_tjj||dS)Nrr=r>)
childNodesrr?r2rNodereparentChildren)rZ	newParentrrrrFsz1getETreeBuilder.<locals>.Element.reparentChildren)N)N)__name__
__module____qualname__rrrrpropertyrr r!rr#r-r*r.r0rDr4r7r:r<rArCrFr)rrrrs*





rcs2eZdZfddZddZddZeeeZdS)z getETreeBuilder.<locals>.Commentcs"j||_d|_g|_g|_dS)N)Commentrrrr)rr@)rrrrsz)getETreeBuilder.<locals>.Comment.__init__cSs|jjS)N)rr2)rrrr_getDatasz)getETreeBuilder.<locals>.Comment._getDatacSs||j_dS)N)rr2)rr,rrr_setDatasz)getETreeBuilder.<locals>.Comment._setDataN)rGrHrIrrLrMrJr@r)rrrrKsrKcsLeZdZfddZddZddZeeeZddZd	d
Z	eee	Z
dS)z%getETreeBuilder.<locals>.DocumentTypecs$j|d||j_||_||_dS)Nz
<!DOCTYPE>)rrr2publicIdsystemId)rrrNrO)rrrrsz.getETreeBuilder.<locals>.DocumentType.__init__cSs|jjddS)NrNr=)rget)rrrr_getPublicIdsz2getETreeBuilder.<locals>.DocumentType._getPublicIdcSs|dk	r|jjd|dS)NrN)rr))rr,rrr_setPublicIdsz2getETreeBuilder.<locals>.DocumentType._setPublicIdcSs|jjddS)NrOr=)rrP)rrrr_getSystemIdsz2getETreeBuilder.<locals>.DocumentType._getSystemIdcSs|dk	r|jjd|dS)NrO)rr))rr,rrr_setSystemIdsz2getETreeBuilder.<locals>.DocumentType._setSystemIdN)rGrHrIrrQrRrJrNrSrTrOr)rrrDocumentTypes
rUcseZdZfddZdS)z!getETreeBuilder.<locals>.Documentcsj|ddS)N
DOCUMENT_ROOT)r)r)rrrrsz*getETreeBuilder.<locals>.Document.__init__N)rGrHrIrr)rrrDocumentsrWcseZdZfddZdS)z)getETreeBuilder.<locals>.DocumentFragmentcsj|ddS)NZDOCUMENT_FRAGMENT)r)r)rrrrsz2getETreeBuilder.<locals>.DocumentFragment.__init__N)rGrHrIrr)rrrDocumentFragmentsrXcs*gdfdd	|ddjS)Nrcst|ds|j}|jdkrz|jds0|jdrd|jdp<d}|jdpJd}jd|j||fnjd|jfn|jdkrjd	|jdk	rjd
d|d|jf|jdk	rtd
t|drt|j	rtdnp|jkrjdd||jfnHt
|jts4tdt
|j|jftj|j}|dkrR|j}n"|j\}}tj|}d||f}jdd||ft|dr2g}xb|j	jD]T\}}	tj|}|dk	r|j\}}tj|}d||f}
n|}
|j|
|	fqWx2t|D]&\}}	jdd|d||	fqW|jrVjd
d|d|jf|d7}x|D]}||qdW|jrjd
d|d|jfdS)Nrz
<!DOCTYPE>rNrOr=z<!DOCTYPE %s "%s" "%s">z
<!DOCTYPE %s>rVz	#documentz|%s"%s" rzDocument node cannot have tailr"z$Document node cannot have attributesz|%s<!-- %s -->zExpected unicode, got %s, %sz%s %sz|%s<%s>z
|%s%s="%s")hasattrgetrootrrPr5r2r?	TypeErrorr3r"r'rAssertionErrorrB
tag_regexpmatchgroupsr
prefixesr&sorted)r/indentrNrOZnsmatchrnsprefixr*r,Zattr_stringchild)ElementTreeCommentTypervserializeElementrrris^










"
zAgetETreeBuilder.<locals>.testSerializer.<locals>.serializeElement
)r)join)r/)rg)rhrirtestSerializers7
z'getETreeBuilder.<locals>.testSerializercs2gtjfdd|djS)z4Serialize an element and its child nodes to a stringcst|jr|j}|jdkr||jds2|jdrf|jdp>d}|jdpLd}jd|j||fnjd|jfn|jdkr|jdk	rj|j|jdk	rtdt	|d	rt
|jrtd
x|D]}|qWn|jkrjd|jfn|js$jdj|jfn2d
j
fdd|jjD}jd|j|f|jrjj|jx|D]}|qpWjd|jf|jrj|jdS)Nz
<!DOCTYPE>rNrOr=z<!DOCTYPE %s PUBLIC "%s" "%s">z
<!DOCTYPE %s>rVzDocument node cannot have tailr"z$Document node cannot have attributesz	<!--%s-->z<%s>rYcs"g|]\}}dj||fqS)z%s="%s")fromXmlName).0rr,)filterrr
<listcomp>&szOgetETreeBuilder.<locals>.tostring.<locals>.serializeElement.<locals>.<listcomp>z<%s %s>z</%s>)r'rr[rrPr5r2r?r\rZr3r"rmrkr&)r/rNrOrfattr)rrgrorhrirrris@





z;getETreeBuilder.<locals>.tostring.<locals>.serializeElementr=)r	Z
InfosetFilterrk)r/)rrg)rorhrirtostrings
-z!getETreeBuilder.<locals>.tostringcsDeZdZZZZZZZfddZ	fddZ
ddZdS)z$getETreeBuilder.<locals>.TreeBuildercs|S)Nr)rr/)rlrrrlAsz3getETreeBuilder.<locals>.TreeBuilder.testSerializercs<r|jjS|jdk	r*|jjjd|jS|jjjdSdS)Nz{%s}htmlr
)ZdocumentrZdefaultNamespacefind)r)fullTreerrgetDocumentDs
z0getETreeBuilder.<locals>.TreeBuilder.getDocumentcSstjj|jS)N)rTreeBuildergetFragmentr)rrrrrwNsz0getETreeBuilder.<locals>.TreeBuilder.getFragmentN)rGrHrIZ
documentClassZdoctypeClassZelementClassZcommentClassZ
fragmentClassimplementationrlrurwr)rKrWrXrUrElementTreeImplementationrtrlrrrv9s
rv)rKrrrErvlocals)ryrtrrrvr)
rKrWrXrUrrrgryrtrlrgetETreeBuilders~>6$r{)F)Z
__future__rrrZpip._vendor.sixrrer=rr	r
rZ_utilsrcompiler^r{ZgetETreeModulerrrr<module>s

E
Back to Directory File Manager