§
    2@ÄjR  ã                   ód   — d dl Z d dlmZ  G d„ de¦  «        Zedk    r e j        ¦   «          dS dS )é    N)ÚTestCasec                   ó   — e Zd Zd„ Zd„ ZdS )ÚDocsJitclassUsageTestc                 ó¬  ‡— dd l Šddlm}m} ddlm} d|fd|d d …         fg} ||¦  «         G ˆfd„dt          ¦  «        ¦   «         }d} ||¦  «        }|                      t          ||¦  «        ¦  «         |  	                    |j
        |¦  «         ‰j                             |j        ‰                     |‰j        ¬	¦  «        ¦  «         |  	                    |j        |¦  «         ‰j                             |                     d
¦  «        d
‰                     |‰j        ¬	¦  «        z  ¦  «         ‰j                             |                     d¦  «        d‰                     |‰j        ¬	¦  «        z  ¦  «         |  	                    |                     dd¦  «        d¦  «         |  	                    |                     dd¦  «        d
¦  «         d S )Nr   )Úint32Úfloat32©ÚjitclassÚvalueÚarrayc                   óL   •— e Zd Zˆ fd„Zed„ ¦   «         Zd„ Zed„ ¦   «         ZdS )ú3DocsJitclassUsageTest.test_ex_jitclass.<locals>.Bagc                 óX   •— || _         ‰                     |‰j        ¬¦  «        | _        d S )N©Údtype)r   Úzerosr   r   )Úselfr   Únps     €úWC:\Projects\Historical\venv\Lib\site-packages\numba/tests/doc_examples/test_jitclass.pyÚ__init__z<DocsJitclassUsageTest.test_ex_jitclass.<locals>.Bag.__init__   s'   ø€ Ø"�”
ØŸXšX e°2´:˜XÑ>Ô>�”
�
�
ó    c                 ó   — | j         j        S ©N)r   Úsize©r   s    r   r   z8DocsJitclassUsageTest.test_ex_jitclass.<locals>.Bag.size   s   € à”z”Ð&r   c                 óh   — t          | j        ¦  «        D ]}| j        |xx         |z  cc<   Œ| j        S r   )Úranger   r   )r   ÚvalÚis      r   Ú	incrementz=DocsJitclassUsageTest.test_ex_jitclass.<locals>.Bag.increment   s=   € Ý˜tœyÑ)Ô)ð )ð )�AØ”J˜q�M�M”M SÑ(�M�M‘M�MØ”zÐ!r   c                 ó   — | |z   S r   © )ÚxÚys     r   Úaddz7DocsJitclassUsageTest.test_ex_jitclass.<locals>.Bag.add$   s   € à˜1‘u�r   N)	Ú__name__Ú
__module__Ú__qualname__r   Úpropertyr   r    Ústaticmethodr%   )r   s   €r   ÚBagr      ss   ø€ € € € € ð?ð ?ð ?ð ?ð ?ð ð'ð 'ñ ŒXð'ð"ð "ð "ð
 ðð ñ Œ\ðð ð r   r+   é   r   é   é   é	   é   é   )ÚnumpyÚnumbar   r   Únumba.experimentalr
   ÚobjectÚ
