
    Æe2                        d dl Z d dlZd dlZd dlmZmZ  G d dej                        Z G d dej                        Z G d dej                        Z	 G d	 d
ej                        Z
 G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Zej                  Zy)    N)pynamesutilsc                       e Zd Zy)DefinedNameN__name__
__module____qualname__     6/usr/lib/python3/dist-packages/rope/base/pynamesdef.pyr   r          r   r   c                   X    e Zd ZddZ ej
                  d       d        Zd Zd Zd Z	y)	AssignedNameNc                     || _         || _        g | _        t        | j                  t        j                  |            | _        | j                  j                  |       y N)	linenomoduleassignments	_Inferred_get_inferredr   _get_concluded_datapyobjectset)selfr   r   r   s       r   __init__zAssignedName.__init__   sN    ! ; ;F C
 	(#r   c                       y r   r   r   r   r   <lambda>zAssignedName.<lambda>   s    r   c                     | j                   3t        j                  j                  j                  j                  |       S y r   )r   ropebaseoisoiinfer_assigned_objectr   s    r   r   zAssignedName._get_inferred   s0    ;;"99<<##99$?? #r   c                 6    | j                   j                         S r   )r   getr%   s    r   
get_objectzAssignedName.get_object   s    }}  ""r   c                    | j                   P| j                  rDt        j                  t              5  | j                  d   j                         | _         ddd       | j                  | j                   fS # 1 sw Y   !xY w)z Returns a (module, lineno) tupleNr   )r   r   
contextlibsuppressAttributeError
get_linenor   r%   s    r   get_definition_locationz$AssignedName.get_definition_location   se    ;;4#3#3$$^4 ?"..q1<<>?T[[))? ?s   #A55A>c                 :    | j                   j                  d       y)z)Forget the `PyObject` this `PyName` holdsN)r   r   r%   s    r   
invalidatezAssignedName.invalidate%   s    $r   )NNN)
r   r	   r
   r   r   prevent_recursionr   r(   r.   r0   r   r   r   r   r      s9    $ U\*@ +@#* r   r   c                       e Zd Zy)UnboundNameNr   r   r   r   r3   r3   *   r   r   r3   c                   $    e Zd Zd Zd Zd Zd Zy)ParameterNamec                      || _         || _        y r   )
pyfunctionindex)r   r7   r8   s      r   r   zParameterName.__init__/   s    $
r   c                     | j                   j                  | j                        }|(t        j                  j
                  j                         }|S r   )r7   get_parameterr8   r    r!   	pyobjectsget_unknown)r   results     r   r(   zParameterName.get_object3   s<    ..tzz:>YY((446Fr   c                     t         j                  j                  j                  j	                  | j
                  | j                        S )z4Returns the list of objects passed as this parameter)r    r!   r"   r#   get_passed_objectsr7   r8   r%   s    r   get_objectszParameterName.get_objects9   s+    yy||224??DJJOOr   c                 ~    | j                   j                         | j                   j                         j                  fS r   )r7   
get_moduleget_astr   r%   s    r   r.   z%ParameterName.get_definition_location=   s-    **,doo.E.E.G.N.NOOr   N)r   r	   r
   r   r(   r@   r.   r   r   r   r5   r5   .   s    PPr   r5   c                       e Zd Zy)AssignmentValueNr   r   r   r   rE   rE   A   r   r   rE   c                       e Zd Zy)EvaluatedNameNr   r   r   r   rG   rG   E   r   r   rG   c                       e Zd Zy)ImportedModuleNr   r   r   r   rI   rI   I   r   r   rI   c                       e Zd Zy)ImportedNameNr   r   r   r   rK   rK   M   r   r   rK   )r*   rope.base.oi.soir    rope.base.pyobjects	rope.baser   r   r   r   r3   r5   rE   rG   rI   rK   r   r   r   r   <module>rO      s       $	'%% 	 7''  <	'%% 	PG)) P&	g-- 		G)) 		W++ 		7'' 	 	r   