
V]c           @   s   d  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   Z d e f d	     YZ d
 e
 f d     YZ d S(   s?   
TODO Some parts of this module are still not well documented.
i(   t   ModuleContext(   t   compiled(   t   mixed(   t   create_access_path(   t   ContextWrapperc         C   s   t  j |  t |  |   S(   N(   R   t   create_from_access_pathR   (   t	   evaluatort   obj(    (    s3   lib/python2.7/site-packages/jedi/api/interpreter.pyt   _create   s    t   NamespaceObjectc           B   s   e  Z d    Z RS(   c         C   s   | |  _  d  S(   N(   t   __dict__(   t   selft   dct(    (    s3   lib/python2.7/site-packages/jedi/api/interpreter.pyt   __init__   s    (   t   __name__t
   __module__R   (    (    (    s3   lib/python2.7/site-packages/jedi/api/interpreter.pyR	      s   t   MixedModuleContextc           B   s    e  Z d  Z d   Z d   Z RS(   t   mixed_modulec      	   C   s]   t  | | d | d d d | } t t |   j |  g  | D] } t |  ^ q> |  _ d  S(   Nt   file_iot   string_namest   __main__t
   code_lines(   R   (   R    t   superR   R   R	   t   _namespace_objects(   R   R   t   tree_modulet
   namespacesR   R   t   module_contextt   n(    (    s3   lib/python2.7/site-packages/jedi/api/interpreter.pyR      s    		c         o   s   x" |  j  j | |   D] } | Vq Wx` |  j D]U } t |  j |  } t j d | d |  j   } x | j | |   D] } | Vqu Wq/ Wd  S(   Nt   compiled_objectt   tree_context(   t   _wrapped_contextt   get_filtersR   R   R   R   t   MixedObject(   R   t   argst   kwargst   filtert   namespace_objR   t   mixed_object(    (    s3   lib/python2.7/site-packages/jedi/api/interpreter.pyR   $   s    		(   R   R   t   typeR   R   (    (    (    s3   lib/python2.7/site-packages/jedi/api/interpreter.pyR      s   	
N(   t   __doc__t   jedi.evaluate.contextR    t   jedi.evaluateR   t   jedi.evaluate.compiledR   t   jedi.evaluate.compiled.accessR   t   jedi.evaluate.base_contextR   R   t   objectR	   R   (    (    (    s3   lib/python2.7/site-packages/jedi/api/interpreter.pyt   <module>   s   	