| Server IP : 104.21.21.239 / Your IP : 216.73.216.101 Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5 System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib64/python3.9/site-packages/gi/__pycache__/ |
Upload File : |
a
��fF � , @ s� d dl mZmZmZmZmZmZmZ dadd� Z dd� Z
dd� Zeje
ejeejeejeejeejeejeejeejeejeejeejeejeejeejeej e!ej"e!ej#e!ej$dej%dej&dej'diZ(d d
� Z)dd� Z*d
d� Z+dd� Z,e e,� dS )� )� VFuncInfo�FunctionInfo�CallableInfo�
ObjectInfo�
StructInfo� Direction�TypeTagNc C s | a dS )z�Set doc string generator function
:param callable func:
Callable which takes a GIInfoStruct and returns documentation for it.
N��_generate_doc_string_func)�func� r �2/usr/lib64/python3.9/site-packages/gi/docstring.py�set_doc_string_generator% s r c C s t S )z6Returns the currently registered doc string generator.r r r r r
�get_doc_string_generator/ s r c C s t | �S )aE Generate a doc string given a GIInfoStruct.
:param gi.types.BaseInfo info:
GI info instance to generate documentation for.
:returns:
Generated documentation as a string.
:rtype: str
This passes the info struct to the currently registered doc string
generator and returns the result.
r ��infor r r
�generate_doc_string4 s r c C sf | � � }t�|d �}|r(t|d�r(|jS |tjkr^| �� }|�� }|sN| � � S d|�
� |f S | � � S )N�__name__z%s.%s)Zget_tag�_type_tag_to_py_type�get�hasattrr r � INTERFACEZ
get_interface�get_nameZget_tag_as_stringZ
get_namespace)Zgi_typeZtype_tagZpy_typeZifaceZ info_namer r r
�_get_pytype_hint\ s
r c
C s� g }t | t�rdg}nt | t�r.| �� r.dg}| �� }d}| �� �� h}t� }|D ]2}|�|� � � |�|�
� �� � |�|�� � qRt|�D ]�\}}|�
� tjkr�q�||v r�q�|�� }t|�
� �} | |vr�|d| 7 }|�� s�||v r�|d7 }n|�� �r|d7 }|�|� q�d�|�}
g }t| �� �}| �� �sd|�rd||v�rd|}| �� �rZ|d7 }|�|� t|�D ]`\}}|�
� tjk�r��ql||v �r��ql|�� }t|�
� �} | |v�r�|d| 7 }|�|� �ql|�r�d| j|
d�|�f S d | j|
f S d S )
N�self)Zvoid�:z=Nonez=<optional>z, z or Nonez%s(%s) -> %sz%s(%s))�
isinstancer r Z is_methodZ
get_argumentsZget_return_typeZget_array_length�set�addZget_destroyZget_typeZget_closure� enumerateZ
get_directionr ZOUTr r Zmay_be_nullZis_optional�append�joinZskip_returnZmay_return_null�INr )
r Zin_args_strs�argsZhint_blacklistZignore_indicesZuser_data_indices�arg�iZargstr�hintZin_args_strZ
out_args_strsZreturn_hintr r r
�_generate_callable_info_docn sb
r'