U
    nuf                     @   s   U d dl Z d dlmZ d dlmZmZ d dlmZ z*d dlm	Z	 e	j	Z
eeeef  ed< W n ek
rt   dZ
Y nX G dd deZd	d
 ZdS )    N)suppress)DictOptional)AbstractArbitraryName)topicspydoc_topicsc                   @   s   e Zd ZdZdd ZdS )KeywordNamekeywordc                 C   s
   t | jS N)imitate_pydocZstring_name)self r   5/tmp/pip-unpacked-wheel-ol4ehs9f/jedi/api/keywords.py	py__doc__   s    zKeywordName.py__doc__N)__name__
__module____qualname__Zapi_typer   r   r   r   r   r      s   r   c              	      s   t dkrdS tj tt   j|  } | d\} }}W 5 Q R X  fdd}t| tr`|| } qLz| \}}W n t	k
r   Y dS X zt rt | 
 ndW S  tk
r   Y dS X dS )z]
    It's not possible to get the pydoc's without starting the annoying pager
    stuff.
    N  c                    s    j |  j| S r
   )r   getkeywords)shr   r   
get_target$   s    z!imitate_pydoc.<locals>.get_target)r   pydochelpr   KeyErrorsymbols	partition
isinstancestr	TypeErrorstrip)string_relatedr   labelr   r   r   r      s"    



r   )r   
contextlibr   typingr   r   Zjedi.inference.namesr   Z
pydoc_datar   r   r!   __annotations__ImportErrorr   r   r   r   r   r   <module>   s    
