Your IP : 216.73.216.213


Current Path : /opt/alt/python37/lib64/python3.7/site-packages/Cython/Build/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib64/python3.7/site-packages/Cython/Build/__pycache__/Inline.cpython-37.pyc

B

Z��Z 0�@s$ddlmZddlZddlZddlZddlZddlZyddlZWnek
r\ddl	ZYnXddl
mZmZddl
mZddlZddlmZmZmZddlmZmZmZmZddlmZdd	lmZd
dlmZmZm Z ddl!m"Z"m#Z#dd
l$m%Z%ddl&Z'ej(dkZ)ej(ddk�r"dd�Z*ndd�Z*Gdd�dee�Z+e d4dd��Z,d5dd�Z-d6dd�Z.dd�Z/e dd��Z0iZ1e0d �Z2d7d!d"�Z3e-ej4�5e%�d#�dd$d$ddfd%d&�Z6de6_7e�8d'�j9Z:d(d)�Z;e�8d*�Z<d+d,�Z=ydd-lm>Z>Wnek
�rd.d/�Z>YnXd0d1�Z?Gd2d3�d3e@�ZAdS)8�)�absolute_importN)�Distribution�	Extension)�	build_ext�)�Context�CompilationOptions�default_options)�CythonTransform�SkipDeclarations�AnalyseDeclarationsTransform�EnvTransform)�parse_from_strings)�_unicode�)�strip_string_literals�	cythonize�cached_function)�Pipeline�Nodes)�get_cython_cache_dir)�rrcCst|t�r|�d�S|SdS)N�ascii)�
isinstance�bytes�decode)�s�r�F/opt/alt/python37/lib64/python3.7/site-packages/Cython/Build/Inline.py�
to_unicodes

rcCs|S)Nr)�xrrr�<lambda>$�r!cs,eZdZdd�Zdd�Z�fdd�Z�ZS)�UnboundSymbolscCst�|d�t�|_dS)N)r
�__init__�set�unbound)�selfrrrr$(szUnboundSymbols.__init__cCs"|���|j�s|j�|j�|S)N)Zcurrent_env�lookup�namer&�add)r'�noderrr�visit_NameNode+szUnboundSymbols.visit_NameNodecstt|��|�|jS)N)�superr#�__call__r&)r'r+)�	__class__rrr./szUnboundSymbols.__call__)�__name__�
__module__�__qualname__r$r,r.�
__classcell__rr)r/rr#'sr#cCs�t|�}|dkrtgt�}ddlm}td|�}x2t�|d�D]"}|dkrLq>||�}t||�r>Pq>Wyddl	}Wnt
k
r�ddl}YnXtt
�|�tt|���S)Nr)rz(tree fragment)Zpyxr)rrr	�Compiler.ParseTreeTransformsrrrZcreate_pipeliner�builtins�ImportError�__builtin__�tupler#r%�dir)�code�contextr�treeZphaser5rrr�unbound_symbols4s 


