Format: application/x-python-code
⬇ Download File (3.9 KB)
   1  o
   2  
   3  �h��@srddlZddlmZddlmZmZddlmZddlm	Z	Gdd�de�Z
   4  dd	�Zd
   5  d�Zdd
   6  d�Z
   7  dd�ZdS)�N)�classes)�
   8  StringName�get_quote_ending)�match)�get_str_or_nonec@seZdZdZdS)�PathName�pathN)�__name__�
   9  __module__�__qualname__Zapi_type�rr�Hc:\Users\shubh\Videos\agent\nova\Lib\site-packages\jedi/api/file_name.pyr	src
  10  	csj�ttj�|��}
  11  t||�}|�d�rtj�|�}|durdS||}tj�|�}tj�|�}||�}
  12  |
  13  o=tdd�|
  14  D��}|rTt	|||
  15  dj
  16  �}|durPd}n||}tj�|jj|�}z
  17  t
  18  t�|�dd�d�}WnttfyvYdSwt|||�}|D]3}|j}t|||	d	�r�|s�|��s�||7}n|tjj7}tj|t||t|�|
  19  d��d|
  20  |	d
  21  �VqdS)N�~css�|]}|jdkVqdS)zos.path.joinN)Z	full_name)�.0�srrr
  22  �	<genexpr>s�z%complete_file_name.<locals>.<genexpr>rFcSs|jS)N)�name)�errr
  23  �<lambda>(sz$complete_file_name.<locals>.<lambda>)�key)�fuzzy)�stack�like_name_lengthZis_fuzzy)�len�osr�basename�_get_string_additions�
  24  startswith�
  25  expanduser�dirname�all�_add_os_path_join�
  26  bracket_start�join�project�sorted�scandir�FileNotFoundError�OSErrorrrr�is_dir�seprZ
  27  Completionr)Zinference_state�module_context�
  28  start_leaf�quote�stringZ	like_nameZsignatures_callbackZ
  29  code_lines�positionrr�additionZmust_start_withZsigsZis_in_os_path_joinZto_be_added�	base_pathZlistedZquote_ending�entryrrrr
  30  �complete_file_name
  31  sN�
  32  
  33  �
  34  ���r3cs>�fdd�}|����dkrdS|�|�}t|tt|����S)Nc3sR��j}d}t|jd|j�����D]}|rd}|Vq|dkr$dSd}qdS)NTF�+)�parent�reversed�children�index)�nodeZwas_addition�
  35  child_node�r0rr
  36  �
  37  iterate_nodes?s��z,_get_string_additions.<locals>.iterate_nodesr4�)Zget_previous_leaf�create_context�_add_stringsr6�list)r+r,r<�contextrr;r
  38  r>s
  39  
  40  rFc	Csnd}d}|D].}|�|�}t|�dkrdS|\}t|�}|dur$dS|s.|r.|tjj7}||7}d}q|S)Nr=T�F)Z
  41  infer_noderrrrr*)	rA�nodes�	add_slashr.�firstr:�values�crrrr
  42  r?Ss
  43  r?cs���fdd�}|jdkrT|j}|j�|�}|dkrR|j|d}|jdkrRt|j�dkrRd}|jd	jd
  44  krA|jd	j}|d8}ng}||j|d|ddd��SdS|}|jduro|jjdvro|j}|jduro|jjdvsa|��|urwdS|j}	|	dur�dS|	j�|�}|	jd|�}|	jd
  45  kr�|	j}
  46  |
  47  jdkr�|
  48  j�|	�}|dks�J�|
  49  j|ddks�J�||
  50  j|d|ddd��S|
  51  jd
  52  kr�||
  53  jd|ddd��SdS|	jd
  54  kr�||	jdg�S|	jdkr�||d	g�SdS)Ncs6|j�krdS|sdS��|d�}t||dd�pdS)Nr=rT)rD)�	start_posr>r?)Z
  55  maybe_bracketrCrA�r"r+rr
  56  �checkfs
  57  z _add_os_path_join.<locals>.checkZ
  58  error_leafrrB�
  59  error_node������������arglist)rO�trailerrK�(rP)�typer5r7r8rZget_first_leaf)r+r,r"rJZ
  60  value_noder8rKZ
  61  arglist_nodesZsearched_node_childZ
  62  searched_noderPZ
  63  trailer_indexrrIr
  64  r!esT
  65  	
  66  
  67  
  68  �
  69  
  70  
  71  �
  72  
  73  �r!)F)rZjedi.apirZjedi.api.stringsrrZjedi.api.helpersrZjedi.inference.helpersrrr3rr?r!rrrr
  74  �<module>s1
  75