o
    ™Mf  ã                   @   sh   d 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Z
dZd	Zd
ZG dd„ deƒZdd„ ZdS )a  
    pygments.sphinxext
    ~~~~~~~~~~~~~~~~~~

    Sphinx extension to generate automatic documentation of lexers,
    formatters and filters.

    :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Únodes)ÚViewList)Ú	Directive)Únested_parse_with_titlesz
.. module:: %s

%s
%s
zX
.. class:: %s

    :Short names: %s
    :Filenames:   %s
    :MIME types:  %s

    %s

zA
.. class:: %s

    :Short names: %s
    :Filenames: %s

    %s

z'
.. class:: %s

    :Name: %s

    %s

c                   @   sD   e Zd ZdZdZdZdZdZi Zdd„ Z	dd„ Z
d	d
„ Zdd„ ZdS )ÚPygmentsDoczn
    A directive to collect all lexers/formatters/filters and generate
    autoclass directives for them.
    Fé   r   c                 C   s¤   t ƒ | _| jd dkr|  ¡ }n| jd dkr|  ¡ }n| jd dkr(|  ¡ }ntdƒ‚t ¡ }t	| 
d¡dd}t| j||ƒ | jD ]}| jjjj |¡ qC|jS )	Nr   ÚlexersÚ
formattersÚfiltersz,invalid argument for "pygmentsdoc" directiveÚ
Ú )Úsource)ÚsetÚ	filenamesÚ	argumentsÚdocument_lexersÚdocument_formattersÚdocument_filtersÚ	Exceptionr   Úcompoundr   Úsplitr   ÚstateÚdocumentÚsettingsÚrecord_dependenciesÚaddÚchildren)ÚselfÚoutÚnodeÚvlÚfn© r"   ú`/var/www/html/analyze/labelStudio/lib/python3.10/site-packages/pip/_vendor/pygments/sphinxext.pyÚrunE   s   



zPygmentsDoc.runc              
   C   s¢  ddl m} g }i }i }t| ¡ dd„ dD ]r\}}|d }t|d d |gƒ}| j |j¡ t||ƒ}	|	j	s;t
d| ƒ |	j	}
t|
tƒrH|
 d¡}
| |g ¡ |d |d	 ¡pWd
d |d ¡ dd¡ dd¡pgd
d |d ¡pod
|
f¡ ||vrˆ|j	}t|tƒr„| d¡}|||< qt| ¡ dd„ dD ]8\}}|| d u r¤td|f ƒ‚||  ¡ d  ¡  d¡}| t||dt|ƒ f ¡ |D ]	}| t| ¡ qÁq“d |¡S )Nr   )ÚLEXERSc                 S   ó   | d S ©Nr   r"   ©Úxr"   r"   r#   Ú<lambda>[   ó    z-PygmentsDoc.document_lexers.<locals>.<lambda>©Úkeyz&Warning: %s does not have a docstring.Úutf8ú, é   ÚNoneé   Ú*ú\*Ú_ú\é   c                 S   r&   r'   r"   r(   r"   r"   r#   r*   q   r+   zMissing docstring for %sÚ.ú-r   )Ú$pip._vendor.pygments.lexers._mappingr%   ÚsortedÚitemsÚ
__import__r   r   Ú__file__ÚgetattrÚ__doc__ÚprintÚ
isinstanceÚbytesÚdecodeÚ
setdefaultÚappendÚjoinÚreplacer   Ú
splitlinesÚstripÚrstripÚ	MODULEDOCÚlenÚLEXERDOC)r   r%   r   ÚmodulesÚmoduledocstringsÚ	classnameÚdataÚmoduleÚmodÚclsÚ	docstringÚmoddocr   Úheadingr"   r"   r#   r   V   sH   


 û

€ÿ
zPygmentsDoc.document_lexersc           
   
   C   sÂ   ddl m} g }t| ¡ dd„ dD ]I\}}|d }t|d d |gƒ}| j |j¡ t||ƒ}|j	}t
|tƒr;| d¡}|j}	| t|	d |d ¡pJd	d |d
 ¡ dd¡pVd	|f ¡ qd |¡S )Nr   )Ú
FORMATTERSc                 S   r&   r'   r"   r(   r"   r"   r#   r*      r+   z1PygmentsDoc.document_formatters.<locals>.<lambda>r,   r.   r/   r0   r1   r2   r3   r4   r   )Úpip._vendor.pygments.formattersrY   r;   r<   r=   r   r   r>   r?   r@   rB   rC   rD   Ú__name__rF   ÚFMTERDOCrG   rH   )
r   rY   r   rQ   rR   rS   rT   rU   rV   rX   r"   r"   r#   r   {   s    



þ
zPygmentsDoc.document_formattersc                 C   sr   ddl m} g }| ¡ D ]'\}}| j tj|j j¡ |j	}t
|tƒr(| d¡}| t|j||f ¡ qd |¡S )Nr   )ÚFILTERSr.   r   )Úpip._vendor.pygments.filtersr]   r<   r   r   ÚsysrO   Ú
__module__r>   r@   rB   rC   rD   rF   Ú	FILTERDOCr[   rG   )r   r]   r   ÚnamerU   rV   r"   r"   r#   r      s   


zPygmentsDoc.document_filtersN)r[   r`   Ú__qualname__r@   Úhas_contentÚrequired_argumentsÚoptional_argumentsÚfinal_argument_whitespaceÚoption_specr$   r   r   r   r"   r"   r"   r#   r   :   s    %r   c                 C   s   |   dt¡ d S )NÚpygmentsdoc)Úadd_directiver   )Úappr"   r"   r#   Úsetupš   s   rl   )r@   r_   Údocutilsr   Údocutils.statemachiner   Údocutils.parsers.rstr   Úsphinx.util.nodesr   rL   rN   r\   ra   r   rl   r"   r"   r"   r#   Ú<module>   s    

`