
    c                        d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	 d dl
mZ ddd	ZddZ e                                ej         ee          e           dS )    )annotations)	argumentsinference_tipnodes)InferenceContext)UseInferenceDefault)AstroidManagerNcontextInferenceContext | Nonec                x   t           j                            | |          }|j        st	                      t          j        d          }| j        |_        t          |j                  D ].}t          j	                    }||_        ||_
        |g|j        |<   /t          |                                f          S )N)r
   	Namespace)r   CallSite	from_callkeyword_argumentsr   r   ClassDefparentset	EmptyNodeattrnameinstance_attrsiterinstantiate_class)noder
   callsite
class_nodeattr	fake_nodes         <lib/python3.11/site-packages/astroid/brain/brain_argparse.pyinfer_namespacer      s    !++D'+BBH% $!###,,J JH.// 6 6O%%	%	!	+4+
!$''--//1222    returnboolc                    | j         }t          |t          j                  r:|j        dk    o.t          |j        t          j                  o|j        j        dk    S dS )Nr   argparseF)func
isinstancer   	Attributer   exprNamename)r   r%   s     r   _looks_like_namespacer+      sZ    9D$(( 
M[( -49ej11-	*,	

 5r    )N)r
   r   )r!   r"   )
__future__r   astroidr   r   r   astroid.contextr   astroid.exceptionsr   astroid.managerr	   r   r+   register_transformCall r    r   <module>r4      s   
 # " " " " " 3 3 3 3 3 3 3 3 3 3 , , , , , , 2 2 2 2 2 2 * * * * * *3 3 3 3 3$       # #	Jo..0E    r    