
    Mh5                         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dS )    )Path)Optional)inference_state_method_cache)
DictFilter)ValueNameMixinAbstractNameDefinition)Value)SubModuleDictMixinNamespaceContextc                       e Zd ZdZd ZdS )ImplicitNSNamez
    Accessing names for implicit namespace packages should infer to nothing.
    This object will prevent Jedi from raising exceptions
    c                 "    || _         || _        d S N)_valuestring_name)selfimplicit_ns_valuer   s      ^/var/www/html/test/jupyter/venv/lib/python3.11/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                 x    t                                          |d            || _        || _        || _        d S )N)parent_context)superr   inference_statestring_names_paths)r   r#   r$   paths	__class__s       r   r   zImplicitNamespaceValue.__init__   s;    >>>.(r   c              #   P   K   t          |                                           V  d S r   )r   sub_modules_dict)r   origin_scopes     r   get_filtersz"ImplicitNamespaceValue.get_filters#   s,      ..001111111r   c                     dS )Nr   r   r   s    r   get_qualified_namesz*ImplicitNamespaceValue.get_qualified_names&   s    rr   c                 V    |                                  d         }t          | |          S )N)py__package__r   )r   r   s     r   namezImplicitNamespaceValue.name)   s*     ((**2.dK000r   returnc                     d S r   r   r-   s    r   
py__file__z!ImplicitNamespaceValue.py__file__/       tr   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                 6    d                     | j                  S )N.)joinr$   r-   s    r   
py__name__z!ImplicitNamespaceValue.py__name__:   s    xx)***r   c                     dS NTr   r-   s    r   is_namespacez#ImplicitNamespaceValue.is_namespace=   r6   r   c                     dS )NFr   r-   s    r   is_stubzImplicitNamespaceValue.is_stub@   s    ur   c                     dS 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                 L    d| j         j        d|                                 dS )N<z: >)r'   r   r=   r-   s    r   __repr__zImplicitNamespaceValue.__repr__I   s*     !^444doo6G6G6G6G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 2 2 2   !!##1 1 $# X1HTN    ! ! !
  + + +      & & &I I I I I I 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 G G G G G G G + + + + + + : : : : : : 3 3 3 3 3 3' ' ' ' '^%; ' ' '4I 4I 4I 4I 4IU$6 4I 4I 4I 4I 4Ir   