ó ÕöePc@s{dZddlmZmZddlmZmZdefd„ƒYZdefd„ƒYZ dej fd „ƒYZ d S( sù 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. iÿÿÿÿ(t_basetetree(thtmlRt DocumentTypecBseZd„ZRS(cCs||_||_||_dS(N(tnametpublicIdtsystemId(tselfRRR((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt__init__s  (t__name__t __module__R(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyRstDocumentcBseZd„Zd„ZRS(cCsd|_g|_dS(N(tNonet _elementTreet childNodes(R((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyRs cCs|jjƒj|jƒdS(N(R tgetroottaddnextt_element(Rtelement((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt appendChilds(R R RR(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR s t TreeBuildercBsheZeZeZdZdZeZ d„Z d„Z d„Z d„Z d„Zdd„Zd„ZRS(cOs\tjtdtƒ}tjtdtƒ}|j|_|j|_t j j |||ŽdS(NtfullTree( tetree_builderstgetETreeModuleRtFalseRtElementt elementClasstCommentt commentClassRRR(Rtargstkwargst html_buildert etree_builder((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR's   cCs/tjj|ƒt|_g|_d|_dS(N(RRtresetRt rootInsertedtinitialCommentsR tdoctype(R((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR!.s  cCs |jjS(N(tdocumentR (R((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt getDocument4scCseg}|jdj}|jr2|j|jƒn|j|jƒƒ|jra|j|jƒn|S(Ni(t openElementsRttexttappendtextendt getchildrenttail(RtfragmentR((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt getFragment7s  cCs"|j|||ƒ}||_dS(N(t doctypeClassR$(RRRRR$((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt insertDoctypeAscCs6|js|jj|ƒntjj|||ƒdS(N(R"R#R)RRt insertComment(Rtdatatparent((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR1Es cCsDg}|jrŒ|jjrŒ|jd|jjƒ|jjdk sV|jjdk r||jd|jj|jjfƒn|jdƒn|jdƒtjdj|ƒƒ}x'|j D]}|j t j |ƒƒq»W|j ƒ|_|jƒ|j_|j|ƒ}||_|jjj|ƒ|jj|ƒt|_dS(Ns s t(R$RR)RR RRt fromstringtjoinR#t addpreviousRRt documentClassR%t getroottreeR RRRR'tTrueR"(RRtbuftroottcommentt root_element((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt insertRootKs$$  N(R R R R9RR/R RRt fragmentClassRR!R&R.R0R1R@(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyR s     N( t__doc__thtml5lib.treebuildersRRRtlxmlRtobjectRR R(((s=/usr/lib64/python2.7/site-packages/lxml/html/_html5builder.pyt s