ó
B{[c           @   s|   d  d l  Z  d  d l m Z d d l m Z d d l m Z d d l m Z d d l	 m
 Z
 d d l m Z d d	  Z d S(
   i˙˙˙˙N(   t
   ModuleTypei   (   t   BDist(   t   Develop(   t	   Installed(   t   SDist(   t   Wheelc         C   s  t  |  t  r= y t |  |  SWq= t t f k
 r9 q= Xn  y t |   Wn t k
 r^ n, Xy t |  |  SWn t t f k
 r n Xt j j	 |   r y t
 |  |  SWn t t f k
 rĈ n Xy t |  |  SWn t t f k
 rñ n Xy t |  |  SWq t t f k
 rq Xn  t j j |   ry t |  |  SWn t t f k
 r\n Xy t |  |  SWqt t f k
 rqXn  d S(   s>   Try to create a Distribution 'path_or_module'.

    o 'path_or_module' may be a module object.

    o If a string, 'path_or_module' may point to an sdist file, a bdist
      file, an installed package, or a working checkout (if it contains
      PKG-INFO).

    o Return None if 'path_or_module' can't be parsed.
    N(   t
   isinstanceR    R   t
   ValueErrort   IOErrort
   __import__t   ImportErrort   ost   patht   isfileR   R   R   t   isdirR   (   t   path_or_modulet   metadata_version(    (    s,   lib/python2.7/site-packages/pkginfo/utils.pyt   get_metadata
   sF    (   R   t   typesR    t   bdistR   t   developR   t	   installedR   t   sdistR   t   wheelR   t   NoneR   (    (    (    s,   lib/python2.7/site-packages/pkginfo/utils.pyt   <module>   s   