/usr/lib/python3/dist-packages/lxml/__pycache__
NameSizeModeActions
builder.cpython-310.pyc59080644editdlrm
cssselect.cpython-310.pyc36080644editdlrm
doctestcompare.cpython-310.pyc139370644editdlrm
ElementInclude.cpython-310.pyc37760644editdlrm
pyclasslookup.cpython-310.pyc2040644editdlrm
sax.cpython-310.pyc81700644editdlrm
usedoctest.cpython-310.pyc3940644editdlrm
_elementpath.cpython-310.pyc63300644editdlrm
__init__.cpython-310.pyc6650644editdlrm
Edit: /usr/lib/python3/dist-packages/lxml/__pycache__/sax.cpython-310.pyc (8170B)
o ;/b$@sdZddlmZddlmZddlmZddlmZm Z ddlm Z m Z Gdddej Z d d ZGd d d eZGd ddeZddZdS)a? SAX-based adapter to copy trees from/to the Python standard library. Use the `ElementTreeContentHandler` class to build an ElementTree from SAX events. Use the `ElementTreeProducer` class or the `saxify()` function to fire the SAX events of an ElementTree against a SAX ContentHandler. See https://lxml.de/sax.html )absolute_import)ContentHandler)etree) ElementTree SubElement)CommentProcessingInstructionc@seZdZdZdS)SaxErrorzGeneral SAX error. N)__name__ __module__ __qualname____doc__rr*/usr/lib/python3/dist-packages/lxml/sax.pyr sr cCs,|ddkrt|ddddSd|fS)Nr{})tuplesplit)tagrrr _getNsTags rc@seZdZdZd ddZddZeeejdZdd Zd d Z d d Z ddZ ddZ ddZ d ddZddZddZd ddZddZddZeZdS)!ElementTreeContentHandlerz/Build an lxml ElementTree from SAX events. NcCsLt|d|_g|_g|_d|_ddgi|_i|_|dur!tj }||_ dSN) r__init___root_root_siblings_element_stack _default_ns _ns_mapping _new_mappingsrElement _makeelement)self makeelementrrrr&s   z"ElementTreeContentHandler.__init__cCs t|jS)z=Contains the generated ElementTree after parsing is finished.)rrr"rrr _get_etree2s z$ElementTreeContentHandler._get_etree)doccCdSrr)r"locatorrrrsetDocumentLocator8z,ElementTreeContentHandler.setDocumentLocatorcCr'rrr$rrr startDocument;r*z'ElementTreeContentHandler.startDocumentcCr'rrr$rrr endDocument>r*z%ElementTreeContentHandler.endDocumentcCsT||j|<z |j||Wnty|g|j|<Ynw|dur(||_dSdSr)rrappendKeyErrorr)r"prefixurirrrstartPrefixMappingAs   z,ElementTreeContentHandler.startPrefixMappingcCs,|j|}||dur|d|_dSdSN)rpopr)r"r/ ns_uri_listrrrendPrefixMappingJs z*ElementTreeContentHandler.endPrefixMappingcCs8|\}}|r d|}|S|jrd|j|f}|S|}|S)N{%s}%s)r)r" ns_name_tuplens_uri local_nameel_tagrrr _buildTagPsz#ElementTreeContentHandler._buildTagc Cs||}|r6i}z|}Wn ty|}Ynw|D]\}}|dr,d|} n|d} ||| <qnd}|j} |jdure||||j} |_|jr^t | dr^|jD]} | | qV|jdd=n t | d|||j} | | |j dS)Nrr7r addpreviousr3)r< iteritemsAttributeErroritemsrrr!rrhasattrr=rr-clear) r"ns_nameqname attributesel_nameattrsiter_attributes name_tuplevalue attr_name element_stackelementsiblingrrrstartElementNSZs8            z(ElementTreeContentHandler.startElementNScCs8t||}|jdur|j|dS|jd|dSr2)rrrr-r)r"targetdatapirrrprocessingInstruction{s  z/ElementTreeContentHandler.processingInstructioncCs.|j}||}||jkrtd|dS)NzUnexpected element closed: )rr4r<rr )r"rCrDrMr;rrr endElementNSs    z&ElementTreeContentHandler.endElementNScCs0|r tdd|D}|d|f||dS)NcSsg|] \}}d|f|fqSrr).0kvrrr sz:ElementTreeContentHandler.startElement..)dictr@rO)r"namerErrr startElements z&ElementTreeContentHandler.startElementcCs|d|f|dSr)rT)r"rZrrr endElementsz$ElementTreeContentHandler.endElementcCsN|jd}z|d}|jpd||_WdSty&|jpd||_YdSw)Nr3)rtail IndexErrortext)r"rQ last_elementrrr characterss  z$ElementTreeContentHandler.charactersr)r r r r rr%propertyrr)r+r,r1r6r<rOrSrTr[r\rbignorableWhitespacerrrrr#s$    !  rc@s0eZdZdZddZddZddZdd Zd S) ElementTreeProducerz5Produces SAX events for an element and children. cCsRz|}Wn ty|}Ynw||_||_ddlm}||_|ii|_dS)Nr)AttributesNSImpl)getrootr?_element_content_handlerxml.sax.xmlreaderrf _attr_class_empty_attributes)r"element_or_treecontent_handlerrM attr_classrrrrs   zElementTreeProducer.__init__cCs|j|j}t|dr.rr:)ryr@lenmin)r"r9r:rxrvrwr/ candidatesrrrrzs   z ElementTreeProducer._build_qnameN)r r r r rrursrzrrrrres   6recCst||S)zlOne-shot helper to generate SAX events from an XML tree and fire them against a SAX ContentHandler. )reru)rmrnrrrrusruN)r __future__rxml.sax.handlerrlxmlr lxml.etreerrrr LxmlErrorr rrobjectrerurrrrs  | s