
    Ri                    b    d dl mZ d dlmZ d dlmZ erd dlmZ  G d de      Z G d d      Zy	)
    )annotations)TYPE_CHECKING)strip_escape_sequences)Protocolc                      e Zd ZddZy)SupportsWritec                    y N selftexts     G/home/agent/.friday_env/lib/python3.12/site-packages/sphinx/util/_io.pywritezSupportsWrite.write   s        N)r   strreturnz
int | None)__name__
__module____qualname__r   r   r   r   r   r   
   s    8r   r   c                  4    e Zd ZdZ	 	 	 	 	 	 ddZddZddZy)	TeeStripANSIz(File-like object writing to two streams.c                     || _         || _        y r
   )stream_termstream_file)r   r   r   s      r   __init__zTeeStripANSI.__init__   s    
 '&r   c                   | j                   j                  |       | j                  j                  t        |             y r
   )r   r   r   r   r   s     r   r   zTeeStripANSI.write   s0    t$5d;<r   c                    t        | j                  d      r| j                  j                          t        | j                  d      r| j                  j                          y y )Nflush)hasattrr   r   r   )r   s    r   r   zTeeStripANSI.flush   sK    4##W-""$4##W-""$ .r   N)r   r   r   r   r   None)r   r   r   r!   )r   r!   )r   r   r   __doc__r   r   r   r   r   r   r   r      s0    2'"' #' 
	'=%r   r   N)	
__future__r   typingr   sphinx._cli.util.errorsr   r   r   r   r   r   r   <module>r&      s*    "   :9 9% %r   