
    X-Ph	                    P    d Z ddlmZ ddlZddlmZ  G d dej                  ZdS )zSplit namespace for argparse to allow separating options by prefix.

We use this to direct some options to an Options object and some to a
regular namespace.
    )annotationsN)Anyc                  .    e Zd ZddZdd
ZddZddZdS )SplitNamespacestandard_namespaceobjectalt_namespace
alt_prefixstrreturnNonec                B    || j         d<   || j         d<   || j         d<   d S )N_standard_namespace_alt_namespace_alt_prefix)__dict__)selfr   r	   r
   s       T/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/mypy/split_namespace.py__init__zSplitNamespace.__init__   s.    /A+,*7&''1m$$$    tuple[Any, Any]c                    | j         | j        fS N)r   r   )r   s    r   _getzSplitNamespace._get   s    ($*=>>r   namevaluer   c                    |                     | j                  r2t          | j        |t	          | j                  d          |           d S t          | j        ||           d S r   )
startswithr   setattrr   lenr   )r   r   r   s      r   __setattr__zSplitNamespace.__setattr__   se    ??4+,, 	;D'c$2B.C.C.E.E)FNNNNND,dE:::::r   c                    |                     | j                  r/t          | j        |t	          | j                  d                    S t          | j        |          S r   )r   r   getattrr   r    r   )r   r   s     r   __getattr__zSplitNamespace.__getattr__   sU    ??4+,, 	;4.S9I5J5J5L5L0MNNN43T:::r   N)r   r   r	   r   r
   r   r   r   )r   r   )r   r   r   r   r   r   )r   r   r   r   )__name__
__module____qualname__r   r   r!   r$    r   r   r   r      sd        2 2 2 2
? ? ? ?; ; ; ;; ; ; ; ; ;r   r   )__doc__
__future__r   argparsetypingr   	Namespacer   r(   r   r   <module>r.      su     # " " " " "       ; ; ; ; ;X' ; ; ; ; ;r   