Submit
Path:
~
/
/
proc
/
thread-self
/
root
/
opt
/
alt
/
python35
/
lib64
/
python3.5
/
site-packages
/
numpy
/
__pycache__
/
File Content:
_import_tools.cpython-35.pyc
W��f�3 � @ s� d d l m Z m Z m Z d d l Z d d l Z d d l Z d g Z Gd d � d e � Z Gd d � d e � Z e e j j d d � � r� e Z d S) � )�division�absolute_import�print_functionN� PackageLoaderc @ s� e Z d Z d d d d � Z d d d � Z d d d � Z d d � Z d d � Z d d � Z d d � Z d d � Z d d � Z d d � Z d d � Z d d d � Z d d � Z d S)r Fc C s� | r d } n d } t j | � | _ } t d | j | j � | _ t d | j | j � } t | t � rv | g } | | _ d | j k r� t d | j | j � t d | j | j � | _ i | _ g | _ d | _ d S)z# Manages loading packages. � � �__name__�__path__�__all__z__all__ = []N)�sys� _getframe�parent_frame�eval� f_globals�f_locals�parent_name� isinstance�str�parent_path�exec�parent_export_names�info_modules�imported_packages�verbose)�selfr ZinfuncZ_level�framer � r �/_import_tools.py�__init__ s zPackageLoader.__init__Nc C s d d l m } | t j j | | d � � } xI | t j j | | d � � D]) } | d d � | k rM | j | � qM Wg } x� | D]� } t j j | t | � d d � � j t j d � } | r� | d | } | j | | f � | j | j d t j j | � | � � q� W| S) zU Return list of (package name,info.py file) from parent_path subdirectories. r )�globzinfo.pyzinfo.pycNr �.�*���)r �os�path�join�append�dirname�len�replace�sep�extend�_get_info_files) r �package_dirr Zparent_packager �files� info_file� info_files�package_namer r r r, s % &zPackageLoader._get_info_filesc C s. d d l m } g } | j } | d k r[ x� | j D] } | j | j d | � � q5 Wn� x� | D]� } t j j | j d � � } x� | j D], } | j | | � } | r� | j | � Pq� Wy t d | � t | | <Wqb t k r&} z+ | j d | d j | j � | f � WYd d } ~ Xqb Xqb Wx� | D]� \ } } | | k rMq2| j d | } | d d k rwd } n d } y | | d | | � } Wn8 t k r�} z | j | � d } WYd d } ~ Xn X| d k s�t | d d � r| j | d � q2| j t | d g � � | | | <q2Wd S)zNInitialize info_modules = {<package_name>: <package info.py module>}. r )�npy_load_moduleNr! r zimport %s.info as infoz6No scipy-style subpackage %r found in %s. Ignoring: %s�:r �c�.pyc�rbr �.py�Uz.info�ignoreF�dependsr"