Your IP : 3.145.88.155
U
�Qab� � @ s| d dl Z d dlZd dlZd dlZd dlZd dlmZ ddlm Z dd� Z
e
Ze ejj
�ZG dd� de�Z
G d d
� d
e
�ZdS )� N)�map� )�
get_unpatchedc C s4 d} zt | dgd�j W dS tk
r. Y nX dS )z0
Return True if Cython can be imported.
zCython.Distutils.build_ext� build_ext)�fromlistTF)�
__import__r � Exception)Zcython_impl� r �8/usr/lib/python3.8/site-packages/setuptools/extension.py�_have_cython s r c @ s e Zd ZdZdd� Zdd� ZdS )� Extensionz7Extension that uses '.c' files in place of '.pyx' filesc O s( |� dd�| _tj| ||f|�|� d S )N�py_limited_apiF)�popr
�
_Extension�__init__)�self�name�sources�args�kwr r r
r # s zExtension.__init__c C sN t � r
dS | jpd}|�� dkr$dnd}t�tjd|�}tt|| j ��| _ dS )z�
Replace sources with .pyx extensions to sources with the target
language extension. This mechanism allows language authors to supply
pre-converted sources but to prefer the .pyx sources.
N� zc++z.cppz.cz.pyx$)
r Zlanguage�lower� functools�partial�re�sub�listr r )r ZlangZ
target_extr r r r
�_convert_pyx_sources_to_lang) s
z&Extension._convert_pyx_sources_to_langN)�__name__�
__module__�__qualname__�__doc__r r r r r r
r s r c @ s e Zd ZdZdS )�Libraryz=Just like a regular Extension, but built as a library insteadN)r r r r! r r r r
r"