
    ~Ti6                       d Z ddlmZ ddlZddlmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ er*ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z   ejB                  e"      Z# ejH                  ded        G d de	jJ                        Z& G d de&      Z' G d de      Z(d dZ) G d de      Z*y)!zInput/Output files    )annotationsN)TYPE_CHECKING)	FileInput)
standalone)DanglingReferences)UnfilteredWriter)RemovedInSphinx10Warning)SphinxTransformer)logging)LoggingReporter)Any)nodes)Input)Parser)	Transform)BuildEnvironment)_DocutilsSettingszsphinx.io is deprecated   
stacklevelc                  L     e Zd ZU dZd fdZg Zded<   d fdZd	 fdZ xZ	S )
SphinxBaseReaderzhA base class of readers for Sphinx.

    This replaces reporter by Sphinx's on generating document.
    c                \    t        |   |i | t        j                  dt        d       y )Nz(sphinx.io.SphinxBaseReader is deprecatedr   r   super__init__warningswarnr	   selfargskwargs	__class__s      </home/agent/.local/lib/python3.12/site-packages/sphinx/io.pyr   zSphinxBaseReader.__init__)   s*    $)&)6$	
    list[type[Transform]]
transformsc                    t         |          | j                  z   }t        g}|D ]  }||v s|j	                  |        |S N)r   get_transformsr'   r   remove)r    r'   unused	transformr#   s       r$   r*   zSphinxBaseReader.get_transforms3   sP    W+-?
 %% 	-IJ&!!),	- r%   c                    t         |          }t        |      |_        |j                  j	                  | j
                  j                         |j                  }t        j                  |      |_        |S )zdCreates a new document object which has a special reporter object good
        for logging.
        )
r   new_documentr
   transformerset_environmentsettingsenvreporterr   from_reporter)r    documentr4   r#   s      r$   r/   zSphinxBaseReader.new_document>   sd     7')  1:,,T]]->->? $$+99(Cr%   r!   r   r"   r   returnNone)r8   r&   )r8   nodes.document)
__name__
__module____qualname____doc__r   r'   __annotations__r*   r/   __classcell__r#   s   @r$   r   r   #   s)    

 )+J%*	 r%   r   c                  L     e Zd ZdZd fdZddZ	 	 	 	 	 	 	 	 ddZd	dZ xZS )
SphinxStandaloneReaderz#A basic document reader for Sphinx.c                \    t        |   |i | t        j                  dt        d       y )Nz.sphinx.io.SphinxStandaloneReader is deprecatedr   r   r   r   s      r$   r   zSphinxStandaloneReader.__init__R   s*    $)&)<$	
r%   c               ,    | j                   |z   | _         y r)   )r'   )r    r'   s     r$   _setup_transformsz(SphinxStandaloneReader._setup_transformsZ   s    //J6r%   c                    || _         | j                  s|| _        || _        | j                  |j                        | _        | j                          | j                  J | j                  S r)   )sourceparserr2   read_sourcer3   inputparser6   )r    rH   rI   r2   s       r$   readzSphinxStandaloneReader.read]   sY     {{ DK %%hll3


}}(((}}r%   c                    | j                   J | j                   j                         }|g}|j                  j                  d|j                  j
                  |       |d   S )z-Read content from source and do post-process.zsource-readr   )rH   rM   eventsemitcurrent_documentdocname)r    r3   contentargs       r$   rJ   z"SphinxStandaloneReader.read_sourcel   sV    {{&&&++""$ i

s';';'C'CSI1vr%   r7   )r'   r&   r8   r9   )rH   r   rI   r   r2   r   r8   r:   )r3   r   r8   str)	r;   r<   r=   r>   r   rF   rM   rJ   r@   rA   s   @r$   rC   rC   O   s@    -
7  $	
 
r%   rC   c                  0     e Zd ZdZd fdZdZddZ xZS )SphinxDummyWriterz0Dummy writer module used for generating doctree.c                Z    t         |           t        j                  dt        d       y )Nz)sphinx.io.SphinxDummyWriter is deprecatedr   r   r   )r    r#   s    r$   r   zSphinxDummyWriter.__init__z   s#    7$	
r%   )htmlc                     y r)    )r    s    r$   	translatezSphinxDummyWriter.translate   s    r%   )r8   r9   )r;   r<   r=   r>   r   	supportedr\   r@   rA   s   @r$   rW   rW   w   s    :
 Ir%   rW   c                >    t        j                  dt        d       | S )z.Bypass source object as is to cheat Publisher.z.sphinx.io.SphinxDummySourceClass is deprecatedr   r   )r   r   r	   )rH   r!   r"   s      r$   SphinxDummySourceClassr_      s    MM8 
 Mr%   c                  $     e Zd ZdZd fdZ xZS )SphinxFileInputzA basic FileInput for Sphinx.c                f    d|d<   t        |   |i | t        j                  dt        d       y )Nsphinxerror_handlerz'sphinx.io.SphinxFileInput is deprecatedr   r   r   r   s      r$   r   zSphinxFileInput.__init__   s4    "*$)&)5$	
r%   r7   )r;   r<   r=   r>   r   r@   rA   s   @r$   ra   ra      s    '
 
r%   ra   )rH   r   r!   r   r"   r   r8   r   )+r>   
__future__r   r   typingr   docutils.ior   docutils.readersr   docutils.transforms.referencesr   docutils.writersr   sphinx.deprecationr	   sphinx.transformsr
   sphinx.utilr   sphinx.util.docutilsr   r   docutilsr   r   docutils.parsersr   docutils.transformsr   sphinx.environmentr   r   	getLoggerr;   loggerr   Readerr   rC   rW   r_   ra   r[   r%   r$   <module>rv      s     "    ! ' = - 7 /  0!'-36 
		8	$ ')Aa P)z(( )X%- %P( "

i 

r%   