File: //usr/lib/python3/dist-packages/pygments/__pycache__/sphinxext.cpython-38.pyc
U
�[1 � @ st d Z ddlmZ ddlZddlmZ ddlmZ ddlm Z ddl
mZ dZd Z
d
ZdZG dd
� d
e �Zdd� ZdS )a
pygments.sphinxext
~~~~~~~~~~~~~~~~~~
Sphinx extension to generate automatic documentation of lexers,
formatters and filters.
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�print_functionN)�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 Zd ZdZdZdZdZdZi Zdd� Z dd� Z
d d
� Zdd� Zd
S )�PygmentsDoczn
A directive to collect all lexers/formatters/filters and generate
autoclass directives for them.
F� r c C s� t � | _| jd dkr | �� }n8| jd dkr8| �� }n | jd dkrP| �� }ntd��t�� }t |�
d�dd�}t| j||� | jD ]}| jj
jj�|� q�|jS ) Nr �lexersZ
formatters�filtersz,invalid argument for "pygmentsdoc" directive�
� )�source)�set� filenamesZ arguments�document_lexers�document_formatters�document_filters� Exceptionr Zcompoundr �splitr �stateZdocumentZsettingsZrecord_dependencies�addZchildren)�self�outZnodeZvl�fn� r �4/usr/lib/python3/dist-packages/pygments/sphinxext.py�runH s
zPygmentsDoc.runc
C s� ddl m} g }i }i }t|�� dd� d�D ]�\}}|d }t|d d |g�}| j�|j� t||�} | j svt
d| � | j }
t|
t�r�|
�
d�}
|�|g ��|d�|d �p�d
d�|d ��dd
��dd�p�d
d�|d �p�d
|
f� ||kr,|j }t|t��r
|�
d�}|||<