add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
U

�AT^s0c@s�dZddlZddlZddlZddlmZdddgZGdd�d�ZGd	d�d�Z	d
d�Z
Gdd�de�ZGd
d�de�Z
Gdd�d�Z[Gdd�d�ZGdd�d�ZdS)z4Implementation of the DOM Level 3 'LS-Load' feature.�N)�
NodeFilter�
DOMBuilder�DOMEntityResolver�DOMInputSourcec@s\eZdZdZdZdZdZdZdZdZ	dZ
dZdZdZ
dZdZdZdZdZdZdZdZdZdS)�Optionsz�Features object that has variables set for each DOMBuilder feature.

    The DOMBuilder class uses an instance of this class to pass settings to
    the ExpatBuilder class.
    �TFN)�__name__�
__module__�__qualname__�__doc__�
namespaces�namespace_declarations�
validation�external_parameter_entities�external_general_entitiesZexternal_dtd_subset�validate_if_schemaZvalidate�datatype_normalization�create_entity_ref_nodes�entities�whitespace_in_element_content�cdata_sections�comments�charset_overrides_xml_encoding�infoset�supported_mediatypes_only�errorHandler�filter�rr�*/usr/lib64/python3.8/xml/dom/xmlbuilder.pyr
s(	rc@s&eZdZdZdZdZdZdZdZdZ	eeee	fZ
dd�Zdd	�Zd
d�Z
dd
�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdgdgdgdgdgdgd gd!gd"gd#gd"d$gd%gd&gd'gd(gd)gd*gd+gd,gd-ggdd!d"d$d(d.d'd+d-g	d/gd0gd1gd2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�ZdS)=rNr���cCst�|_dS�N)r�_options��selfrrr�__init__:�zDOMBuilder.__init__cC�|jSr!��entityResolverr#rrr�_get_entityResolver=r&zDOMBuilder._get_entityResolvercC�
||_dSr!r()r$r)rrr�_set_entityResolver?r&zDOMBuilder._set_entityResolvercCr'r!�rr#rrr�_get_errorHandlerBr&zDOMBuilder._get_errorHandlercCr+r!r-)r$rrrr�_set_errorHandlerDr&zDOMBuilder._set_errorHandlercCr'r!�rr#rrr�_get_filterGr&zDOMBuilder._get_filtercCr+r!r0)r$rrrr�_set_filterIr&zDOMBuilder._set_filtercCs�|�|�rt|rdpd}z|jt|�|f}Wn(tk
rTtj�d|f�d�Yq�X|D]\}}t|j||�qZntj�	dt
|���dS)Nrrzunsupported feature: %rzunknown feature: )�supportsFeature�	_settings�_name_xformZKeyError�xml�dom�NotSupportedErrZsetattrr"�NotFoundErr�repr)r$�name�stateZsettingsZvaluerrr�
setFeatureLs
��zDOMBuilder.setFeaturecCst|jt|��Sr!)Zhasattrr"r5)r$r;rrrr3Zr&zDOMBuilder.supportsFeaturecCst|�|rdpdf}||jkS)Nrr)r5r4)r$r;r<Zkeyrrr�
canSetFeature]szDOMBuilder.canSetFeature�rr�rr�r
r�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr�rr)rr�rr�rr�rr)r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrR)rr)rrrSrTrUcCs�t|�}zt|j|�WStk
r�|dkrp|j}|joj|joj|joj|joj|jph|j	ph|j
ph|jph|jYSt
j�dt|���YnXdS)Nrzfeature %s not known)r5Zgetattrr"�AttributeErrorrrrrrrrrrr6r7r9r:)r$r;Zxname�optionsrrr�
getFeature�s0��������	zDOMBuilder.getFeaturecCs.|jr|j�d|�}nt��d|�}|�|�Sr!)r)�
resolveEntityr�parse)r$�uri�inputrrr�parseURI�szDOMBuilder.parseURIcCsRt�|j�}|j|_|j|_|j}|dkrF|jrFddl}|j�|j�}|�	||�S�Nr)
�copyr"rr�
byteStream�systemId�urllib.request�requestZurlopen�_parse_bytestream)r$r\rWZfp�urllibrrrrZ�szDOMBuilder.parsecCs||jkrtd��td��dS)Nznot a legal actionzHaven't written this yet...)�_legal_actions�
ValueError�NotImplementedError)r$r\ZcnodeZactionrrr�parseWithContext�s
zDOMBuilder.parseWithContextcCs ddl}|jj�|�}|�|�Sr^)Zxml.dom.expatbuilderr7ZexpatbuilderZmakeBuilderZ	parseFile)r$ZstreamrWr6Zbuilderrrrrd�szDOMBuilder._parse_bytestream)rrr	r)rrZACTION_REPLACEZACTION_APPEND_AS_CHILDRENZACTION_INSERT_AFTERZACTION_INSERT_BEFORErfr%r*r,r.r/r1r2r=r3r>r4rXr]rZrirdrrrrr-s���������������������������=
cCs|���dd�S)Nz-Z_)�lowerZreplace)r;rrrr5�r&r5c@s0eZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)r)�_openerc
Cs�|dk	st�t�}||_||_|���|�|_|�|�|_ddl	}ddl
}|j�|�}|\}}}	}
}}|	r�|	�
d�s�|�|	�d}	|||	|
||f}|j�|�|_|S)Nrz/)ZAssertionErrorr�publicIdra�_get_openerZopenr`�_guess_media_encoding�encoding�	posixpathZurllib.parserZZurlparseZendswithZdirnameZ
urlunparse�baseURI)
r$rlra�sourcerpreZpartsZschemeZnetlocZpathZparamsZqueryZfragmentrrrrY�szDOMEntityResolver.resolveEntitycCs2z|jWStk
r,|��|_|jYSXdSr!)rkrV�_create_openerr#rrrrm�s

zDOMEntityResolver._get_openercCsddl}|j��Sr^)rbrcZbuild_opener)r$rerrrrs�sz DOMEntityResolver._create_openercCsF|j��}d|krB|��D]&}|�d�r|�dd�d��SqdS)NzContent-Typezcharset=z=r)r`�infoZgetplistZ
startswithZsplitrj)r$rrrtZparamrrrrn�s


