ó
’›V]c           @   sŒ   d  d l  m Z d  d l m Z d  d l m Z m Z d  d l m Z d  d l	 m
 Z
 d e e f d „  ƒ  YZ d e e
 f d	 „  ƒ  YZ d
 S(   iÿÿÿÿ(   t   evaluator_method_cache(   t
   DictFilter(   t   ContextNameMixint   AbstractNameDefinition(   t   Context(   t   SubModuleDictMixint   ImplicitNSNamec           B   s   e  Z d  Z d „  Z RS(   sŒ   
    Accessing names for implicit namespace packages should infer to nothing.
    This object will prevent Jedi from raising exceptions
    c         C   s   | |  _  | |  _ d  S(   N(   t   _contextt   string_name(   t   selft   implicit_ns_contextR   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt   __init__   s    	(   t   __name__t
   __module__t   __doc__R   (    (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyR      s   t   ImplicitNamespaceContextc           B   sŒ   e  Z d  Z d Z d Z d „  Z e d d d „ Z e	 e
 ƒ  d „  ƒ ƒ Z d „  Z d „  Z d „  Z d „  Z d	 „  Z d
 „  Z d „  Z RS(   s:   
    Provides support for implicit namespace packages
    u   modulec         C   s;   t  t |  ƒ j | d d  ƒ| |  _ | |  _ | |  _ d  S(   Nt   parent_context(   t   superR   R   t   Nonet	   evaluatort	   _fullnamet   _paths(   R	   R   t   fullnamet   paths(    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyR      s    		c         c   s   t  |  j ƒ  ƒ Vd  S(   N(   R   t   sub_modules_dict(   R	   t   search_globalt   until_positiont   origin_scope(    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt   get_filters"   s    c         C   s   |  j  ƒ  d } t |  | ƒ S(   Niÿÿÿÿ(   t   py__package__R   (   R	   R   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt   name%   s    c         C   s   d  S(   N(   R   (   R	   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt
   py__file__+   s    c         C   s   |  j  j d ƒ S(   s   Return the fullname
        t   .(   R   t   split(   R	   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyR   .   s    c         C   s   |  j  S(   N(   R   (   R	   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt
   py__path__3   s    c         C   s   |  j  S(   N(   R   (   R	   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt
   py__name__6   s    c         C   s   t  S(   N(   t   True(   R	   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt   is_namespace9   s    c         C   s   t  S(   N(   t   False(   R	   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt   is_stub<   s    c         C   s   d |  j  j |  j f S(   Ns   <%s: %s>(   t	   __class__R   R   (   R	   (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt   __repr__?   s    N(   R   R   R   t   api_typeR   R   R   R&   R   t   propertyR    R   R   R   R"   R#   R%   R'   R)   (    (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyR      s   							N(   t   jedi.evaluate.cacheR    t   jedi.evaluate.filtersR   t   jedi.evaluate.namesR   R   t   jedi.evaluate.base_contextR   t   jedi.evaluate.context.moduleR   R   R   (    (    (    s>   lib/python2.7/site-packages/jedi/evaluate/context/namespace.pyt   <module>   s   
