Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib64/python3.5/site-packages/Cython/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/site-packages/Cython/__pycache__/Shadow.cpython-35.opt-1.pyc



Z��Z!1�@s1ddlmZdZyddlmZWnek
rDeZYnXGdd�de�Zdd�Z	dZ
e�Zd	d
�Zdd�Z
d
d�Zdd�ZGdd�de�ZGdd�de�Ze�ZZZdd�ZZZZZZZZZZZZ Z!Z"Z#dddd�Z$e�Z%dd�e_&e%_'e%_(eZ)Z*Z+Z,Z-da.dd�Z/dd�Z0dd �Z1d!d"�Z2d#d$�Z3d%d&�Z4d'd(�Z5d)d*�Z6ded+d,�Z7Gd-d.�d.e�Z8e8�Z9e8�Z:[8Gd/d0�d0e;�Z<e<d1efi�Z=Gd2d3�d3e=�Z>Gd4d5�d5e>�Z?Gd6d7�d7e?�Z@Gd8d9�d9e>�ZAGd:d;�d;e>�ZBd<d=�ZCd>d?�ZDd@dA�ZEdBdC�ZFGdDdE�dEe>�ZGGdFdG�dGe>�ZHdHdI�ZIdJdK�ZJeGeKdL�ZLyeGeMdM�ZNWn!eOk
rjeGeKdM�ZNYnXeGePdN�ZQeGeRdO�ZSdPdQdRdLdSdMdTdUdVg	ZTdWdXdNgZUdYdZd[d\gZVd]d^d_gZWdTd`dWdadYdbdZdOd[dcijXZYeZ�Z[yddlZ\Wnek
r:ddl\Z\YnXeGe]e\dde�dd�e[dd<[\x�eTD]zZ^eYe^e^�Z_eGeLe_�e[e^<e^dqkrde^j`dV�rdeGeLdee_�e[dfe^<eGeLdge_�e[dhe^<qdWx*eUD]"Z^eGeQeYe^e^��e[e^<q�Wx*eVD]"Z^eGeSeYe^e^��e[e^<qWeGead]�ZbeGdd^�ZceGdd_�ZdxYeTeUeVeWD]EZex<efdidj�D]+Zge[eejheg�e[dkdlegeef<q�Wq|We[dmd�ZieH�ZjZkZleLeNeQeSgZmGdndo�doe�ZnddloZoen�eojpdp<[odS)r�)�absolute_importz0.28.1)�
basestringc@sCeZdZdZdgZdddddd�Zdd�ZdS)	�
_ArrayTypeT�dtypeFNcCsF||_||_||_||_|p3|p3||_||_dS)N)r�ndim�is_c_contig�is_f_contig�inner_contig�broadcasting)�selfrrrrr	r
�r�@/opt/alt/python35/lib64/python3.5/site-packages/Cython/Shadow.py�__init__s				z_ArrayType.__init__cCsSdg|j}|jr&d|d<n|jr9d|d<d|jdj|�fS)N�:z::1�rz%s[%s]z, ���)rrrr�join)rZaxesrrr
�__repr__s	
	
z_ArrayType.__repr__)�__name__�
__module__�__qualname__Zis_arrayZsubtypesrrrrrr
rs
	rcs+Gdd�dt���fdd�}t|t�r�d}xpt|�D]b\}}||�|jr�|s�|dt|�dfkr��d��|jdkrJ|}qJWt|t|�d	|t|�dkd
|dk�St|t�r||�t|dd	t|j��St	||�dS)z�
    Support array type creation by slicing, e.g. double[:, :] specifies
    a 2D strided array of doubles. The syntax is the same as for
    Cython memoryviews.
    c@seZdZdS)z,index_type.<locals>.InvalidTypeSpecificationN)rrrrrrr
�InvalidTypeSpecification,srcs1|js!|js!|jdkr-�d��dS)NrzDOnly a step of 1 may be provided to indicate C or Fortran contiguity)Nr)�start�stop�step)�s)rrr
�verify_slice/s!z index_type.<locals>.verify_sliceNrrzHStep may only be provided once, and only in the first or last dimension.rr)
�	Exception�
isinstance�tuple�	enumerater�lenr�slice�bool�array)Z	base_type�itemrZstep_idx�idxrr)rr
�
index_type&s$
+	


