o
    1&i;                     @   sN  d Z ddlZddlZddlmZ ddlmZmZm	Z	 ddl
mZmZmZmZmZ ddlmZ ddlmZ edZejd	ks@J e	jrNejejd	d
ddZn
ejejd	d
ddZedZejZejejejde Z ej!ej"ej#de Z$dd Z%edd Z&edd Z'edd Z(edddd Z)edd Z*edddd Z+edd  Z,ed!d" Z-d#d$ Z.d%d& Z/d'd( Z0d)d* Z1ed+d, Z2eejej3d-d. Z4d/d0 Z5eej3ejd1d2 Z6eej7ejd3d4 Z8ed5d6 Z9eej7ej:d7d8 Z;eej<d9d: Z=ee>d;d< Z?eej@eejAd=d> ZBeejCd?d@ ZDeejEdAdB ZFeejGdCdD ZHeejIdEdF ZJeejKdGdH ZLeejMdIdJ ZNeejOdKdL ZPeejQdMdN ZReejSdOdP ZTeej:dQeej3dQeejdQdRdS ZUeej:dTeej3dTdUdV ZVeej7dWdXdY ZWeej3dZeejdZd[d\ ZXeej:d]d^d_ ZYeeZd`da Z[eej:dbdcdd Z\eej3dbdedf Z]eej:dgdhdi Z^eej3dgdjdk Z_eej:dldmdn Z`eej3dldodp Zaeej:dqeej3dqeejdqdrds Zbeej:dteej3dteejdtdudv Zceej:dweej3dweejdwdxdy Zdeej:dzeej3dzeejdzd{d| Zeed}d~ Zfeej:deej3deejddddZgeej:deej3deejddddZheej:deej3deejddddZieej:deej3deejddddZjeej:deej3deejddd Zkeej:deej3deejddddZleej:deej3deejddddZmeej:deej3deejddddZneej:deej3deejddd ZodS )z=Implements operations on bytes and str (unicode) array items.    N)ir)typescgutilsconfig)overload	intrinsicoverload_method
lower_castregister_jitable)is_nonelike)unicodeZS1   CT)readonlyZU1)r         c                    s    fdd}|S )Nc           	         sR   |\}}t j||d}||t  }||||g}||tdS )Nvalue    )	r   alloca_once_valuebitcastr   IntType
as_pointerloadgepzext)	contextbuilder	signatureargsdataidxrawptrptrchbitsize @C:\wamp64\www\opt\env\Lib\site-packages\numba/cpython/charseq.pycodegen(   s
   z#make_deref_codegen.<locals>.codegenr'   )r&   r)   r'   r%   r(   make_deref_codegen'   s   r*   c                 C      t |t j}|tdfS )N   r   uint32Zintpr*   	typingctxr    offsetsigr'   r'   r(   deref_uint81      r3   c                 C   r+   )N   r-   r/   r'   r'   r(   deref_uint167   r4   r6   c                 C   r+   )Nr   r-   r/   r'   r'   r(   deref_uint32=   r4   r7   F)Z_nrtc                 C   s
   t | |S )z6Access i-th item of CharSeq object via code value
    )r3   air'   r'   r(   charseq_get_codeC   s   
r;   c                 C   s   t | |}|dkrtd|S )zcAccess i-th item of CharSeq object via code value.

    null code is interpreted as IndexError
    r   index out of range)r;   
IndexErrorr9   r:   coder'   r'   r(   charseq_get_valueJ   s   
r@   c                 C   s>   t dkr	t| |S t dkrt| |S t dkrt| |S td)z=Access i-th item of UnicodeCharSeq object via code value
    r   r   r   z=unicode_charseq_get_code: unicode_byte_width not in [1, 2, 4])unicode_byte_widthr7   r6   r3   NotImplementedErrorr8   r'   r'   r(   unicode_charseq_get_codeV   s   


rC   c                 C   s   t | |S )z,Access i-th item of UnicodeType object.
    )r   Z_get_code_pointr8   r'   r'   r(   unicode_get_codee   s   rD   c                 C   s   | | S )z*Access i-th item of Bytes object.
        r'   r8   r'   r'   r(   bytes_get_codel   s   rE   c                 C   sD   t | tjrtS t | tjrtS t | tjrtS t | tjr t	S d S N)

