Viewing File: /opt/alt/python35/lib64/python3.5/xml/dom/__pycache__/pulldom.cpython-35.opt-2.pyc



]-@sddlZddlZdZdZdZdZdZdZdZ	d	Z
Gd
ddejjZ
Gdd
d
ZGdddZGddde
ZdZddddZdddZdS)N
START_ELEMENTEND_ELEMENTCOMMENTSTART_DOCUMENTEND_DOCUMENTPROCESSING_INSTRUCTIONIGNORABLE_WHITESPACE
CHARACTERSc@seZdZdZdZdddZddZddZdd	Zd
dZ	dd
Z
ddZddZddZ
ddZddZddZddZddZddZd d!Zd"d#ZdS)$PullDOMNcCsddlm}||_ddg|_|j|_g|_|jj|_y|jj|_Wnt	k
rsYnX|dig|_
|j
d|_g|_dS)Nr)
XML_NAMESPACExml)
Zxml.domrdocumentFactory
firstEvent	lastEventelementStackappendpushpopAttributeError_ns_contexts_current_contextpending_events)selfrrr,/opt/alt/python35/lib64/python3.5/pulldom.py__init__s		
zPullDOM.__init__cCs|jd}|jd=|S)Nr
rr)r)rresultrrrr!s

zPullDOM.popcCs
||_dS)N)_locator)rZlocatorrrrsetDocumentLocator&szPullDOM.setDocumentLocatorcCsdt|dsg|_|jj|p*d|f|jj|jj|pVd|j|<dS)N_xmlns_attrsxmlns)hasattrr!rrrcopy)rprefixurirrrstartPrefixMapping)s
	zPullDOM.startPrefixMappingcCs|jj|_dS)N)rrr)rr%rrrendPrefixMapping0szPullDOM.endPrefixMappingcCs5d}t|dd}|dk	rWx'|D]\}}||j||f<q+Wg|_|\}}	|r|dkr|j|}
|
r|
d|	}n|	}|jr|jj||}q|j||}n0|jr|jj|	}n|jd|	}x|jD]\}}|\}}
||krz|
dkrK|
}n
d|
}|jj	||}|j
|nt|r|j|}
|
r|
d|
}n|
}|jj	||}|j
|n|jj|
}|j|||_
qWt|fdg|jd<|jd|_|j|dS)Nzhttp://www.w3.org/2000/xmlns/r!:r"zxmlns:r
)getattrZ_attrsr!rdocumentZcreateElementNS
buildDocument
createElementitemsZcreateAttributeNSZsetAttributeNodeNScreateAttributesetAttributeNodevaluerrr)rnametagNameattrsZ	xmlns_uriZxmlns_attrsanamer1r&Z	localnamer%nodeZa_uriZa_localnameZqnameattrrrrstartElementNS3sP	
			



zPullDOM.startElementNScCs3t|jfdg|jd<|jd|_dS)Nr
)rrr)rr2r3rrrendElementNSlszPullDOM.endElementNScCs|jr|jj|}n|jd|}xB|jD]4\}}|jj|}||_|j|q=Wt|fdg|jd<|jd|_|j	|dS)Nr
)
r+r-r,r.r/r1r0rrr)rr2r4r6r5r1r7rrrstartElementps		zPullDOM.startElementcCs3t|jfdg|jd<|jd|_dS)Nr
)rrr)rr2rrr
endElementszPullDOM.endElementcCsm|jrG|jj|}t|fdg|jd<|jd|_n"t|fdg}|jj|dS)Nr
)r+
createCommentrrrr)rsr6eventrrrcomments	zPullDOM.commentcCss|jrJ|jj||}t|fdg|jd<|jd|_n%t||fdg}|jj|dS)Nr
)r+createProcessingInstructionrrrr)rtargetdatar6r>rrrprocessingInstructions	zPullDOM.processingInstructioncCs?|jj|}t|fdg|jd<|jd|_dS)Nr
)r+createTextNoderr)rcharsr6rrrignorableWhitespaceszPullDOM.ignorableWhitespacecCs?|jj|}t|fdg|jd<|jd|_dS)Nr
)r+rDr	r)rrEr6rrr
charactersszPullDOM.characterscCs4|jdkr0ddl}|jjjj|_dS)Nr)rZxml.dom.minidomZdomZminidomZDocumentimplementation)rrrrr
startDocumentszPullDOM.startDocumentc	Cs8|jj||d}||_t|fdg|jd<|jd|_|j|x|jD]}|ddtkr|d\}}}|jj||}t|f|d<nX|ddt	kr|jj
|dd}t	|f|d<ntd|dd||jd<||_qaWd|_|jS)Nr
rzUnknown pending event )
rZcreateDocumentr+rrrrrr@rr<AssertionErrorZ
firstChild)	rr&Ztagnamer6e_rArBnrrrr,s$	


	zPullDOM.buildDocumentcCs*t|jfdg|jd<|jdS)Nr
)rr+rr)rrrrendDocumentszPullDOM.endDocumentcCs
d|_dS)N)r+)rrrrclearsz
PullDOM.clear)__name__
__module____qualname__rr+rrr r'r(r8r9r:r;r?rCrFrGrIr,rNrOrrrrr

