B
    7r\                 @   s`   d dl mZmZ d dlmZ G dd deZG dd deZG dd deZG d	d
 d
eZdS )    )publish_methodBuiltinOverwrite)
ContextSetc                   s0   e Zd Z fddZedd Zdd Z  ZS )	AsyncBasec                s   t t| | || _d S )N)superr   __init__func_execution_context)self	evaluatorr   )	__class__ Alib/python3.7/site-packages/jedi/evaluate/context/asynchronous.pyr      s    zAsyncBase.__init__c             C   s
   |   jS )N)Z
get_objectname)r	   r   r   r   r   
   s    zAsyncBase.namec             C   s   dt | j| jf S )Nz
<%s of %s>)type__name__r   )r	   r   r   r   __repr__   s    zAsyncBase.__repr__)r   
__module____qualname__r   propertyr   r   __classcell__r   r   )r   r   r      s   r   c               @   s    e Zd ZdZeddd ZdS )	CoroutineZ	COROUTINE	__await__c             C   s   t t| j| jS )N)r   CoroutineWrapperr
   r   )r	   r   r   r   _await   s    zCoroutine._awaitN)r   r   r   special_object_identifierr   r   r   r   r   r   r      s   r   c               @   s   e Zd ZdZdd ZdS )r   ZCOROUTINE_WRAPPERc             C   s
   | j  S )N)r   Zget_return_values)r	   r   r   r   py__stop_iteration_returns   s    z+CoroutineWrapper.py__stop_iteration_returnsN)r   r   r   r   r   r   r   r   r   r      s   r   c               @   s   e Zd ZdZdZdd ZdS )AsyncGeneratorzHandling of `yield` functions.ZASYNC_GENERATORc             C   s   | j jddS )NT)Zis_async)r   Zget_yield_lazy_contexts)r	   r   r   r   py__aiter__%   s    zAsyncGenerator.py__aiter__N)r   r   r   __doc__r   r   r   r   r   r   r   !   s   r   N)	Zjedi.evaluate.filtersr   r   Zjedi.evaluate.base_contextr   r   r   r   r   r   r   r   r   <module>   s
   