z'DOMEntityResolver._guess_media_encodingN)rrr	�	__slots__rYrmrsrnrrrrr�s
c@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zd S)!r�r`�characterStream�
stringDatarorlrarqcCs.d|_d|_d|_d|_d|_d|_d|_dSr!rvr#rrrr%szDOMInputSource.__init__cCr'r!�r`r#rrr�_get_byteStreamr&zDOMInputSource._get_byteStreamcCr+r!ry)r$r`rrr�_set_byteStreamr&zDOMInputSource._set_byteStreamcCr'r!�rwr#rrr�_get_characterStreamr&z#DOMInputSource._get_characterStreamcCr+r!r|)r$rwrrr�_set_characterStreamr&z#DOMInputSource._set_characterStreamcCr'r!�rxr#rrr�_get_stringDatar&zDOMInputSource._get_stringDatacCr+r!r)r$Zdatarrr�_set_stringDatar&zDOMInputSource._set_stringDatacCr'r!�ror#rrr�
_get_encodingr&zDOMInputSource._get_encodingcCr+r!r�)r$rorrr�
_set_encodingr&zDOMInputSource._set_encodingcCr'r!�rlr#rrr�
_get_publicId"r&zDOMInputSource._get_publicIdcCr+r!r�)r$rlrrr�
_set_publicId$r&zDOMInputSource._set_publicIdcCr'r!�rar#rrr�
_get_systemId'r&zDOMInputSource._get_systemIdcCr+r!r�)r$rarrr�
_set_systemId)r&zDOMInputSource._set_systemIdcCr'r!�rqr#rrr�_get_baseURI,r&zDOMInputSource._get_baseURIcCr+r!r��r$r[rrr�_set_baseURI.r&zDOMInputSource._set_baseURIN)rrr	rur%rzr{r}r~r�r�r�r�r�r�r�r�r�r�rrrrrs 	c@s>eZdZdZdZdZdZdZej	Z
dd�Zdd	�Zd
d�Z
dS)
�DOMBuilderFilterzSElement filter which can be used to tailor construction of
    a DOM instance.
    rrrr cCr'r!)�
whatToShowr#rrr�_get_whatToShowCr&z DOMBuilderFilter._get_whatToShowcCr'r!��
FILTER_ACCEPT�r$Zelementrrr�
acceptNodeFr&zDOMBuilderFilter.acceptNodecCr'r!r�r�rrr�startContainerIr&zDOMBuilderFilter.startContainerN)rrr	r
r�Z
FILTER_REJECTZFILTER_SKIPZFILTER_INTERRUPTrZSHOW_ALLr�r�r�r�rrrrr�2s	r�c@sDeZdZdZdZdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dS)�
DocumentLSz=Mixin to create documents that conform to the load/save spec.FcCsdS)NFrr#rrr�
_get_asyncTr&zDocumentLS._get_asynccCs|rtj�d��dS)Nz.asynchronous document loading is not supported)r6r7r8)r$Zflagrrr�
_set_asyncWs�zDocumentLS._set_asynccC�td��dS)Nz'haven't figured out what this means yet�rhr#rrr�abort\s�zDocumentLS.abortcCr��Nzhaven't written this yetr�r�rrr�loadbr&zDocumentLS.loadcCr�r�r�)r$rrrrr�loadXMLer&zDocumentLS.loadXMLcCs*|dkr|}n|j|k	r"tj���|��Sr!)Z
ownerDocumentr6r7ZWrongDocumentErrZtoxml)r$Zsnoderrr�saveXMLhs


zDocumentLS.saveXMLN)rrr	r
Zasync_r�r�r�r�r�r�rrrrr�Osr�c@s,eZdZdZdZdd�Zdd�Zdd�Zd	S)
�DOMImplementationLSrrcCsF|dk	rtj�d��||jkr$t�S||jkr:tj�d��td��dS)NzschemaType not yet supportedz'asynchronous builders are not supportedzunknown value for mode)r6r7r8�MODE_SYNCHRONOUSr�MODE_ASYNCHRONOUSrg)r$ZmodeZ
schemaTyperrr�createDOMBuilderts�

�z$DOMImplementationLS.createDOMBuildercCr�)Nz-the writer interface hasn't been written yet!r�r#rrr�createDOMWriters�z#DOMImplementationLS.createDOMWritercCst�Sr!)rr#rrr�createDOMInputSource�r&z(DOMImplementationLS.createDOMInputSourceN)rrr	r�r�r�r�r�rrrrr�ps
r�)r
r_ZwarningsZxml.domr6Zxml.dom.NodeFilterrZ__all__rrr5Zobjectrrr�r�r�rrrrZ<module>s
 %,1!