s&9		r
c@s4eZdZddZddZddZdS)ErrorHandlercCst|dS)N)print)r	exceptionrrrwarningszErrorHandler.warningcCs
|dS)Nr)rrUrrrerrorszErrorHandler.errorcCs
|dS)Nr)rrUrrr
fatalErrorszErrorHandler.fatalErrorN)rPrQrRrVrWrXrrrrrSsrSc@seZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZdS)DOMEventStreamcCsG||_||_||_t|jds9|j|_|jdS)Nfeed)streamparserbufsizer#_slurpgetEventreset)rr[r\r]rrrrs			zDOMEventStream.__init__cCs?t|_|jjtjjjd|jj|jdS)Nr
)	r
pulldomr\Z
setFeaturersaxhandlerZfeature_namespacesZsetContentHandler)rrrrr`szDOMEventStream.resetcCs |j}|r|StdS)N)r_
IndexError)rposrcrrr__getitem__szDOMEventStream.__getitem__cCs |j}|r|StdS)N)r_
StopIteration)rrfrrr__next__szDOMEventStream.__next__cCs|S)Nr)rrrr__iter__szDOMEventStream.__iter__cCs|j}|g}x~|r|\}}||kr:dS|tkrW|dj||tkrs|j|n|tkr|d=|j}qWdS)Nr
rr)r_rappendChildrr)rr6r>parentstokenZcur_noderrr
expandNodes		zDOMEventStream.expandNodecCs|jjds"|jj|j_xP|jjdst|jj|j}|sa|jjdS|jj|q%W|jjdd}|jjdd|jjd<|S)Nr
r)	rarrr[readr]r\closerZ)rbufrfrrrr_s
zDOMEventStream.getEventcCs)|jj|j|j|_|jS)N)r\parser[_emitr_)rrrrr^szDOMEventStream._slurpcCs6|jjdd}|jjdd|jjd<|S)Nr
r)rar)rrfrrrrsszDOMEventStream._emitcCs)|jj|`d|_d|_dS)N)rarOr\r[)rrrrrOs
	zDOMEventStream.clearN)
rPrQrRrr`rgrirjrnr_r^rsrOrrrrrYs
rYc@sLeZdZddZddZddZddZd	d
ZdS)SAX2DOMcCsAtj|||||jd}|jd}|j|dS)Nr
r)r
r8rrk)rr2r3r4curNode
parentNoderrrr8#s

zSAX2DOM.startElementNScCs>tj||||jd}|jd}|j|dS)Nr
rurrv)r
r:rrk)rr2r4rwrxrrrr:)s

zSAX2DOM.startElementcCsBtj||||jdd}|jd}|j|dS)Nrr
r)r
rCrrrk)rrArBr6rxrrrrC/s
zSAX2DOM.processingInstructioncCs?tj|||jdd}|jd}|j|dS)Nrr
r)r
rFrrrk)rrEr6rxrrrrF5s
zSAX2DOM.ignorableWhitespacecCs?tj|||jdd}|jd}|j|dS)Nrr
r)r
rGrrrk)rrEr6rxrrrrG;s
zSAX2DOM.charactersN)rPrQrRr8r:rCrFrGrrrrrt!s
rtrucCs^|dkrt}t|tr3t|d}n|}|sNtjj}t|||S)Nrb)default_bufsize
isinstancestropenrrbmake_parserrY)Zstream_or_stringr\r]r[rrrrrDsrrcCsMddlm}t|}||}|s=tjj}t|||S)Nr)StringIO)iorlenrrbrrY)stringr\rr]rqrrrparseStringOsri@i?)Zxml.saxrZxml.sax.handlerrrrrrrrr	rbZContentHandlerr
rSrYrtr|rrrrrrr<module>s U!
Back to Directory File Manager