assertTrueÚ
isinstanceÚassertPreciseEqualr   ÚtestingÚassert_allcloser   r   r   r    Úonesr%   )	r   r   r   r
   Úspecr+   ÚnÚmybagr   s	           @r   Útest_ex_jitclassz&DocsJitclassUsageTest.test_ex_jitclass
   s  ø€ àÐÐÐØ(Ð(Ð(Ð(Ð(Ð(Ð(Ð(Ø/Ð/Ð/Ð/Ð/Ð/ð �eÐØ�g˜a˜a˜a”jÐ!ð
ˆð
 
ˆ�$‰Œð	ð 	ð 	ð 	ð 	ð 	ð 	•&ñ 	ô 	ñ 
Œð	ð$ ˆØ��A‘”ˆð 	�Š�
 5¨#Ñ.Ô.Ñ/Ô/Ð/Ø×Ò ¤¨QÑ/Ô/Ð/Ø
Œ
×"Ò" 5¤;°·²¸À"Ä*°Ñ0MÔ0MÑNÔNÐNØ×Ò ¤
¨AÑ.Ô.Ð.Ø
Œ
×"Ò" 5§?¢?°1Ñ#5Ô#5Ø#$ r§w¢w¨q¸¼
 wÑ'CÔ'CÑ#Cñ	Eô 	Eð 	Eà
Œ
×"Ò" 5§?¢?°1Ñ#5Ô#5Ø#$ r§w¢w¨q¸¼
 wÑ'CÔ'CÑ#Cñ	Eô 	Eð 	Eà×Ò §	¢	¨!¨Q¡¤°Ñ3Ô3Ð3Ø×Ò §¢¨¨1¡¤¨qÑ1Ô1Ð1Ð1Ð1r   c           	      óÞ  ‡‡— ddl mŠ ddlm} ddlm} | G d„ d¦  «        ¦   «         Š| G ˆˆfd„d¦  «        ¦   «         } |g d¢¦  «        } ||¦  «        }t          d	¦  «        D ]ƒ}|                      |j        j        |¦  «         |  	                    | 
                    ¦   «         ||t          |¦  «        z           ¦  «         |                      |j        j        |d
z   ¦  «         Œ„d S )Nr   )ÚListr	   c                   ó,   — e Zd ZU eed<   d„ Zdefd„ZdS )úBDocsJitclassUsageTest.test_ex_jitclass_type_hints.<locals>.Counterr   c                 ó   — d| _         d S )Nr   ©r   r   s    r   r   zKDocsJitclassUsageTest.test_ex_jitclass_type_hints.<locals>.Counter.__init__A   s   € Ø�”
�
�
r   Úreturnc                 ó4   — | j         }| xj         dz  c_         |S )Nr0   rE   )r   Úrets     r   ÚgetzFDocsJitclassUsageTest.test_ex_jitclass_type_hints.<locals>.Counter.getD   s   € Ø”j�Ø�
”
˜a‘�
”
Ø�
r   N)r&   r'   r(   ÚintÚ__annotations__r   rI   r"   r   r   ÚCounterrC   =   sI   € € € € € € àˆJˆJ‰Jðð ð ð˜Sð ð ð ð ð ð r   rL   c                   óZ   •— e Zd ZU ” ed<   ”e         ed<   d”e         fˆ fd„Zdefd„ZdS )úKDocsJitclassUsageTest.test_ex_jitclass_type_hints.<locals>.ListLoopIteratorÚcounterÚitemsc                 ó4   •— || _          ‰¦   «         | _        d S r   )rP   rO   )r   rP   rL   s     €r   r   zTDocsJitclassUsageTest.test_ex_jitclass_type_hints.<locals>.ListLoopIterator.__init__N   s   ø€ Ø"�”
Ø&˜w™yœy�”��r   rF   c                 óx   — | j                              ¦   «         t          | j        ¦  «        z  }| j        |         S r   )rO   rI   ÚlenrP   )r   Úidxs     r   rI   zODocsJitclassUsageTest.test_ex_jitclass_type_hints.<locals>.ListLoopIterator.getR   s.   € Ø”l×&Ò&Ñ(Ô(­3¨t¬z©?¬?Ñ:�Ø”z #”Ð&r   N)r&   r'   r(   rK   Úfloatr   rI   )rL   rA   s   €€r   ÚListLoopIteratorrN   I   sw   ø€ € € € € € àÐÐÑØ˜”;ÐÐÑð) d¨5¤kð )ð )ð )ð )ð )ð )ð'˜Uð 'ð 'ð 'ð 'ð 'ð 'r   rV   )g…ëQ¸	@gX9´Èv¾@g°rh‘í|¿?g      Àé
   r0   )ÚtypingrA   r4   r
   Únumba.typedr   ÚassertEqualrO   r   ÚassertAlmostEqualrI   rS   )	r   r
   Ú	NumbaListrV   rP   Úloop_itrrT   rL   rA   s	          @@r   Útest_ex_jitclass_type_hintsz1DocsJitclassUsageTest.test_ex_jitclass_type_hints7   se  øø€ àÐÐÐÐÐØ/Ð/Ð/Ð/Ð/Ð/Ø1Ð1Ð1Ð1Ð1Ð1à	ð		ð 		ð 		ð 		ð 		ñ 		ô 		ñ 
Œð		ð 
ð
	'ð 
	'ð 
	'ð 
	'ð 
	'ð 
	'ð 
	'ð 
	'ñ 
	'ô 
	'ñ 
Œð
	'ð �	Ð3Ð3Ð3Ñ4Ô4ˆØ#Ð# EÑ*Ô*ˆõ ˜‘9”9ð 	>ð 	>ˆCØ×Ò˜XÔ-Ô3°SÑ9Ô9Ð9Ø×"Ò" 8§<¢<¡>¤>°5¸½sÀ5¹z¼zÑ9IÔ3JÑKÔKÐKØ×Ò˜XÔ-Ô3°S¸1±WÑ=Ô=Ð=Ð=ð	>ð 	>r   N)r&   r'   r(   r?   r^   r"   r   r   r   r      s3   € € € € € ð+2ð +2ð +2ðZ&>ð &>ð &>ð &>ð &>r   r   Ú__main__)ÚunittestÚnumba.tests.supportr   r   r&   Úmainr"   r   r   ú<module>rc      s{   ðð €€€Ø (Ð (Ð (Ð (Ð (Ð (ðU>ð U>ð U>ð U>ð U>˜Hñ U>ô U>ð U>ðp ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   