isinstancer   CharSeqr;   BytesrE   UnicodeCharSeqrC   UnicodeTyperD   r9   r'   r'   r(   _get_code_impls   s   rM   c                 C   s<   t jt jft jt jffD ]}t| |rt||r dS qdS )NTF)r   rH   rI   rJ   rK   rG   )r9   btr'   r'   r(   
_same_kind~   s   

rP   c                 C   s   t | tjtjfS rF   )rG   r   rH   rI   rL   r'   r'   r(   	_is_bytes      rQ   c                 C   s   | |kp	t | tjS rF   )rG   r   Omitted)xdefaultr'   r'   r(   
is_default      rV   c                 C   s0   t | |}|dkrtdt|ttd S )zlAccess i-th item of UnicodeCharSeq object via unicode value

    null code is interpreted as IndexError
    r   r<   r'   )rC   r=   nparrayunicode_uintviewu1_dtyper>   r'   r'   r(   unicode_charseq_get_value   s   
r]   c              	   C   sD  t || ||d}||jtd }|j}| |}td}	t 	||}
||
|	 }t
|j|j}|d||}||||}|| t ||t
|j|jd W d    n1 sew   Y  t ||%}|||jg}||||	}|||||jg W d    n1 sw   Y  ||
S )Nr   r,   <r   )r   create_struct_proxyr   r    r   r   r   nitemsget_value_typealloca_onceConstanttypecounticmp_unsignedselectif_thenmemset	for_ranger   indexr   r   store)r   r   fromtytotyvalZbarrsrc
src_lengthltydstint_tdst_ptrdst
dst_lengthis_shorter_valuere   loopin_ptrin_valr'   r'   r(   bytes_to_charseq   s2   


r{   c                 C   s   t t}|| |}t|trt|jj|}| j	
|||_||_t|jjd|_| j	||j|_t |jj|_t |jj|_t |jj|_|S Nr   )r   r_   
bytes_typerG   intr   rc   r`   rd   ZnrtZmeminfo_allocZmeminfoitemsizeZmeminfo_datar    Zget_null_valueparentshapestrides)r   r   nbytesZ	bstr_ctorbstrr'   r'   r(   _make_constant_bytes   s   


r   c                 C   sF   t | ||jj}tj||d}|||jj}t||j||j |S )Nr   )	r   rd   re   r   r   r   r    memcpyr`   )r   r   rm   rn   ro   r   r"   r#   r'   r'   r(   charseq_to_bytes   s
   r   c           
      C   s   t || ||d}||jtd }|d|jt	|jj