r=cCs"t|�}|tkrdSt||�SdS)N�long)�type�int�	safe_type)�argr;�py_typerrr�unsafe_typeHsrDcCs�t|�}|ttttfkr|jS|tkr*dS|tkr6dS|tkrBdSdt	j
krpt|t	j
dj�rpd|j
j|jfSxT|��D]H}|jdkr�dS|j|jdd	�}|rz|�|j�}|jrzd
|j|jfSqzWdSdS)Nzdouble complex�double�bint�numpyz"numpy.ndarray[numpy.%s_t, ndim=%s])r7r5�objectF)Zneed_pxdz%s.%s)r?�listr8�dict�strr0�complex�float�bool�sys�modulesrZndarray�dtyper)�ndim�mror1�find_moduler(Zis_type)rBr;rC�	base_type�module�entryrrrrAPs(
rAcCs,t�}|��}|�|�t|�}|��|S)N)r�find_config_files�parse_config_filesr�finalize_options)�distZconfig_files�build_extensionrrr�_get_build_extensionhs
r]cCstt|�t�S)N)rrIr	)�cython_include_dirsrrr�_create_contextssr_)�.cCs�x�|D]~}||kr|dks"|dkrLt��jjj}|dkr>|j}|dkrL|j}||krb||||<q||krx||||<qtd|�qWdS)NzCouldn't find %r)�inspect�currentframe�f_back�f_locals�	f_globals�print)�kwdsr=�locals�globals�symbolZ
calling_framerrr�_populate_unbound{s
rk�inlineFc(s��dkrdd��|r tt|��nt�t�|�}	|	dk	r�t�|	||�t����}
t��fdd�|
D��}t�||f�}|dk	r�dd�|
D�}
||
�S|}t|�}t	|�\}}t
|�}|dkr�t��j
j
j}|dkr�t��j
j
j}y"t|�t|<}	t�|	||�Wn$tk
�r&|�s"td�YnXg}x8t����D](\}}|tk�r:|�d|��|=�q:Wt��}t���fdd�|D��}||tjtjtjf}d	t�t|��d
����}|tj k�r�tj |}�n�d}t!j"dk�r�t#�}|�$d�t!_"t%j&�'||t!j"�}t%j&�(|��s t%�)|�|�s4t%j&�*|��s�g}g}t+�,d�}x`|D]X\}}|�-|�}|�rL|�d
|�.�d�|�.�ddk�rLddl/}|�|�0���qLWt1|�\} }!d�'dd�|D��}"dd�'|�| |"|!d�}#x"|��D]\}}$|#�2||$�}#�q�Wt%j&�'||d�}%t3|%d�}&z|&�4|#�Wd|&�5�Xt6||%g||d�}'|dk�r\t#�}t7|'g|�pldg|d�|_8t%j&�9|%�|_:||_;|�<�t=�>||�}|j?t||f<�fdd�|D�}
|j?|
�S)NcSsdS)NrHr)r rrrr!�r"zcython_inline.<locals>.<lambda>csg|]\}}�|��|f�qSrr)�.0rB�value)�ctx�get_typerr�
<listcomp>�sz!cython_inline.<locals>.<listcomp>cSsg|]}|d�qS)rr)rmrBrrrrq�sz>Could not parse code as a string (to extract unbound symbols).z
cimport cython as %scsg|]}��|��|f�qSrr)rmrB)rorprgrrrq�sZ_cython_inline_zutf-8�z([.\w]+)[.]z
cimport %srrGz, cSsg|]}d|�qS)z%s %sr)rm�arrrrq�szf
%(module_body)s
%(cimports)s
def __invoke(%(params)s):
%(func_body)s
    return locals()
            �
)�cimports�module_body�params�	func_bodyz.pyx�w)r)�sources�include_dirs�extra_compile_argsr`)�include_path�quietcsg|]}�|�qSrr)rmrB)rgrrrq�s)@r_r8�_cython_inline_default_context�_cython_inline_cache�getrk�sorted�itemsrr�strip_common_indentrarbrcrdrer=�AssertionErrorrfrI�
cython_module�appendrO�version_info�
executable�Cython�__version__�hashlib�md5r�encode�	hexdigestrP�
cython_inline�so_extr]�get_ext_filename�os�path�join�exists�makedirs�isfile�re�compile�match�groupsrGZget_include�extract_func_code�replace�open�write�closerr�
extensions�dirname�
build_temp�	build_lib�run�impZload_dynamicZ__invoke)(r:rp�lib_dirr^�forcer~rhrirgZ_unbound_symbols�argsZarg_sigsZinvoke�arg_listZ	orig_code�literalsrur)rB�	arg_names�key�module_namerVr\�module_path�cflagsZc_include_dirsZ	qualifiedr?�_�mrGrvrxrwZmodule_codernZpyx_fileZfh�	extensionr)rorprgrr��s�









r�z[^ ]cCs�d}|��}xD|D]<}t|�}|s$q|��}||dkr:q|dksJ||kr|}qWxJt|�D]>\}}t|�}|r\|r\|||d�dkr�q\||d�||<q\Wd�|�S)N�#rrt)�
splitlines�_find_non_space�start�	enumerater�)r:Z
min_indent�lines�liner��indent�ixrrrr��s"
r�zI^((cdef +(extern|class))|cimport|(from .+ cimport)|(from .+ import +[*]))cCspg}g}|}|�dd�}|�d�}x4|D],}|�d�sJt�|�rF|}n|}|�|�q(Wd�|�dd�|�fS)N�	� rtz    z
    )r��split�
startswith�module_statementr�r�r�)r:rV�function�currentr�r�rrrr�s



r�)�getcallargscOs"i}t�|�\}}}}|dk	r2|t|�d�||<xt||�D]\}}	|	||<q>WxBt|���D]2\}}	||kr`||kr�td|��|�|�||<q`W|dk	r�|||<n|r�tdt|���|dkr�d}t|�t|�}
xDt|�D]8\}}||kr�||
k�r|||
||<q�td|��q�W|S)NzDuplicate argument %sz Unexpected keyword arguments: %srzMissing argument: %s)	ra�
getargspec�len�ziprIr��	TypeError�popr�)�funcZ
arg_valuesZ
kwd_values�allr��varargsrg�defaultsr)rnZ
first_defaultr�rrrr�&s0

r�cCsB|�d�}|dd�dkr.d||dd�S||dd�SdS)N�:��lambdaz	return %sr)�index)�sourcer�rrr�get_bodyBs
r�c@seZdZdd�Zdd�ZdS)�RuntimeCompiledFunctioncCs||_tt�|��|_dS)N)�_fr�ra�	getsource�_body)r'�frrrr$Nsz RuntimeCompiledFunction.__init__cOsZt|jf|�|�}tr6t|jf|jj|jjd�|��St|jf|jj|jjd�|��SdS)N)rhri)r�r��IS_PY3r�r��__globals__Zfunc_globals)r'r�rgr�rrrr.Rs z RuntimeCompiledFunction.__call__N)r0r1r2r$r.rrrrr�Lsr�)N)N)N)NN)B�
__future__rrOr�r�rar�r�r6r��distutils.corerr�distutils.command.build_extrr�Z
Compiler.Mainrrr	r4r
rrr
ZCompiler.TreeFragmentrZCompiler.StringEncodingrZDependenciesrrrZCompilerrrZUtilsr�cythonr�r�r�rr#r=rDrAr]r_r�rrkr�r�r�r�r��searchr�r�r�r�r�r�rHr�rrrr�<module>sX 





m