HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/sphinx/builders/__pycache__/xml.cpython-310.pyc
o

�$�a��@s�dZddlmZddlmZmZmZmZmZm	Z	ddl
mZddlm
Z
ddlmZddlmZddlmZdd	lmZdd
lmZddlmZddlmZmZdd
lmZmZe� e!�Z"Gdd�de�Z#Gdd�de#�Z$dedee%effdd�Z&dS)z�
    sphinx.builders.xml
    ~~~~~~~~~~~~~~~~~~~

    Docutils-native XML and pseudo-XML builders.

    :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�)�path)�Any�Dict�Iterator�Set�Type�Union)�nodes)�StringOutput)�Node)�
XMLTranslator)�Sphinx)�Builder)�__)�logging)�	ensuredir�os_path)�PseudoXMLWriter�	XMLWriterc@s�eZdZUdZdZdZed�ZdZdZ	e
Zee
e
e
efed<eZdd	d
�Zdeefdd�Zdd
ededefdd�Zdeeddfdd�Zd
ededdfdd�Zddd�ZdS)�
XMLBuilderz%
    Builds Docutils-native XML.
    �xmlz The XML files are in %(outdir)s.z.xmlT�
_writer_class�returnNcC�dS�N���selfrr�5/usr/lib/python3/dist-packages/sphinx/builders/xml.py�init+�zXMLBuilder.initc	cs��|jjD]D}||jjvr|Vqt�|j||j�}zt�|�}Wnty-d}Ynwzt�|j�	|��}||kr?|VWqt
yIYqwdS)Nr)�env�
found_docs�all_docsr�join�outdir�
out_suffix�getmtime�	Exception�doc2path�OSError)r�docname�
targetname�targetmtime�srcmtimerrr�get_outdated_docs.s(�����zXMLBuilder.get_outdated_docsr+�typcCs|Srr)rr+r0rrr�get_target_uri@r zXMLBuilder.get_target_uri�docnamescCs|�|�|_dSr)r�writer)rr2rrr�prepare_writingCszXMLBuilder.prepare_writing�doctreec
Cs@|��}|�tj�D]6}|j��D].\}}t|t�r!t|�|j|<|j|}t|t�r?t	|�D]\}}t|t�r>t|�||<q/qq
t
dd�}|j�||�t
�|jt|�|j�}	tt
�|	��z#t|	ddd��}
|
�|jj�Wd�WdS1s|wYWdSty�}zt�td�|	|�WYd}~dSd}~ww)Nzutf-8)�encoding�wzerror writing file %s: %s)�deepcopy�traverser	�Element�
attributes�items�
isinstance�tuple�list�	enumerater
r3�writerr$r%rr&r�dirname�open�outputr*�logger�warningr)rr+r5�node�att�value�i�val�destination�outfilename�f�errrrr�	write_docFs0



��
&� ��zXMLBuilder.write_doccCrrrrrrr�finish]r zXMLBuilder.finish)rNr)�__name__�
__module__�__qualname__�__doc__�name�formatr�epilogr&�allow_parallelrrrrr�__annotations__r�default_translator_classrr�strr/r1rr4rrPrQrrrrrs

rc@s(eZdZdZdZdZed�ZdZe	Z
dS)�PseudoXMLBuilderz1
    Builds pseudo-XML for display purposes.
    �	pseudoxmlz'The pseudo-XML files are in %(outdir)s.z
.pseudoxmlN)rRrSrTrUrVrWrrXr&rrrrrrr]asr]�apprcCs.|�t�|�t�|�ddd�dddd�S)N�
xml_prettyTr!�builtin)�version�parallel_read_safe�parallel_write_safe)�add_builderrr]�add_config_value)r_rrr�setupns

�rgN)'rU�osr�typingrrrrrr�docutilsr	�docutils.ior
�docutils.nodesr�docutils.writers.docutils_xmlr�sphinx.applicationr
�sphinx.buildersr�
sphinx.localer�sphinx.utilr�sphinx.util.osutilrr�sphinx.writers.xmlrr�	getLoggerrRrErr]r\rgrrrr�<module>s"
 
D