
    eJ                        d dl mZ d dlmZ d dlmZmZmZmZ d dl	m
Z
 d dlmZmZ d dlmZ dZddZ	 d	 	 	 	 	 dd
ZddZy	)    )annotations)Iterator)basescontextinference_tipnodes)_extract_single_node)InferenceErrorUseInferenceDefault)AstroidManagerz
from pathlib import Path
Path
c                   t        | j                  t        j                        r| j                  j                  dk(  sy	 t        | j                  j                               }t        |t        j                        xr9 t        |j                  t        j                        xr |j                         dk(  S # t        t        f$ r Y yw xY w)NparentsFzpathlib._PathParents)
isinstancevaluer   	Attributeattrnamenextinferr
   StopIterationr   Instance_proxiedClassDefqname)noder   s     =/usr/lib/python3/dist-packages/astroid/brain/brain_pathlib.py_looks_like_parents_subscriptr      s    4::u/DJJ4G4G94TTZZ%%'( 	5%..) 	4u~~u~~6	4KKM33 M* s    #B8 8C
	C
Nc                    t        | j                  t        j                        r@t	        t        t              j                               }t        |j                         g      S t        N)r   slicer   Constr   r	   PATH_TEMPLATEr   iterinstantiate_classr   )subscript_nodectxpath_clss      r   infer_parents_subscriptr'   %   sN     .&&4,];AACDX//1233
    c                h    | j                  t        j                  t        t              t
               y r   )register_transformr   	Subscriptr   r'   r   )managers    r   registerr-   /   s#    -.%r(   )r   nodes.Subscriptreturnboolr   )r$   r.   r%   zcontext.InferenceContext | Noner/   zIterator[bases.Instance])r,   r   r/   None)
__future__r   collections.abcr   astroidr   r   r   r   astroid.builderr	   astroid.exceptionsr
   r   astroid.managerr   r!   r   r'   r-    r(   r   <module>r9      sQ   
 # $ 8 8 0 B *$ MQ#*Ir(   