403Webshell
Server IP : 127.0.0.1  /  Your IP : 216.73.216.109
Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10
System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64
User : SERVERWEB ( 0)
PHP Version : 8.1.10
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : OFF |  Perl : OFF |  Python : OFF |  Sudo : OFF |  Pkexec : OFF
Directory :  C:/cygwin64/lib/python3.9/site-packages/sphinx/util/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : C:/cygwin64/lib/python3.9/site-packages/sphinx/util/__pycache__/docfields.cpython-39.opt-1.pyc
a

�abP@�@s�dZddlmZmZmZmZmZmZmZm	Z	ddl
mZddlm
Z
ddlmZddlmZddlmZddlmZdd	lmZdd
lmZer�ddlmZe�e�Zeje d�d
d�Z!Gdd�d�Z"Gdd�de"�Z#Gdd�de#�Z$Gdd�d�Z%dS)a8
    sphinx.util.docfields
    ~~~~~~~~~~~~~~~~~~~~~

    "Doc fields" are reST field lists in object descriptions that will
    be domain-specifically transformed to a more appealing presentation.

    :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�)�
TYPE_CHECKING�Any�Dict�List�Tuple�Type�Union�cast)�nodes)�Node)�Inliner)�addnodes)�BuildEnvironment)�__)�logging)�TextlikeNode)�ObjectDescription��node�returncCsXt|�dkrdSt|�dkr@|dd�D]}t|tj�s(dSq(t|dtj�rTdSdS)zCTrue if the node only contains one paragraph (and system messages).rF�NT)�len�
isinstancer
Zsystem_message�	paragraph)rZsubnode�r�9/usr/lib/python3.9/site-packages/sphinx/util/docfields.py�_is_single_paragraphsrc@s�eZdZdZdZdZdeeedfeeeedd�dd	�Z	e
jddddfeeeee
eeeeed
�	dd�Ze
jddddfeeeee
eeeeeed
�	d
d�Zeeeeeeefd�dd�Zdeeeefeeeeeejd�dd�ZdS)�Fielda�A doc field that is never grouped.  It can have an argument or not, the
    argument can be linked using a specified *rolename*.  Field should be used
    for doc fields that usually don't occur more than once.

    The body can be linked using a specified *bodyrolename* if the content is
    just a single inline or text node.

    Example::

       :returns: description of the return value
       :rtype: description of the return type
    FrNT.)�name�names�label�has_arg�rolename�bodyrolenamercCs(||_||_||_||_||_||_dS�N)rrr r!r"r#)�selfrrr r!r"r#rrr�__init__:szField.__init__)	r"�domain�target�	innernode�contnode�env�inliner�locationrc	Cs�|s|p|||�S|�|��|�}	|	dus2|dur�|	dur`|dur`td�}
tjt|
�|||d�tjd|d||d�}||p�|||�7}|�|��|�|St�	|�d}|	|||||ig�\}
}t
j|dg|
�R�S)Nz]Problem in %s domain: field is supposed to use role '%s', but that role is not in the domain.)r-�F)Z	refdomainZrefexplicitZreftypeZ	reftargetr)Z
get_domain�roler�loggerZwarningr
Zpending_xrefZprocess_field_xrefrZget_source_liner
�inline)r%r"r'r(r)r*r+r,r-r/�msgZrefnode�lineno�ns�messagesrrr�	make_xrefCs 
�zField.make_xrefc		
Cs|�||||||||�gSr$)r6)	r%r"r'r(r)r*r+r,r-rrr�
make_xrefs]s�zField.make_xrefs��fieldarg�contentrcCs||fSr$r)r%r9r:rrr�
make_entrydszField.make_entry)�typesr'�itemr+r,r-rcCs�|\}}t�d|j�}	|rJ|	t�d�7}	|	�|j|j||tj|||d��t|�dkr�t|dtj�s�t|dtj	�r�t|d�dkr�t|ddtj�r�|j|j
||d��|d|||d�}t�dtj
ddg|�R��}
t�d|	|
�S)Nr.� �r+r,r-rr)r*r+r,r-)r
�
field_namer �Text�extendr7r"rrr1r#�astext�
field_bodyr�field)r%r<r'r=r+r,r-r9r:�	fieldname�	fieldbodyrrr�
make_fieldgs.�����
�zField.make_field)rNTNN)NNN)�__name__�
__module__�__qualname__�__doc__�
is_grouped�is_typed�strr�boolr&r
�literal_emphasisrrrrrr6rr7r;rr
rErHrrrrr*s>��
���
�"��rc	sneZdZdZdZejZd
ee	edfeee
dd��fdd	�
Zdeee
efee	eeeejd
�dd�Z�ZS)�GroupedFielda�
    A doc field that is grouped; i.e., all fields of that type will be
    transformed into one field with its body being a bulleted list.  It always
    has an argument.  The argument can be linked using the given *rolename*.
    GroupedField should be used for doc fields that can occur more than once.
    If *can_collapse* is true, this field will revert to a Field if only used
    once.

    Example::

       :raises ErrorClass: description when it is raised
    TrNF.)rrr r"�can_collapsercst��|||d|�||_dS)NT)�superr&rS)r%rrr r"rS��	__class__rrr&�szGroupedField.__init__�r<r'�itemsr+r,r-rcCs�t�d|j�}|��}|D]X\}	}
