Your IP : 216.73.216.213
B
�d{T%\ � @ s. d Z dZddlZddlZddlmZmZmZmZm Z m
Z
mZ ddlm
Z
mZmZmZmZ ddlmZmZmZ ddlmZ ddlmZ yddlZW n ek
r� dZY nX e� Zdd lmZm Z ej!�"d
�r�dZ#dZ$nd
Z#dZ$yedd�Z%W n ek
�r dZ%Y nX e� Z&e'e(ej)dge*ej)� ��Z+G dd� de,�Z-G dd� de�Z.d=dd�Z/d>dd�Z0d?dd�Z1dd� Z2d@dd�Z3dAd d!�Z4dBd"d#�Z5efd$d%�Z6efd&d'�Z7dCd)d*�Z8d+d,� Z9d-d.� Z:e%ffd/d0�Z;d1d2� Z<dDd3d4�Z=d5d6� Z>yddl?Z?W n ek
�r dZ?Y nX dEd7d8�Z@d9d:� ZAd;d<� ZBdS )FaK Python modules manipulation utility functions.
:type PY_SOURCE_EXTS: tuple(str)
:var PY_SOURCE_EXTS: list of possible python source file extension
:type STD_LIB_DIR: str
:var STD_LIB_DIR: directory where standard modules are located
:type BUILTIN_MODULES: dict
:var BUILTIN_MODULES: dictionary with builtin module names has key
zrestructuredtext en� N)�splitext�join�abspath�isdir�dirname�exists�basename)�find_module�load_module� C_BUILTIN�PY_COMPILED�
PKG_DIRECTORY)�get_config_var�get_python_lib�get_python_version)�DistutilsPlatformError)�range)�
STD_BLACKLIST�_handle_blacklist�win)�pyZpyw)�dllZpyd)r )�so� )�standard_libz//c @ s e Zd ZdZdS )�NoSourceFilezaexception raised when we are not able to get a python
source file for a precompiled file
N)�__name__�
__module__�__qualname__�__doc__� r r �H/opt/alt/python37/lib/python3.7/site-packages/logilab/common/modutils.pyr M s r c s4 e Zd Zdd� Zdd� Z� fdd�Zdd� Z� ZS ) �
LazyObjectc C s || _ || _d | _d S )N)�module�obj� _imported)�selfr# r$ r r r! �__init__S s zLazyObject.__init__c C s$ | j d krtt| j�| j�| _ | j S )N)r% �getattr�load_module_from_namer# r$ )r&