r'FcCs|S)Nr)�xrrr
�_empty_decoratorUsr)cKstS)N)r))Z	arg_typesrrr
�localsXsr*cGstS)N)r))�pathsrrr
�test_assert_path_exists[sr,cGstS)N)r))r+rrr
�test_fail_if_path_exists^sr-c@s4eZdZdd�Zdd�Zdd�ZdS)�_EmptyDecoratorAndManagercCs|S)Nr)rr(rrr
�__call__bsz"_EmptyDecoratorAndManager.__call__cCsdS)Nr)rrrr
�	__enter__dsz#_EmptyDecoratorAndManager.__enter__cCsdS)Nr)r�exc_type�	exc_value�	tracebackrrr
�__exit__fsz"_EmptyDecoratorAndManager.__exit__N)rrrr/r0r4rrrr
r.asr.c@seZdZdS)�
_OptimizationN)rrrrrrr
r5isr5cCst�S)N)r.)�_rrr
�<lambda>rsr7NTcCst�S)N)r.)r6Zcheckrrr
r7tscCst�S)N)r.)�argrrr
r7yscOsCt|t�r;tdkr+ddlmat|||�S|SdS)Nr)�
cython_inline)rr�_cython_inline�Cython.Build.Inliner9)�f�args�kwdsrrr
�inlines
r?cCsddlm}||�S)Nr)�RuntimeCompiledFunction)r;r@)r<r@rrr
�compile�srAcCs$||}|dkr |d7}|S)Nrrr)�a�b�qrrr
�cdiv�s

rEcCs(||}||dkr$||8}|S)Nrr)rBrC�rrrr
�cmod�s

rGcOs5|jdd�t|d�r)||�S|dSdS)NZ	typecheckr/r)�pop�hasattr)�typer=�kwargsrrr
�cast�s
rLcCsdS)Nrr)r8rrr
�sizeof�srMcCs
|jjS)N)�	__class__r)r8rrr
�typeof�srOcCstt|��|g�S)N)�pointerrJ)r8rrr
�address�srQcKsI|dtfkrAt|d�rA|tk	r7||�S|�Sn|SdS)Nr/)�objectrI�_Unspecified)rJ�valuer>rrr
�declare�s
!

rUc@s.eZdZdZdd�Zdd�ZdS)�_nogilz'Support for 'with nogil' statement
    cCsdS)Nr)rrrr
r0�sz_nogil.__enter__cCs
|dkS)Nr)rZ	exc_class�exc�tbrrr
r4�sz_nogil.__exit__N)rrr�__doc__r0r4rrrr
rV�srVc@seZdZdd�ZdS)�CythonMetaTypecCs
t||�S)N)r$)rJ�ixrrr
�__getitem__�szCythonMetaType.__getitem__N)rrrr\rrrr
rZ�srZ�CythonTypeObjectc@seZdZddd�ZdS)�
CythonTypercCs'x t|�D]}t|�}q
W|S)N)�rangerP)r�n�irrr
�_pointer�szCythonType._pointerN)rrrrbrrrr
r^�sr^c@sOeZdZddd�Zdd�Zdd�Zdd	�Zd
d�ZdS)�PointerTypeNcs�t|ttf�r7�fdd�|jD��_nXt|t�re�fdd�|D��_n*|dks}|dkr�g�_nt�dS)Ncs"g|]}t�j|��qSr)rL�	_basetype)�.0rB)rrr
�
<listcomp>�s	z(PointerType.__init__.<locals>.<listcomp>cs"g|]}t�j|��qSr)rLrd)rerB)rrr
rf�s	r)r�	ArrayTyperc�_items�list�
ValueError)rrTr)rr
r�s"zPointerType.__init__cCs#|dkrtd��|j|S)Nrz"negative indexing not allowed in C)�
IndexErrorrh)rr[rrr
r\�szPointerType.__getitem__cCs5|dkrtd��t|j|�|j|<dS)Nrz"negative indexing not allowed in C)rkrLrdrh)rr[rTrrr
�__setitem__�szPointerType.__setitem__cCsL|dkr|jrdSt|�t|�kr6dS|joG|jSdS)NTF)rhrJ)rrTrrr
�__eq__�s
zPointerType.__eq__cCsd|jfS)Nz%s *)rd)rrrr
r�szPointerType.__repr__)rrrrr\rlrmrrrrr
rc�s