t��}|�|j|j||	tj	|||d��|t�
d�7}||
7}|t�d|�7}qt|�dkr�|j
r�ttj|d�}t�d|d�}
t�d||
�St�d|�}
t�d||
�S)Nr.r?� -- rr)r
r@r �	list_typerrBr7r"r
�literal_strongrA�	list_itemrrSr	rDrE)r%r<r'rXr+r,r-rFZlistnoder9r:�parr\rGrrrrH�s"�zGroupedField.make_field)rNNF)NNN)rIrJrKrLrMr
Zbullet_listrZrOrrPr&rrrrrrErH�
__classcell__rrrUrrR}s����rRc
steZdZdZdZd
eeedfeedfeeeedd��fdd	�
Zde	ee
efeeee
eejd
�dd�Z�ZS)�
TypedFieldaa
    A doc field that is grouped and has type information for the arguments.  It
    always has an argument.  The argument can be linked using the given
    *rolename*, the type using the given *typerolename*.

    Two uses are possible: either parameter and type description are given
    separately, using a field from *names* and one from *typenames*,
    respectively, or both are given using a field from *names*, see the example.

    Example::

       :param foo: description of parameter foo
       :type foo:  SomeClass

       -- or --

       :param SomeClass foo: description of parameter foo
    TrNF.)rr�	typenamesr r"�typerolenamerSrcs$t��|||||�||_||_dSr$)rTr&r`ra)r%rrr`r r"rarSrUrrr&�szTypedField.__init__rWc
s�tttjd�������fdd�}t�d�j�}t|�dkrZ�jrZ|d\}	}
||	|
�}n,���}|D]\}	}
|t�d||	|
��7}qft�	d|�}t�
d||�S)Nr8cs�t��}|��j�j�|tj�d��|�vr�|t�d�7}��|�}t	|�dkr�t
|dtj�r�|d��}|��j�j�|tj
���d��n||7}|t�d�7}|t�d�7}||7}|S)N)r+z (rrr?�)rY)r
rrBr7r"r
r[rA�poprrrCrarQ)r9r:r]�	fieldtype�typename�r'r+r,r-r%r<rr�handle_item�s$�
�
z*TypedField.make_field.<locals>.handle_itemr.rr)rOr
rr@r rrSrZr\rDrE)
r%r<r'rXr+r,r-rgrFr9r:ZbodynoderGrrfrrH�s"zTypedField.make_field)rrNNNF)NNN)rIrJrKrLrNrOrrPr&rrrrrr
rErHr^rrrUrr_�s����r_c@s^eZdZUdZeeeeeffe	d<ddd�dd�Z
ejdd�d	d
�Z
ejdd�dd�ZdS)
�DocFieldTransformerz�
    Transforms field lists in "doc field" syntax into better-looking
    equivalents, using the field type definitions given on a domain.
    �typemaprN)�	directivercCs||_|��|_dSr$)rjZget_field_type_mapri)r%rjrrrr&�szDocFieldTransformer.__init__rcCs$|D]}t|tj�r|�|�qdS)z,Transform all field list children of a node.N)rr
�
field_list�	transform)r%r�childrrr�
transform_all�sz!DocFieldTransformer.transform_allc!
Cs�|j}g}i}i}tttj|�D�]�}ttj|d�}ttj|d�}z|���dd�\}	}
Wn t	y�|��d}	}
Yn0|�
|	d�\}}t|�r�ttj|d�}
|
j
}n|j
}|dus�|jt|
�k�r�|	dd���|	dd�}|
r�|d|
7}t�|�|d<|�|�|r"|r"|r"t|�dkr"t|dtj�r"tt|�}|d��}|j|j|jj||d|jjjjjd�}t|��r�ttj|d�}
|
��|
�|�q"|��|tjddg|�R�7}q"|j }|�r�dd	�|D�}|r"||�!|i�|
<q"|j"�rHz|
�#dd�\}}Wnt	�y*Yn0t�|�g|�!|i�|<|}
tj$|j%d
d�}|j&j|_|j&j'|_'|j&j(|_(||7}|j)�r�||v�r�tt*t+tt,f|||�}n t|�||<|g|f}|�|�|�-|
|g�}|d�|�q"|�-|
|g�}|�|||f�q"t�.�}|D]l}t|tj��r4||7}nN|\}}}|�
|j i�}|jjjjj}|jjj/} ||j0||jj||| |d�7}�q|�1|�dS)
z%Transform a single field list *node*.rrNr.)NNr>)r*r+cSs"g|]}t|tjtjf�r|�qSr)rr
ZInlinerA)�.0�nrrr�
<listcomp>?�z1DocFieldTransformer.transform.<locals>.<listcomp>T)Ztranslatabler?)2rir	rr
rEr@rDrC�split�
ValueError�getrrZchildrenr!rP�upperrA�appendrrr_r7rarjr'�stateZdocumentZsettingsr+�clearrBr�
setdefaultrN�rsplitr1Z	rawsource�parent�source�linerMrrrr;rkr,rHZreplace_self)!r%rri�entriesZgroupindicesr<rEr@rDZfieldtype_namer9ZtypedescZis_typefieldrr:Z
new_fieldnameZtyped_fieldr(ZxrefsreZargtype�argnameZtranslatable_content�groupZ	new_entryZnew_list�entryrdrXr-Z
fieldtypesr+r,rrrrl�s�

��
�

��








�zDocFieldTransformer.transform)rIrJrKrLrrOrrrP�__annotations__r&r
Zdesc_contentrnr
rkrlrrrrrh�s

rhN)&rL�typingrrrrrrrr	Zdocutilsr
Zdocutils.nodesrZdocutils.parsers.rst.statesrZsphinxr
Zsphinx.environmentrZ
sphinx.localerZsphinx.utilrZsphinx.util.typingrZsphinx.directivesrZ	getLoggerrIr0rDrPrrrRr_rhrrrr�<module>s"
(

S,A

Youez - 2016 - github.com/yon3zu
LinuXploit