Format: application/x-python-code
⬇ Download File (5.7 KB)
   1  o
   2  
   3  �h��@s�ddlmZddlmZddlmZddlmZGdd�d�ZGdd�de�ZGd	d
   4  �d
   5  e�Z	Gdd�de�Z
   6  Gd
   7  d�de�ZdS)�)�	Parameter)�memoize_method)�debug)�parser_utilsc@seZdZdd�ZdS)�_SignatureMixincsB�fdd�}�jjdd�|��d}�j}|r|d|7}|S)Nc3s��d}d}�jdd�D]2}|��}||tjkO}|r$|tjkr$dVd}|tjkr,d}n|tjkr8|s8dVd}|��Vq|rEdVdSdS)NFT)�
   8  resolve_stars�/�*)�get_param_namesZget_kindr�POSITIONAL_ONLY�VAR_POSITIONAL�KEYWORD_ONLY�	to_string)Z
   9  is_positionalZ
  10  is_kw_only�n�kind��self��Nc:\Users\shubh\Videos\agent\nova\Lib\site-packages\jedi/inference/signature.py�
  11  param_strings
  12  s$�
  13  
  14  �z0_SignatureMixin.to_string.<locals>.param_strings�(z, �)z -> )�nameZstring_name�join�annotation_string)rr�s�
  15  annotationrrrr	sz_SignatureMixin.to_stringN)�__name__�
  16  __module__�__qualname__rrrrrrsrc@sPeZdZddd�Zedd��Zedd��Zddd	�Zd
  17  d�Zdd
  18  �Z	dd�Z
  19  dS)�AbstractSignatureFcCs||_||_dS�N)�value�is_bound)rr"r#rrr�__init__'s
  20  zAbstractSignature.__init__cCs|jjSr!)r"rrrrrr+szAbstractSignature.namecC�dS)N�rrrrrr/sz#AbstractSignature.annotation_stringcCs |j��}|jr|dd�S|S)N�)�_function_valuer
  21  r#)rrZparam_namesrrrr
  22  3s
  23  z!AbstractSignature.get_param_namescCst�r!)�NotImplementedError�rr"rrr�bind9�zAbstractSignature.bindcCr%)NTr)r�	argumentsrrr�matches_signature<r,z#AbstractSignature.matches_signaturecCs4|j|jurd|jj|jfSd|jj|j|jfS)Nz<%s: %s>z<%s: %s, %s>)r"r(�	__class__rrrrr�__repr__?szAbstractSignature.__repr__N�F)rrrr$�propertyrrr
  24  r+r.r0rrrrr &s
  25  
  26  
  27  
  28  r csTeZdZd�fdd�	Zdd�Zedd��Zed	d
  29  ��Zeddd��Z	d
  30  d�Z
  31  �ZS)�
  32  TreeSignatureNFcst��||�|p
  33  ||_dSr!)�superr$r()rr"�function_valuer#�r/rrr$FszTreeSignature.__init__cCst||jdd�S)NT)r#)r3r(r*rrrr+JszTreeSignature.bindcCs|j��rdS|jjjSr!)r"�is_classr(�	tree_noderrrrr�_annotationMs
  34  
  35  zTreeSignature._annotationcCs|j}|dur	dS|jdd�S)Nr&F)Zinclude_prefix)r9�get_code)r�arrrrUszTreeSignature.annotation_stringcCs8|j��}|rddlm}||�}|jr|dd�S|S)Nr)�process_paramsr')r(r
  36  Zjedi.inference.star_argsr<r#)rr�paramsr<rrrr
  37  \s
  38  zTreeSignature.get_param_namescCs�ddlm}||j|�\}}|rdStdd�|D��}tjrE|jj}t�|�}|r8tj	d||j
  39  d|dd�|Stj	d	||j
  40  d|dd�|S)
  41  Nr)�#get_executed_param_names_and_issuesFcss�|]}|��VqdSr!)r.)�.0Zexecuted_param_namerrr�	<genexpr>ms��z2TreeSignature.matches_signature.<locals>.<genexpr>zOverloading match: %s@%s (%s)ZBLUE)�colorz Overloading no match: %s@%s (%s))Zjedi.inference.paramr>r(�allrZ
  42  enable_noticer8rZ
  43  get_signatureZdbg�	start_pos)rr-r>Zexecuted_param_namesZissues�matchesr8�	signaturerrrr.fs(
  44  ��
  45  ���zTreeSignature.matches_signature�NFr1)rrrr$r+r2r9rrr
  46  r.�
  47  __classcell__rrr6rr3Es
  48  
  49  	r3cs>eZdZd�fdd�	Zedd��Zedd��Zd	d
  50  �Z�ZS)�BuiltinSignatureNFcst��||�||_||_dSr!)r4r$�_return_string�!_BuiltinSignature__function_value)rr"Z
  51  return_stringr5r#r6rrr$|s
  52  zBuiltinSignature.__init__cCs|jSr!)rIrrrrr�sz"BuiltinSignature.annotation_stringcCs|jdur|jS|jSr!)rJr"rrrrr(�s
  53  z BuiltinSignature._function_valuecCst||j|jdd�S)NT)r5r#)rHrIr"r*rrrr+�s
  54  �zBuiltinSignature.bindrF)	rrrr$r2rr(r+rGrrr6rrH{s
  55  
  56  rHc@seZdZdd�Zdd�ZdS)�SignatureWrappercCs
  57  ||_dSr!)�_wrapped_signature)rZwrapped_signaturerrrr$�s
  58  zSignatureWrapper.__init__cCst|j|�Sr!)�getattrrL)rrrrr�__getattr__�szSignatureWrapper.__getattr__N)rrrr$rNrrrrrK�srKN)�inspectrZ
  59  jedi.cacherZjedirrrr r3rHrKrrrr�<module>s6