rcc@seZdZdd�ZdS)rgcCsdg|j|_dS)N)�_nrh)rrrr
r�szArrayType.__init__N)rrrrrrrr
rg�srgc@s+eZdZedd�Zdd�ZdS)�
StructTypecKs�|tk	r�t|�dkr*td��t|�t|�k	rRtd|��x]|jj�D]\}}t|||�qbWn-x*|j�D]\}}t|||�q�WdS)Nrz-Cannot accept keyword arguments when casting.zCannot cast from %s)rSr!rjrJ�__dict__�items�setattr)r�	cast_from�data�keyrTrrr
rszStructType.__init__cCsC||jkr/t|j||�|j|<ntd|��dS)NzStruct has no member '%s')�_membersrLrp�AttributeError)rrurTrrr
�__setattr__
s zStructType.__setattr__N)rrrrSrrxrrrr
ro�s
roc@s+eZdZedd�Zdd�ZdS)�	UnionTypecKs�|tk	ryt|�dkr*td��t|t�rB|}qt|�t|�krf|j}qtd|��n|}t|�dkr�td��x*|j�D]\}}t	|||�q�WdS)Nrz-Cannot accept keyword arguments when casting.zCannot cast from %srz)Union can only store one field at a time.)
rSr!rjr�dictrJrprwrqrr)rrsrtZdatadictrurTrrr
rs	zUnionType.__init__cCsg|dkr"tj|||�nA||jkrS|t|j||�i|_ntd|��dS)NrpzUnion has no member '%s')r^rxrvrLrprw)rrurTrrr
rx(s
"zUnionType.__setattr__N)rrrrSrrxrrrr
rysrycs G�fdd�dt�}|S)NcseZdZ�ZdS)z pointer.<locals>.PointerInstanceN)rrrrdr)�basetyperr
�PointerInstance1sr|)rc)r{r|r)r{r
rP0srPcs#G��fdd�dt�}|S)NcseZdZ�Z�ZdS)zarray.<locals>.ArrayInstanceN)rrrrdrnr)r{r`rr
�
ArrayInstance6sr})rg)r{r`r}r)r{r`r
r$5sr$csAG�fdd�dt�}x�D]}t||d�q#W|S)NcseZdZ�ZdS)zstruct.<locals>.StructInstanceN)rrrrvr)�membersrr
�StructInstance<sr)rorr)r~rrur)r~r
�struct;s
r�csAG�fdd�dt�}x�D]}t||d�q#W|S)NcseZdZ�ZdS)zunion.<locals>.UnionInstanceN)rrrrvr)r~rr
�
UnionInstanceCsr�)ryrr)r~r�rur)r~r
�unionBs
r�c@s=eZdZddd�Zdd�Zdd�ZeZdS)�typedefNcCs||_||_dS)N)rd�name)rrJr�rrr
rKs	ztypedef.__init__cGst|j|�}|S)N)rLrd)rr8rTrrr
r/Osztypedef.__call__cCs|jpt|j�S)N)r��strrd)rrrr
rSsztypedef.__repr__)rrrrr/rr'r\rrrr
r�Isr�c@seZdZdS)�
_FusedTypeN)rrrrrrr
r�Xsr�cGsh|std��d}xF|D]:}|ttttfkr>Ptj|�|kr|}qW|St�S)Nz&Expected at least one type as argumentrr)�	TypeError�py_int�py_long�py_float�
py_complex�
type_ordering�indexr�)r=ZrankrJZresult_typerrr
�
fused_type\s

r�cCstd��dS)zCPerhaps this should be implemented in a TreeFragment in Cython codezyet to be implementedN)r)Z
signaturesr=rKrrr
�_specialized_from_argsqsr��int�long�floatzdouble complex�charZshort�
Py_UNICODE�Py_UCS4ZlonglongZ
Py_ssize_tZsize_tZ
longdoubleZdoubleZlongdoublecomplexZ
doublecomplexZfloatcomplex�complex�bint�void�Py_tss_tz	long longzlong doublezlong double complexz
float complexZunicodez	unsigned �uzsigned rr�z%s_%s�pZp_voidc@s[eZdZdZdddgZddd�Zddd	dd
dd�Zd
d�ZdS)�CythonDotParallelz%
    The cython.parallel module.
    �parallel�prange�threadidNcCstS)N)�nogil)rZnum_threadsrrr
r��szCythonDotParallel.parallelrrFcCs(|dkr|}d}t|||�S)Nr)r_)rrrrZscheduler�rrr
r��szCythonDotParallel.prangecCsdS)Nrr)rrrr
r��szCythonDotParallel.threadid)rrrrY�__all__r�r�r�rrrr
r��s
r�zcython.parallel)r�r�)qZ
__future__r�__version__Z__builtin__r�ImportErrorr�rRrr'ZcompiledrSr)r*r,r-r.r5ZcclassZccallZcfuncZreturnsZ
wraparoundZboundscheckZinitializedcheckZ	nonecheckZ
overflowcheckZembedsignatureZ	cdivisionZcdivision_warningsZalways_allows_keywordsZprofileZ	linetraceZinfer_typesZunraisable_tracebacksZfreelistZ	exceptval�optimizationZfoldZ
use_switchZunpack_method_calls�finalZinternalZtype_version_tagZno_gc_clearZno_gcr:r?rArErGrLrMrOrQrUrVr�ZgilrJrZr]r^rcrgroryrPr$r�r�r�r�r�r�r�r�r�r��	NameErrorr�r�r�r�Z	int_typesZfloat_typesZ
complex_typesZother_types�getZto_repr�globalsZgs�builtins�getattrr�Zreprname�endswithr#r�r�r��tr_rarbZNULLZintegralZfloating�numericr�r��sys�modulesrrrr
�<module>s�
)	D					!
!	


 
 -