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: //lib/python3/dist-packages/sphinx/util/__pycache__/rst.cpython-310.pyc
o

�$�aj
�
@s�UdZddlZddlmZddlmZddlmZmZddl	m
Z
ddlmZddl
mZdd	lmZdd
lmZddlmZddlmZdd
lmZmZzddlmZWneydddlmZYnwe�e �Z!e�"d�Z#e�"d�Z$gd�Z%edd��Z&ee'e'fe(d<de&d<de'de'fdd�Z)d1de'de'de*fdd�Z+ed2d!ede'd"e*de'fd#d$��Z,ed%e'd&e'ded'fd(d)��Z-d*ed+e'ddfd,d-�Z.d*ed.e'ddfd/d0�Z/dS)3z�
    sphinx.util.rst
    ~~~~~~~~~~~~~~~

    reST helper functions.

    :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�defaultdict)�contextmanager)�Dict�	Generator��east_asian_width)�roles)�en)�
StringList)�Reporter)�Environment)�__)�docutils�logging)�pass_environment)�environmentfilterz:\w+:.*?z([!-\-/:-@\[-`{-~]))�=�-�~cCsdS)N�WF�rrr�1/usr/lib/python3/dist-packages/sphinx/util/rst.py�<lambda>'sr�	WIDECHARS�WFA�ja�text�returncCst�d|�}t�dd|�}|S)Nz\\\1z^\.z\.)�
symbols_re�sub�re)rrrr�escape+sr!r�	widecharscs.dtdtdtfdd��t��fdd�|D��S)zGet width of text.�charr"rcSst|�|vrdSdS)N��r)r#r"rrr�	charwidth3sztextwidth.<locals>.charwidthc3s�|]}�|��VqdS)Nr)�.0�c�r&r"rr�	<genexpr>9s�ztextwidth.<locals>.<genexpr>)�str�int�sum)rr"rr)r�	textwidth1sr.r%�env�levelcCs8|dksJ�t|t|j�}t|d}d|||fS)zCreate a heading for *level*.�r%z%s
%s)r.r�language�SECTIONING_CHARS)r/rr0�width�sectioning_charrrr�heading<sr6�docname�name)NNNccs`�|r&tddd�}t�|td|�\}}|rt�d|�n
tjtd�||d�dVt�	d�dS)N��rzdefault role %s not found)�location)
rr�role�englishr�
register_role�logger�warningr
�unregister_role)r7r8�dummy_reporter�role_fn�_rrr�default_roleEs�rE�content�prologcCs�|rFd}|D]}t�|�r|d7}q|dkr#|�|ddd�|d7}t|���D]\}}|�|||d|�q)|�||dddd�dSdS)z+Prepend a string to content body as prolog.rr%r9�<generated>z<rst_prolog>N)�
docinfo_re�match�insert�	enumerate�
splitlines)rFrG�pos�line�linenorrr�prepend_prologTs

�rQ�epilogcCsf|r/dt|�kr|�d�\}}nd}d}|�d||d�t|���D]
\}}|�|d|�q#dSdS)z*Append a string to content body as epilog.r���rHr9r%z<rst_epilog>N)�len�info�appendrLrM)rFrR�sourcerPrOrrr�
append_epilogjs�rX)r)r%)0�__doc__r �collectionsr�
contextlibr�typingrr�unicodedatar�docutils.parsers.rstr�docutils.parsers.rst.languagesr	r=�docutils.statemachiner
�docutils.utilsr�jinja2r�
sphinx.localer
�sphinx.utilrr�jinja2.utilsr�ImportErrorr�	getLogger�__name__r?�compilerIrr3rr+�__annotations__r!r,r.r6rErQrXrrrr�<module>s@
