
    f5                         d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	m
Z
 d dlmZ d dlmZ d dlmZ  G d	 d
e	e
      Z G d dee      Zy)    )Path)Optional)inference_state_method_cache)
DictFilter)ValueNameMixinAbstractNameDefinition)Value)SubModuleDictMixinNamespaceContextc                       e Zd ZdZd Zy)ImplicitNSNamez
    Accessing names for implicit namespace packages should infer to nothing.
    This object will prevent Jedi from raising exceptions
    c                      || _         || _        y N)_valuestring_name)selfimplicit_ns_valuer   s      Y/var/www/cvtools/html/venv/lib/python3.12/site-packages/jedi/inference/value/namespace.py__init__zImplicitNSName.__init__   s    '&    N)__name__
__module____qualname____doc__r    r   r   r   r      s    'r   r   c                        e Zd ZdZdZdZ fdZddZd Ze	 e
       d               Zdee   fd	Zd
 Zd Zd Zd Zd Zd Zd Zd Z xZS )ImplicitNamespaceValuez:
    Provides support for implicit namespace packages
    	namespaceNc                 R    t         |   |d        || _        || _        || _        y )N)parent_context)superr   inference_statestring_names_paths)r   r#   r$   paths	__class__s       r   r   zImplicitNamespaceValue.__init__   s,    >.(r   c              #   B   K   t        | j                                y wr   )r   sub_modules_dict)r   origin_scopes     r   get_filtersz"ImplicitNamespaceValue.get_filters#   s     ..011s   c                      y)Nr   r   r   s    r   get_qualified_namesz*ImplicitNamespaceValue.get_qualified_names&   s    r   c                 @    | j                         d   }t        | |      S )N)py__package__r   )r   r   s     r   namezImplicitNamespaceValue.name)   s$     ((*2.dK00r   returnc                      y r   r   r-   s    r   
py__file__z!ImplicitNamespaceValue.py__file__/       r   c                     | j                   S )zReturn the fullname
        )r$   r-   s    r   r1   z$ImplicitNamespaceValue.py__package__2   s        r   c                     | j                   S r   )r%   r-   s    r   
py__path__z!ImplicitNamespaceValue.py__path__7   s    {{r   c                 8    dj                  | j                        S )N.)joinr$   r-   s    r   
py__name__z!ImplicitNamespaceValue.py__name__:   s    xx))**r   c                      yNTr   r-   s    r   is_namespacez#ImplicitNamespaceValue.is_namespace=   r6   r   c                      y)NFr   r-   s    r   is_stubzImplicitNamespaceValue.is_stub@   s    r   c                      yr?   r   r-   s    r   
is_packagez!ImplicitNamespaceValue.is_packageC   r6   r   c                     t        |       S r   r   r-   s    r   
as_contextz!ImplicitNamespaceValue.as_contextF   s    %%r   c                 X    d| j                   j                  d| j                         dS )N<z: >)r'   r   r=   r-   s    r   __repr__zImplicitNamespaceValue.__repr__I   s    !^^44doo6GHHr   r   )r   r   r   r   api_typer!   r   r+   r.   propertyr   r2   r   r   r5   r1   r9   r=   r@   rB   rD   rF   rJ   __classcell__)r'   s   @r   r   r      s{     HN2 !#1 $ 1HTN !
+&Ir   r   N)pathlibr   typingr   jedi.inference.cacher   jedi.inference.filtersr   jedi.inference.namesr   r   jedi.inference.base_valuer	   jedi.inference.value.moduler
   jedi.inference.contextr   r   r   r   r   r   <module>rV      s=      = - G + : 3'^%; '4IU$6 4Ir   