d}|j}|| | j|td W d    n1 s?w   Y  t| ||}	t ||	j||	j |	S )Nr   r,   z!=r   )z3cannot cast higher than 8-bit unicode_type to bytes)r   r_   r   r    r   r   r   rf   kindrc   rd   lengthrh   	call_convreturn_user_exc
ValueErrorr   r   r`   )
r   r   rm   rn   ro   uni_strsrc1Znotkind1rq   r   r'   r'   r(   unicode_to_bytes_cast   s   
r   c                    s*    t jksJ t } fdd}||fS )Nc                    s   t | | t|d  S Nr   )r   r}   Z	_getvalue)r   r   r   r   sr'   r(   r)      s
   z"_unicode_to_bytes.<locals>.codegen)r   Zunicode_typer}   )r0   r   r2   r)   r'   r   r(   _unicode_to_bytes   s   r   c              
   C   sr  t || ||d}||jtd }||jtd }||jtd }|d|jt	|jj
d}	|d|jt	|jj
d}
|d|jt	|jj
d}|j}| |}tdt }t ||}||| }t	|j
|j}|d	||}||||}|| t ||t	|j
|jt d
 W d    n1 sw   Y  ||	; t ||%}|||jg}||||}|||||jg W d    n1 sw   Y  W d    n1 sw   Y  ||
P tdkr8t ||%}|||jg}||||}|||||jg W d    n	1 s2w   Y  n| j|tdtd |f  W d    n	1 sQw   Y  ||P tdkrt ||%}|||jg}||||}|||||jg W d    n	1 sw   Y  n| j|tdtd |f  W d    n	1 sw   Y  ||S )Nr   r,   r5   r   z==r   r   r   r^   r   z,cannot cast 16-bit unicode_type to %s-bit %sz,cannot cast 32-bit unicode_type to %s-bit %s)r   r_   r   r    r   r   r   rf   r   rc   rd   r   ra   rA   rb   re   rg   rh   ri   rj   r   rk   r   r   rl   r   r   r   )r   r   rm   rn   ro   r   r   Zsrc2Zsrc4Zkind1Zkind2Zkind4rq   rr   rs   rt   ru   rv   rw   re   rx   ry   rz   r'   r'   r(   unicode_to_unicode_charseq   s   








r   c                    sb   d  t |tjrt | tjrt t | tjrt  d ur/| jdd   fdd}|S d S )Nzindex out of range [0, %s]r   c                    s"   |k r|dkr | |S t r   )r=   r   r:   	get_valueZmax_imsgr'   r(   getitem_implX  s   
z%charseq_getitem.<locals>.getitem_impl)rG   r   IntegerrH   r@   rJ   r]   re   )r   r:   r   r'   r   r(   charseq_getitemL  s   r   c                    sJ   t | tjtjfr#t|  | jdkrdd }|S  fdd}|S d S )Nr   c                 S   s   dS r   r'   r   r'   r'   r(   len_imple  s   zcharseq_len.<locals>.len_implc                    sD   }d}|dkr|d }|dk r	 |d S  | |}|dks|d S )Nr   r   r'   )r   r:   r?   get_codenr'   r(   r   i  s   
)rG   r   rH   rJ   rM   re   )r   r   r'   r   r(   charseq_len_  s   r   c                 C   s   t | |sd S t| tjrt|tjrdd }|S t|tjr+t| tjr+dd }|S t| tjr=t|tjr=dd }|S t| tjtjfrUt|tjtjfrWdd }|S d S d S )Nc                 S   s   t | | S rF   strr9   rN   r'   r'   r(   impl~     zcharseq_concat.<locals>.implc                 S   s   | t | S rF   r   r   r'   r'   r(   r     r   c                 S   s   t | t | S rF   r   r   r'   r'   r(   r        c                 S   s   |   |    S rF   _to_str	_to_bytesr   r'   r'   r(   r     rW   )rP   rG   r   rJ   rK   rH   rI   r9   rN   r   r'   r'   r(   charseq_concatw  s.   



r   c                 C   sp   t | tjrdd }|S t |tjrdd }|S t | tjtjfr'dd }|S t |tjtjfr6dd }|S d S )Nc                 S   s   t | | S rF   r   r   r'   r'   r(   wrap  r   zcharseq_repeat.<locals>.wrapc                 S   s   | t | S rF   r   r   r'   r'   r(   r     r   c                 S   s   |   |  S rF   r   r   r'   r'   r(   r     r   c                 S   s   | |    S rF   r   r   r'   r'   r(   r     r   rG   r   rJ   rH   rI   )r9   rN   r   r'   r'   r(   charseq_repeat  s   r   c                 C   s&   t | tjtjtjfrdd }|S d S )Nc                 S   s   t | dkS r   )lenrL   r'   r'   r(   r     r   zcharseq_not.<locals>.implr   )r9   r   r'   r'   r(   charseq_not  s   r   c                    H   t | |sd S t|  t| d ur d ur" fdd}|S d S d S )Nc                    sD   t | }|t |krdS t|D ]} | |||kr dS qdS )NFT)r   range)r9   rN   r   r:   	left_code
right_coder'   r(   eq_impl  s   zcharseq_eq.<locals>.eq_implrP   rM   )r9   rN   r   r'   r   r(   
charseq_eq  s   
r   c                 C   B   t | |sd S t| }t|}|d ur|d urdd }|S d S d S )Nc                 S   s
   | |k S rF   r'   r   r'   r'   r(   ne_impl     
zcharseq_ne.<locals>.ne_implr   )r9   rN   r   r   r   r'   r'   r(   
charseq_ne     
r   c                    r   )Nc                    sZ   t | }t |}t||}t|D ]} | |||}}||kr(||k   S q||k S rF   )r   minr   )r9   rN   nanbr   r:   cacbr   r'   r(   lt_impl  s   
zcharseq_lt.<locals>.lt_implr   )r9   rN   r   r'   r   r(   
charseq_lt  s   
	r   c                 C   r   )Nc                 S   s   || k S rF   r'   r   r'   r'   r(   gt_impl     zcharseq_gt.<locals>.gt_implr   )r9   rN   r   r   r   r'   r'   r(   
charseq_gt  r   r   c                 C   r   )Nc                 S   s
   | |k S rF   r'   r   r'   r'   r(   le_impl  r   zcharseq_le.<locals>.le_implr   )r9   rN   r   r   r   r'   r'   r(   
charseq_le  r   r   c                 C   r   )Nc                 S   s
   | |k  S rF   r'   r   r'   r'   r(   ge_impl  r   zcharseq_ge.<locals>.ge_implr   )r9   rN   r   r   r   r'   r'   r(   
charseq_ge  r   r   c                 C   sV   t | |sd S t| }t|}|d ur'|d ur)t| r!dd }|S dd }|S d S d S )Nc                 S   s   |  |   v S rF   r   r   r'   r'   r(   contains_impl  s   z'charseq_contains.<locals>.contains_implc                 S   s   t |t | v S rF   r   r   r'   r'   r(   r     r   )rP   rM   rQ   )r9   rN   r   r   r   r'   r'   r(   charseq_contains  s   
	r   isasciic                       t |   fdd}|S )Nc                    s*   t t| D ]} | |dkr dS qdS )N   FT)r   r   r   r   r'   r(   r     s
   zcharseq_isascii.<locals>.implrM   r   r   r'   r   r(   charseq_isascii  s   r   	_get_kindc                    r   )Nc                    sN   d}t t| D ]} | |}||kr|}q|dkrtjS |dkr$tjS tjS )Nr   i     )r   r   r   PY_UNICODE_4BYTE_KINDPY_UNICODE_2BYTE_KINDPY_UNICODE_1BYTE_KIND)r   Zmax_coder:   r?   r   r'   r(   r   *  s   
zcharseq_get_kind.<locals>.implr   r   r'   r   r(   charseq_get_kind%  s   r   r   c                 C      dd }|S )zConvert unicode_type object to Bytes object.

    Note: The usage of _to_bytes method can be eliminated once all
    Python bytes operations are implemented for numba Bytes objects.

    c                 S   s   t | S rF   )r   r   r'   r'   r(   r   @  r   z"unicode_to_bytes_mth.<locals>.implr'   r   r'   r'   r(   unicode_to_bytes_mth8  s   r   r   c                    r   )zConvert bytes array item or bytes instance to UTF-8 str.

    Note: The usage of _to_str method can be eliminated once all
    Python bytes operations are implemented for numba Bytes objects.
    c                    sJ   t | }|  }ttj||}t|D ]} | |}t||| q|S rF   )r   r   r   _empty_stringr   r   _set_code_point)r   r   is_asciiresultr:   r?   r   r'   r(   
tostr_implO  s   
z&charseq_to_str_mth.<locals>.tostr_implr   )r   r   r'   r   r(   charseq_to_str_mthE  s   	r   __str__c                    r   )Nc                    sX   t | }|  }|dko|  }t|||}t|D ]} | |}t||| q|S r|   )r   r   r   r   r   r   r   )r   r   r   r   r   r:   r?   r   r'   r(   str_impl_  s   
zcharseq_str.<locals>.str_implr   )r   r   r'   r   r(   charseq_str[  s   
r   c                 C   s   t | tjr
dd S d S )Nc                 S   s   | S rF   r'   r   r'   r'   r(   <lambda>o  s    zcharseq_bytes.<locals>.<lambda>)rG   r   rH   r   r'   r'   r(   charseq_bytesl  s   r   __hash__c                 C   r   )Nc                 S   s   t t| S rF   )hashr   r   r'   r'   r(   r   t  r   z"unicode_charseq_hash.<locals>.implr'   r   r'   r'   r(   unicode_charseq_hashr     r   c                 C   r   )Nc                 S   s   t |  S rF   )r   r   r   r'   r'   r(   r   {  s   zcharseq_hash.<locals>.implr'   r   r'   r'   r(   charseq_hashy  s   r   isupperc                 C   r   )Nc                 S   s   t |    S rF   )r   r   r   r'   r'   r(   r        z%unicode_charseq_isupper.<locals>.implr'   r   r'   r'   r(   unicode_charseq_isupper     r   c                 C   r   )Nc                 S   s   |      S rF   )r   r   r   r'   r'   r(   r     r   zcharseq_isupper.<locals>.implr'   r   r'   r'   r(   charseq_isupper  r   r   upperc                 C   r   )Nc                 S      t |  S rF   )r   r   r   r'   r'   r(   r     r   z#unicode_charseq_upper.<locals>.implr'   r   r'   r'   r(   unicode_charseq_upper  r   r   c                 C   r   )Nc                 S      |     S rF   )r   r   r   r   r'   r'   r(   r     r   zcharseq_upper.<locals>.implr'   r   r'   r'   r(   charseq_upper  r   r   findc                 C      t | tjrt |tjrdd }|S t |tjrdd }|S t | tjr3t |tjtjfr3dd }|S t | tjrEt |tjrEdd }|S t | tjrWt |tjrYdd }|S d S d S )Nc                 S      t | t |S rF   r   r   r   r'   r'   r(   r     rR   z"unicode_charseq_find.<locals>.implc                 S      t | |S rF   r   r   r'   r'   r(   r        c                 S      |   |  S rF   r   r   r   r'   r'   r(   r     rR   c                 S      |  t|S rF   )r   r   r   r'   r'   r(   r     r   c                 S   r   rF   r   r   r'   r'   r(   r     rR   rG   r   rJ   rK   rH   rI   r   r'   r'   r(   unicode_charseq_find  *   r  rfindc                 C   r   )Nc                 S   r   rF   r   r  r   r'   r'   r(   r     rR   z#unicode_charseq_rfind.<locals>.implc                 S   r   rF   r  r   r'   r'   r(   r     r   c                 S   r   rF   r   r  r   r'   r'   r(   r     rR   c                 S   r   rF   )r  r   r   r'   r'   r(   r     r   c                 S   r   rF   r  r   r'   r'   r(   r     rR   r  r   r'   r'   r(   unicode_charseq_rfind  r  r  
startswithc                 C   t   t | tjrt |tjrdd }|S t |tjrdd }|S t | tjtjfr6t |tjtjfr8dd }|S d S d S )Nc                 S   r   rF   r   r  r   r'   r'   r(   r     rR   z(unicode_charseq_startswith.<locals>.implc                 S   r   rF   r
  r   r'   r'   r(   r     r   c                 S   r   rF   )r   r  r   r'   r'   r(   r     rR   r  r   r'   r'   r(   unicode_charseq_startswith     r  endswithc                 C   r	  )Nc                 S   r   rF   r   r  r   r'   r'   r(   r     rR   z&unicode_charseq_endswith.<locals>.implc                 S   r   rF   r  r   r'   r'   r(   r     r   c                 S   r   rF   )r   r  r   r'   r'   r(   r     rR   r  r   r'   r'   r(   unicode_charseq_endswith  r  r  c                 C   s   dd | D S )Nc                 S      g | ]}|  qS r'   )r   ).0r   r'   r'   r(   
<listcomp>
      z_map_bytes.<locals>.<listcomp>r'   )seqr'   r'   r(   
_map_bytes  s   r  splitc                 C   s   |dkst |tjtjtjfsd S t | tjrHt |tjr$d
dd}|S t |tjr1d
dd}|S t|rHt|drAd
dd}|S d
dd}|S t | tj	tj
frxt |tj	tj
frad
dd}|S t|rzt|drqd
dd}|S d
d	d}|S d S d S )Nr  c                 S   s   t | jt ||dS N)sepmaxsplitr   r  r9   r  r  r'   r'   r(   r        z#unicode_charseq_split.<locals>.implc                 S   s   t | j||dS r  r  r  r'   r'   r(   r     rR   c                 S   r   rF   r  r  r'   r'   r(   r      r   c                 S   s   t | j|dS N)r  r  r  r'   r'   r(   r   #  r   c                 S   s   t |  j| |dS r  r  r   r  r  r'   r'   r(   r   (  s   c                 S   s   t |   S rF   r  r  r'   r'   r(   r   .  r   c                 S   s   t |  j|dS r  r  r  r'   r'   r(   r   1  rW   Nr  )rG   r   rS   r   ZIntegerLiteralrJ   rK   r   rV   rH   rI   )r9   r  r  r   r'   r'   r(   unicode_charseq_split  s>   








r!  ljust c                 C      t | tjr,t|drd	dd}|S t |tjrd	dd}|S t |tjr,d	dd}|S t | tjtjfrVt|ds?t|drFd	dd}|S t |tjtjfrXd	dd}|S d S d S )
Nr#  c                 S   r   rF   r   r"  r9   widthfillcharr'   r'   r(   r   >  r   z#unicode_charseq_ljust.<locals>.implc                 S      t | |t |S rF   r%  r&  r'   r'   r(   r   B  rW   c                 S      t | ||S rF   r%  r&  r'   r'   r(   r   F  r       c                 S      |   | S rF   r   r"  r   r&  r'   r'   r(   r   K  rR   c                 S      |   ||   S rF   r-  r&  r'   r'   r(   r   O     r#  rG   r   rJ   rV   rK   rH   rI   r9   r'  r(  r   r'   r'   r(   unicode_charseq_ljust8  &   





r3  rjustc                 C   r$  )
Nr#  c                 S   r   rF   r   r5  r&  r'   r'   r(   r   Z  r   z#unicode_charseq_rjust.<locals>.implc                 S   r)  rF   r6  r&  r'   r'   r(   r   ^  rW   c                 S   r*  rF   r6  r&  r'   r'   r(   r   b  r   r+  c                 S   r,  rF   r   r5  r   r&  r'   r'   r(   r   g  rR   c                 S   r.  rF   r7  r&  r'   r'   r(   r   k  r/  r0  r1  r2  r'   r'   r(   unicode_charseq_rjustT  r4  r8  centerc                 C   r$  )
Nr#  c                 S   r   rF   r   r9  r&  r'   r'   r(   r   v  r   z$unicode_charseq_center.<locals>.implc                 S   r)  rF   r:  r&  r'   r'   r(   r   z  rW   c                 S   r*  rF   r:  r&  r'   r'   r(   r   ~  r   r+  c                 S   r,  rF   r   r9  r   r&  r'   r'   r(   r     rR   c                 S   r.  rF   r;  r&  r'   r'   r(   r     r/  r0  r1  r2  r'   r'   r(   unicode_charseq_centerp  r4  r<  zfillc                 C   :   t | tjrdd }|S t | tjtjfrdd }|S d S )Nc                 S   r   rF   )r   r=  r9   r'  r'   r'   r(   r     r   z#unicode_charseq_zfill.<locals>.implc                 S   r,  rF   )r   r=  r   r?  r'   r'   r(   r     rR   r   )r9   r'  r   r'   r'   r(   unicode_charseq_zfill  s   r@  lstripc                 C      t | tjr+t|rddd}|S t |tjrddd}|S t |tjr+ddd}|S t | tjtjfrOt|r?ddd}|S t |tjtjfrQddd}|S d S d S )Nc                 S   r   rF   r   rA  r9   charsr'   r'   r(   r     r   z$unicode_charseq_lstrip.<locals>.implc                 S   r   rF   rC  rD  r'   r'   r(   r     rR   c                 S   r   rF   rC  rD  r'   r'   r(   r     r   c                 S   r   rF   r   rA  r   rD  r'   r'   r(   r     r   c                 S      |   |   S rF   rF  rD  r'   r'   r(   r     r  rF   rG   r   rJ   r   rK   rH   rI   r9   rE  r   r'   r'   r(   unicode_charseq_lstrip  &   




rJ  rstripc                 C   rB  )Nc                 S   r   rF   r   rL  rD  r'   r'   r(   r     r   z$unicode_charseq_rstrip.<locals>.implc                 S   r   rF   rM  rD  r'   r'   r(   r     rR   c                 S   r   rF   rM  rD  r'   r'   r(   r     r   c                 S   r   rF   r   rL  r   rD  r'   r'   r(   r     r   c                 S   rG  rF   rN  rD  r'   r'   r(   r     r  rF   rH  rI  r'   r'   r(   unicode_charseq_rstrip  rK  rO  stripc                 C   rB  )Nc                 S   r   rF   r   rP  rD  r'   r'   r(   r     r   z#unicode_charseq_strip.<locals>.implc                 S   r   rF   rQ  rD  r'   r'   r(   r     rR   c                 S   r   rF   rQ  rD  r'   r'   r(   r     r   c                 S   r   rF   r   rP  r   rD  r'   r'   r(   r     r   c                 S   rG  rF   rR  rD  r'   r'   r(   r     r  rF   rH  rI  r'   r'   r(   unicode_charseq_strip  rK  rS  joinc                 C   r>  )Nc                 S   s   dd |D }t | |S )Nc                 S   s   g | ]}t |qS r'   r   r  pr'   r'   r(   r    r  6unicode_charseq_join.<locals>.impl.<locals>.<listcomp>)r   rT  r9   parts_partsr'   r'   r(   r     s   z"unicode_charseq_join.<locals>.implc                 S   s    dd |D }|   | S )Nc                 S   r  r'   r   rU  r'   r'   r(   r    r  rW  )r   rT  r   rX  r'   r'   r(   r     s   r   )r9   rY  r   r'   r'   r(   unicode_charseq_join  s   r[  r   r0  rF   )p__doc__operatornumpyrX   Zllvmliter   Z
numba.corer   r   r   Znumba.core.extendingr   r   r   r	   r
   Znumba.core.cgutilsr   Znumba.cpythonr   ZdtypeZs1_dtyper   ZUSE_LEGACY_TYPE_SYSTEMrI   Zuint8r}   c_uint8r\   rA   Zuint16r.   rZ   r   r   r   Zunicode_kindr*   r3   r6   r7   r;   r@   rC   rD   rE   rM   rP   rQ   rV   r]   rH   r{   r   r   rK   r   r   rJ   r   getitemr   r   r   addiaddr   mulr   not_r   eqr   ner   ltr   gtr   ler   ger   containsr   r   r   r   r   r   bytesr   r   r   r   r   r   r   r  r  r  r  r  r!  r3  r8  r<  r@  rJ  rO  rS  r[  r'   r'   r'   r(   <module>   sF   
	















L



















































(






















