ó 2ÄÈ[c@`s¡ddlmZmZmZddlZddlZddlZddlZddlm Z m Z m Z m Z m Z mZmZddlmZmZmZddlmZddlmZead„Zd „Zd „Zd efd „ƒYZeƒZd dddddddddddddgZ id gd 6Z!e!d dge!ds   !cC`s8|jƒ}|dkr!d}n|j|j|gƒS(Ntin_tin(tlowert __class__R9(R<tname((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt __getattr__Hs   cC`sddj|jƒS(Ns intent(%s)t,(RR9(R<((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt__str__NscC`s d|jS(Ns Intent(%r)(R9(R<((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt__repr__QscG`s(x!|D]}||jkrtSqWtS(N(R9tFalsetTrue(R<tnamesRC((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt is_intentTs cG`s(t|jƒt|ƒko'|j|ŒS(N(tlenR9RK(R<RJ((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pytis_intent_exactZs(t__name__t __module__R>RDRFRGRKRM(((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyR6<s     tBOOLtBYTEtUBYTEtSHORTtUSHORTtINTtUINTtLONGtULONGtLONGLONGt ULONGLONGtFLOATtDOUBLEtCFLOATiitwin32t LONGDOUBLEtCDOUBLEt CLONGDOUBLEtTypecB`sMeZiZd„Zd„Zd„Zd„Zd„Zd„Zd„Z RS(cC`sÅt|tƒrg|}d}xItjƒD]8\}}t|tƒ r(|j|jkr(|}Pq(q(Wn|jj|jƒdƒ}|dk r’|St j |ƒ}|j |ƒ||j|jƒ<|S(N( t isinstanceRRR titemsttypet _type_cachetgetR;tobjectt__new__t_init(tclsRCtdtype0tnR=tobj((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyRi‰s"   cC`st|jƒ|_t|j}ttd|jƒ|_t|j|jƒ|j|_ |j d|_ |j |_ dS(NtNPY_i(R;tNAMER R2Rttype_numR tnumReRtbitstelsizetchart dtypechar(R<RCR4((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyRj™s  cC`s'gt|jD]}|j|ƒ^qS(N(t _cast_dictRpRB(R<t_m((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt cast_types¢scC`s gtD]}|j|ƒ^qS(N(t _type_namesRB(R<Rx((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt all_types¥scC`sTt|jj}g}x7tD]/}t|j|kr|jt|ƒƒqqW|S(N(R Rpt alignmentRzR3Rb(R<RsttypesRC((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt smaller_types¨s  cC`sit|jj}g}xLtD]D}||jkr8qnt|j|kr|jt|ƒƒqqW|S(N(R RpR|RzR3Rb(R<RsR}RC((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt equal_types°s cC`sTt|jj}g}x7tD]/}t|j|kr|jt|ƒƒqqW|S(N(R RpR|RzR3Rb(R<RsR}RC((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt larger_typesºs  ( RNRORfRiRjRyR{R~RR€(((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyRb†s     tArraycB`s,eZd„Zd„Zd„Zd„ZRS(c C`sÀ||_||_||_tj|ƒ|_||_tj|j ||j |ƒ|_ t t |j tƒtt|j ƒƒƒtj|j ƒ|_t|ƒdkr‹|jjdƒr2t |j tj@ƒt |j j d t|j j t|ddƒfƒƒt |j j dƒt |jdtj@ ƒq‹t |j tj@ ƒt |j j dƒt |j j d ƒt |jdtj@ƒn|dkr­d|_d|_dS|jdƒrÿt t |tƒtt|ƒƒƒt|ƒj|Œjƒ|_nptt|d|jƒj|Œd |jjdƒr8d p;d ƒ|_t |jj|kt|jj|fƒƒt |jj d ||fƒtj|jƒ|_t|ƒdkrN|jjdƒr t |jj d ƒt |jj dƒt |jdtj@ ƒqNt |jj dƒt |jj d ƒt |jdtj@ƒnt |jd|jdkƒt |jd |jd kƒ|jddkrót |jd|jdkt|jd|jd|j jƒ|jjƒfƒƒnt |jdd|jddkt|jd|jdfƒƒt |jd|jdkt|jd|jdtd|jd|jdƒt|jdƒ|fƒƒ|jdƒröt |jdd|jj kt|jdd|jj fƒƒnAt |jdd|jj kt|jdd|jj fƒƒt |j!|j|j ƒƒt |jtƒr¼|j t"|jƒj kr¼|jdƒ r¹|jddkr¹t |j#ƒƒq¹q¼ndS(NitcR$R!R#itcacheRtordertCtFR%iiiiþÿÿÿitcopy($RetdimstintentR‡tdeepcopytobj_copyRnRtcallRqR!R R RcRtreprRtarr_attrRLRKt F2PY_INTENT_CR2RR$tpyarrt pyarr_attrRtreshapeRvRttobytesRRtt arr_equalRbthas_shared_memory(R<ttypRˆR‰Rn((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyR>Ås|    !(%   "!!$%"!'$#cC`s2|j|jkrtS||k}t|jƒƒS(N(tshapeRHRtflatten(R<tarr1tarr2ts((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyR”s cC`s t|jƒS(N(tstrR (R<((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyRFscC`sS|j|jkrtSt|jtƒs,tStj|jƒ}|d|jdkS(s?Check that created array shares data with input array. i( RnR RIRcRRHRRRŽ(R<tobj_attr((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyR•s (RNROR>R”RFR•(((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyRÃs O  t TestIntentcB`seZd„ZRS(cC`sŸtttjjƒdƒttjjjdƒƒttjjjdƒ ƒttjjjddƒƒttjjjddƒƒttjjdƒ ƒdS(Nsintent(in,out)R‚R@( R RœR‰R?toutR R‚RKRM(R<((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt test_in_out*s (RNROR (((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyRž(st_test_shared_memorycB`sïeZddgZdddgdddggZd„Zd„Zd„Zd „Zd „Zd „Z d „Z d „Z d„Z d„Z d„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„ZRS(iiiiiicC`s3|jdgtj|jƒ}t|jƒ ƒdS(Ni(RR‰R?tnum2seqR R•(R<ta((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_in_from_2seq7scC`s·x°|jjƒD]Ÿ}t|jd|jƒ}|jt|jƒgtj|ƒ}|j|jjkr’t |j ƒt |jj|jfƒƒqt |j ƒ t |jƒƒqWdS(NR( ReRyRR¢RRLR‰R?RtR R•R(R<ttRnR£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_in_from_2casttype;s$(cC`sµt|jd|jjƒ}|jt|jƒgtj|ƒ}t|jƒƒy%|jdgtj j|jƒ}Wn.t k r¤}t |ƒj dƒs±‚q±n Xt dƒ‚dS(NRis6failed to initialize intent(inout|inplace|cache) arrays,intent(inout) should have failed on sequence(RR¢ReRRLR‰tinoutR R•R?t TypeErrorRœt startswitht SystemError(R<RnR£tmsg((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_inout_2seqEs$% cC`st|jd|jjddƒ}t|jƒt|jdƒf}|j|tjj|ƒ}t|j ƒƒt|jd|jjddƒ}t|jƒt|jdƒf}y|j|tjj|ƒ}Wn.t k r}t |ƒj dƒs ‚q n Xt dƒ‚dS(NRR„R†iR…s(failed to initialize intent(inout) arrays2intent(inout) should have failed on improper array(Rtnum23seqReRRLR‰R?R§R R•t ValueErrorRœR©Rª(R<RnR—R£R«((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_f_inout_23seqSs!"!" cC`sot|jd|jjƒ}t|jƒt|jdƒf}|j|tjjj|ƒ}t |j ƒƒdS(NRi( RR­ReRRLR‰R?R‚R§R R•(R<RnR—R£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_c_inout_23seqes"cC`szxs|jjƒD]b}t|jd|jƒ}|jt|jƒgtjj|ƒ}t |j ƒ t |jƒƒqWdS(NR( ReRyRR¢RRLR‰R?R‡R R•R(R<R¥RnR£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_in_copy_from_2casttypeks'cC`sL|jt|jƒt|jdƒgtj|jƒ}t|jƒ ƒdS(Ni(RRLR­R‰R?R R•(R<R£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_c_in_from_23seqqs%cC`s‡x€|jjƒD]o}t|jd|jƒ}|jt|jƒt|jdƒgtj|ƒ}t|j ƒ t |jƒƒqWdS(NRi( ReRyRR­RRLR‰R?R R•R(R<R¥RnR£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_in_from_23casttypevs %cC`sÁxº|jjƒD]©}t|jd|jddƒ}|jt|jƒt|jdƒgtj|ƒ}|j|jjkrœt |j ƒt |jƒƒqt |j ƒ t |jƒƒqWdS(NRR„R†i( ReRyRR­RRLR‰R?RtR R•R(R<R¥RnR£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_f_in_from_23casttype}s%cC`s¾x·|jjƒD]¦}t|jd|jƒ}|jt|jƒt|jdƒgtjj|ƒ}|j |jj kr™t |j ƒt |jƒƒqt |j ƒ t |jƒƒqWdS(NRi( ReRyRR­RRLR‰R?R‚RtR R•R(R<R¥RnR£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_c_in_from_23casttype‡s%cC`sx‰|jjƒD]x}t|jd|jddƒ}|jt|jƒt|jdƒgtjj|ƒ}t |j ƒ t |jƒƒqWdS(NRR„R†i( ReRyRR­RRLR‰R?R‡R R•R(R<R¥RnR£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_f_copy_in_from_23casttype‘s %cC`sx†|jjƒD]u}t|jd|jƒ}|jt|jƒt|jdƒgtjjj |ƒ}t |j ƒ t |jƒƒqWdS(NRi( ReRyRR­RRLR‰R?R‚R‡R R•R(R<R¥RnR£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_c_copy_in_from_23casttype˜s %cC`sÌxÅ|jjƒD]´}|j|jjkr1qnt|jd|jƒ}t|jƒf}|j|tjj j |ƒ}t |j ƒt |jƒƒ|j|tjj |ƒ}t |j ƒt |jƒƒt|jd|jddƒ}|j|tjj j |ƒ}t |j ƒt |jƒƒ|j|tjj |ƒ}t |j ƒt |jƒƒy,|j|tjj |ddd…ƒ}Wn.tk r·}t|ƒjdƒsÄ‚qÄqXtdƒ‚qWdS(NRR„R†iÿÿÿÿs(failed to initialize intent(cache) arrays8intent(cache) should have failed on multisegmented array(ReR{RtRR¢RRLR‰R?R‚RƒR R•RR®RœR©Rª(R<R¥RnR—R£R«((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_in_cache_from_2casttypeŸs*, cC`s½x¶|jjƒD]¥}|j|jjkr1qnt|jd|jƒ}t|jƒf}y|j|tjj |ƒWn.t k r¨}t |ƒj dƒsµ‚qµqXt dƒ‚qWdS(NRs(failed to initialize intent(cache) arrays1intent(cache) should have failed on smaller array(ReR{RtRR¢RRLR‰R?RƒR®RœR©Rª(R<R¥RnR—R«((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt$test_in_cache_from_2casttype_failure¼s cC`sÔd}|j|tjjdƒ}t|jj|kƒd}|j|tjjdƒ}t|jj|kƒd}y|j|tjjdƒ}Wn.tk rÃ}t |ƒj dƒsЂqÐn Xt dƒ‚dS( Niiiÿÿÿÿs2failed to create intent(cache|hide)|optional arrays8intent(cache) should have failed on undefined dimensions(i(ii(iÿÿÿÿi( RR‰RƒthideRR R R—R®RœR©Rª(R<R—R£R«((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_cache_hiddenÌs cC`sÍd }|j|tjdƒ}t|jj|kƒt|j|jt|d|j j ƒƒƒd }|j|tjdƒ}t|jj|kƒt|j|jt|d|j j ƒƒƒt|jj doß|jj d ƒd }|j|tj jdƒ}t|jj|kƒt|j|jt|d|j j ƒƒƒt|jj d of|jj dƒd }y|j|tjdƒ}Wn.t k r¼}t|ƒjdƒsÉ‚qÉn Xtdƒ‚dS( NiRiR$R#iÿÿÿÿs2failed to create intent(cache|hide)|optional arrays7intent(hide) should have failed on undefined dimensions(i(ii(ii(iÿÿÿÿi(RR‰RºRR R R—R”RReRR!R‚R®RœR©Rª(R<R—R£R«((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyt test_hiddenàs*++%+% cC`snd}|j|tjdƒ}t|jj|kƒt|j|jt|d|j j ƒƒƒd}|j|tjdƒ}t|jj|kƒt|j|jt|d|j j ƒƒƒt|jj doß|jj d ƒd}|j|tj jdƒ}t|jj|kƒt|j|jt|d|j j ƒƒƒt|jj d of|jj dƒdS( NiRiR$R#(i(ii(ii( RR‰R7RR R R—R”RReRR!R‚(R<R—R£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_optional_noneýs++%+cC`s[|j}t|ƒf}|j|tj|ƒ}t|jj|kƒt|jƒ ƒdS(N( R¢RLRR‰R7R R R—R•(R<RnR—R£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_optional_from_2seqs  cC`sª|j}t|ƒt|dƒf}|j|tj|ƒ}t|jj|kƒt|jƒ ƒ|j|tjj |ƒ}t|jj|kƒt|jƒ ƒdS(Ni( R­RLRR‰R7R R R—R•R‚(R<RnR—R£((sE/tmp/pip-build-fiC0ax/numpy/numpy/f2py/tests/test_array_from_pyobj.pyttest_optional_from_23seqs cC`s2t|jd|jjƒ}t|jd o6|jdƒ|j}|j|tj|ƒ}t|dd|j ddkt ||j fƒƒd|j dds`    4   !    *=e ÿ