HEX
Server: nginx/1.24.0
System: Linux localhost 5.15.0-46-generic #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022 x86_64
User: www (1000)
PHP: 8.3.27
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: //proc/93580/root/lib/python3/dist-packages/gi/__pycache__/module.cpython-310.pyc
o

b�^M%�@s�ddlZddlZddlmZmZmZmZmZmZm	Z	m
Z
mZmZm
Z
mZmZmZmZmZmZmZddlmZmZddlmZmZmZmZmZe��ZiZ dd�Z!dd	�Z"Gd
d�de#�Z$dd
�Z%dS)�N�)�
Repository�FunctionInfo�RegisteredTypeInfo�EnumInfo�
ObjectInfo�
InterfaceInfo�ConstantInfo�
StructInfo�	UnionInfo�CallbackInfo�Struct�Boxed�	CCallback�enum_add�enum_register_new_gtype_and_add�	flags_add� flags_register_new_gtype_and_add�
GInterface)�GObjectMeta�
StructMeta)�	TYPE_NONE�
TYPE_BOXED�TYPE_POINTER�	TYPE_ENUM�
TYPE_FLAGScCsP|��}|s|��}|r|jr|jStS|��}|��}t�d|�}t||�S�N�gi.repository.)	Z
get_parent�
get_g_type�pytype�object�
get_namespace�get_name�	importlib�
import_module�getattr)�object_infoZparent_object_infoZgtype�	namespace�name�module�r*�+/usr/lib/python3/dist-packages/gi/module.py�get_parent_for_object@s

r,cCsDg}|��D]}|��}|��}t�d|�}|�t||��q|Sr)Zget_interfacesr!r"r#r$�appendr%)r&�
interfacesZinterface_infor'r(r)r*r*r+�get_interfaces_for_objectWsr/c@s2eZdZdZddd�Zdd�Zdd�Zd	d
�ZdS)�IntrospectionModuleaUAn object which wraps an introspection typelib.

    This wrapping creates a python module like representation of the typelib
    using gi repository as a foundation. Accessing attributes of the module
    will dynamically pull them in and create wrappers for the members.
    These members are then cached on this introspection module.
    NcCsVt�||�||_||_d||_t�|j�}|g|_|jdur)t�|j�|_dSdS)z"Might raise gi._gi.RepositoryErrorrN)�
repositoryZrequire�
_namespaceZ_version�__name__�get_typelib_path�__path__Zget_version)�selfr'�version�pathr*r*r+�__init__js

�zIntrospectionModule.__init__cs�t�|j|�}|std|j|f��t|t�r�|��}|j}|dur�|�	�r;|�
t�r0t|�}n|t
ks6J�t|�}n|�
t�rEt|�}n
|t
ksKJ�t|�}||_d|��|_d�dd�}|��D]}|���|�}t||||����qc|��D]	}t||j|�q{|t
kr�||_n�t|t��r1|��}t|t�r�t|��t�fdd�t |�D��}	�f|	}
t!}nKt|t"�r�t#f}
t!}n@t|t$�r�t%f}
t!}n5t|t&t'f�r�|�
t(�r�t)f}
n|�
t*�s�|t
ks�|j+|kr�t,f}
nt-d|��|�.�f��t/}nt0|��|t
k�r|j}|du�r||
v�r||j1|<|S|d|j|d	�}
|||
|
�}|t
k�r0||_nt|t2��r:|}nt|t3��rE|��}nt0|��||j1|<|S)
Nz%r object has no attribute %rr�ZabcdefgjhijklmnopqrstuvwxyzZABCDEFGJHIJKLMNOPQRSTUVWXYZc3s�|]
}t�|�s|VqdS�N)�
issubclass)�.0Z	interface��parentr*r+�	<genexpr>�s��z2IntrospectionModule.__getattr__.<locals>.<genexpr>z$unable to create a wrapper for %s.%s)�__info__�
__module__Z	__gtype__)4r1Zfind_by_namer2�AttributeErrorr3�
isinstancerrrZis_flagsZis_arrrrrrrrAr!rB�	maketransZ
get_valuesZget_name_unescaped�	translate�setattrZ	get_valueZget_methodsrrr,�tupler/rrrrrr
rrrrZfundamentalr
�	TypeErrorr"r�NotImplementedError�__dict__rr	)r6r(�infoZg_type�wrapperZascii_upper_transZ
value_infoZ
value_nameZmethod_infor.�bases�	metaclassZtype_Zdict_r*r>r+�__getattr__xs��





��





��

�
�

zIntrospectionModule.__getattr__cCst�|j�}d|j|fS)Nz <IntrospectionModule %r from %r>)r1r4r2)r6r8r*r*r+�__repr__�szIntrospectionModule.__repr__cCsFtt|j��}|�|j���t�|j�}|�dd�|D��t	|�S)Ncss"�|]}t|t�s|��VqdSr;)rDrr")r=rLr*r*r+r@�s��z.IntrospectionModule.__dir__.<locals>.<genexpr>)
�set�dir�	__class__�updaterK�keysr1Z	get_infosr2�list)r6�resultZnamespace_infosr*r*r+�__dir__�s
zIntrospectionModule.__dir__r;)r3rB�__qualname__�__doc__r9rPrQrYr*r*r*r+r0bs
jr0cCs0|tvrt|St�|�}t||�}|t|<|S)z�
    :Returns:
        An object directly wrapping the gi module without overrides.

    Might raise gi._gi.RepositoryError
    )�_introspection_modules�giZget_required_versionr0)r'r7r)r*r*r+�get_introspection_module�s

r^)&r#r]Z_girrrrrrr	r
rrr
rrrrrrr�typesrrZ
_constantsrrrrr�get_defaultr1r\r,r/r r0r^r*r*r*r+�<module>sP