Your IP : 3.145.214.68
�
��bg
S � �� � d Z ddlmZ ddlZddlZddlmZmZmZ ddl m
Z
ddlmZ ddlm
Z
ddlmZmZ ddlZd d
lmZ ddlmZ ddlmZ erdd
lmZ ej j Zd5d�Z G d� d� � Z G d� d� � Z G d� de � � Z! G d� de!� � Z" G d� de � � Z# G d� de"� � Z$ G d� d e#� � Z%d6d%�Z& G d&� d'� � Z'd7d)�Z(d7d*�Z)d8d/�Z*d9d1�Z+d:d4�Z,dS );u_ Automatic discovery of Python modules and packages (for inclusion in the
distribution) and other config values.
For the purposes of this module, the following nomenclature is used:
- "src-layout": a directory representing a Python project that contains a "src"
folder. Everything under the "src" folder is meant to be included in the
distribution when packaging the project. Example::
.
├── tox.ini
├── pyproject.toml
└── src/
└── mypkg/
├── __init__.py
├── mymodule.py
└── my_data_file.txt
- "flat-layout": a Python project that does not use "src-layout" but instead
have a directory under the project root for each package::
.
├── tox.ini
├── pyproject.toml
└── mypkg/
├── __init__.py
├── mymodule.py
└── my_data_file.txt
- "single-module": a project that contains a single Python script direct under
the project root (no directory used)::
.
├── tox.ini
├── pyproject.toml
└── mymodule.py
� )�annotationsN)�Iterable�Iterator�Mapping��fnmatchcase)�glob)�Path)�
TYPE_CHECKING�ClassVar� )�StrPath)�log)�convert_path)�Distribution�pathr �return�boolc �d � t j � | � � � � � S �N)�osr �basename�isidentifier)r s �K/opt/cloudlinux/venv/lib64/python3.11/site-packages/setuptools/discovery.py�_valid_namer ? s$ � �
�7���D�!�!�.�.�0�0�0� c �* � e Zd ZdZdd�Zd
d �Zd
d
�ZdS )�_Filterz�
Given a list of patterns, create a callable that will be true only if
the input matches at least one of the patterns.
�patterns�strr �Nonec �D � t � |� � | _ d S r )�dict�fromkeys� _patterns)�selfr s r �__init__z_Filter.__init__J s � ����x�0�0����r �itemr c �D �� t �fd�| j D � � � � S )Nc 3 �8 �K � | ]}t �|� � V � �d S r r )�.0�patr( s �r � <genexpr>z#_Filter.__call__.<locals>.<genexpr>N s- �� � � �D�D�c�;�t�S�)�)�D�D�D�D�D�Dr )�anyr% �r&