Format: application/x-python-code
1 o
2
3 �h�@ � @ s d Z ddlZddlmZ ddlmZ ddlmZ ddlm Z m
4 Z
5 ddlmZ ddl
6 mZ dd lmZmZ dd
7 lmZmZmZ ddlmZ ddlmZ dd
8 lmZmZ ddlmZ dZdZ dZ!dd� Z"dd� Z#G dd� d�Z$dd� Z%dd� Z&d dd�Z'dd� Z(dS )!a�
9 Projects are a way to handle Python projects within Jedi. For simpler plugins
10 you might not want to deal with projects, but if you want to give the user more
11 flexibility to define sys paths and Python interpreters for a project,
12 :class:`.Project` is the perfect way to allow for that.
13
14 Projects can be saved to disk and loaded again, to allow project definitions to
15 be used across repositories.
16 � N)�Path)�chain)�debug)�get_cached_default_environment�create_environment)�WrongVersion)�search_in_module)�split_search_string�get_module_names)�load_module_from_path�load_namespace_from_path�iter_module_names)�discover_buildout_paths)�%inference_state_as_method_param_cache)�%recurse_find_python_folders_and_files�search_in_file_ios)�FolderIOz.jedi)zsetup.pyz.gitz.hgzrequirements.txtzMANIFEST.inzpyproject.toml� c s � fdd�}|S )Nc ? sx � g }g }� | i |��D ]-}|j j}|d ur||v rq|jdkr1|jd ur1|j|v r+q|�|j� |V |�|� qd S )N�module)�_name� tree_name�type�module_path�append)�args�kwargsZfound_tree_nodesZ
17 found_modulesZ
18 definition� tree_node��func� �Fc:\Users\shubh\Videos\agent\nova\Lib\site-packages\jedi/api/project.py�wrapper"