BYPASS SHELL BY ./RAZORGANZ
Server: nginx/1.20.1
System: Linux iZdzfnv9mwfppeZ 5.10.134-19.2.al8.x86_64 #1 SMP Wed Oct 29 22:47:09 CST 2025 x86_64
User: apache (48)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //lib64/python3.6/site-packages/gi/__pycache__/module.cpython-36.opt-1.pyc
3

N��d�&�@s�ddlZddlmZddlZddlmZmZmZmZm	Z	m
Z
mZmZm
Z
mZmZmZmZmZmZmZmZmZddlmZmZddlmZmZmZmZmZej �Z!iZ"dd�Z#d	d
�Z$Gdd�de%�Z&d
d�Z'dS)�N)�Lock�)�
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|j�}|s(|j�}|r$|jr$|jStS|j�}|j�}tjd|�}t||�S)Nzgi.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/lib64/python3.6/module.py�get_parent_for_objectAs
r+cCsHg}x>|j�D]2}|j�}|j�}tjd|�}|jt||��qW|S)Nzgi.repository.)Zget_interfacesr r!r"r#�appendr$)r%�
interfacesZinterface_infor&r'r(r)r)r*�get_interfaces_for_objectXsr.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.
    NcCsZtj||�||_||_d||_tj|j�}|g|_|jdkrNtj|j�|_t�|_	dS)z"Might raise gi._gi.RepositoryErrorzgi.repository.N)
�
repositoryZrequire�
_namespaceZ_version�__name__�get_typelib_path�__path__Zget_versionr�_lock)�selfr&�version�pathr)r)r*�__init__ks

zIntrospectionModule.__init__c
s�tj|j|�}|s$td|j|f��t|t��r$|j�}|j��|j	}|dk�r|j
�rv|jt�rlt
|�}q�t|�}n|jt�r�t|�}nt|�}||_d|j�|_djdd�}x2|j�D]&}|j�j|�}t||||j���q�Wx|j�D]}t||j|�q�W|tk�r||_	WdQRX�n�t|t��r�|j�}t|t��rvt|��t �fdd�t!|�D��}	�f|	}
t"}n�t|t#��r�t$f}
t"}n�t|t%��r�t&f}
t"}ntt|t't(f��r|jt)��r�t*f}
nB|jt+��s�|tk�s�|j,|k�r�t-f}
nt.d|j�|j/�f��t0}nt1|��|j�f|tk�rT|j	}|dk	�rT||
k�rT||j2|<|S|d|j|d	�}
|||
|
�}|tk�r�||_	WdQRXn0t|t3��r�|}nt|t4��r�|j�}nt1|��||j2|<|S)
Nz%r object has no attribute %rzgi.repository.�ZabcdefgjhijklmnopqrstuvwxyzZABCDEFGJHIJKLMNOPQRSTUVWXYZc3s|]}t�|�s|VqdS)N)�
issubclass)�.0Z	interface)�parentr)r*�	<genexpr>�sz2IntrospectionModule.__getattr__.<locals>.<genexpr>z$unable to create a wrapper for %s.%s)�__info__�
__module__Z	__gtype__)5r0Zfind_by_namer1�AttributeErrorr2�
isinstancerrr5rZis_flagsZis_arrrrrrr?r r@�	maketransZ
get_valuesZget_name_unescaped�	translate�setattrZ	get_valueZget_methodsrrrr+�tupler.rr
rr	rrrrrrZfundamentalr�	TypeErrorr!r�NotImplementedError�__dict__rr
)r6r'�infoZg_type�wrapperZascii_upper_transZ
value_infoZ
value_nameZmethod_infor-�bases�	metaclassZtype_Zdict_r))r=r*�__getattr__{s�













zIntrospectionModule.__getattr__cCstj|j�}d|j|fS)Nz <IntrospectionModule %r from %r>)r0r3r1)r6r8r)r)r*�__repr__�szIntrospectionModule.__repr__cCsFtt|j��}|j|jj��tj|j�}|jdd�|D��t	|�S)Ncss |]}t|t�s|j�VqdS)N)rBr
r!)r<rJr)r)r*r>�sz.IntrospectionModule.__dir__.<locals>.<genexpr>)
�set�dir�	__class__�updaterI�keysr0Z	get_infosr1�list)r6�resultZnamespace_infosr)r)r*�__dir__�s
zIntrospectionModule.__dir__)N)r2r@�__qualname__�__doc__r9rNrOrWr)r)r)r*r/cs

mr/cCs0|tkrt|Stj|�}t||�}|t|<|S)z�
    :Returns:
        An object directly wrapping the gi module without overrides.

    Might raise gi._gi.RepositoryError
    )�_introspection_modules�giZget_required_versionr/)r&r7r(r)r)r*�get_introspection_module�s

r\)(r"Z	threadingrr[Z_girrrrrr	r
rrr
rrrrrrrr�typesrrZ
_constantsrrrrrZget_defaultr0rZr+r.rr/r\r)r)r)r*�<module>sP