
    xKg
                         d dl mZmZmZmZmZmZ d dlmZ d dl	m
Z
 d dlZ G d dej                        Zedk(  r ej                          yy)    )int32int64uint32uint64float32float64)range_iter32_type)itanium_manglerNc                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)TestItaniumManagerc                     t        j                  d      }d}| j                  ||       t        j                  d      }d}| j                  ||       t        j                  d      }d}| j                  ||       y )Napple5appleap_ple6ap_pleapple213	8apple213)r
   mangle_identifierassertEqualselfgotexpects      d/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/numba/tests/test_itanium_mangler.py
test_identzTestItaniumManager.test_ident	   sq    //8%//9%//
;%    c                     t        j                  t              }d}| j                  ||       t        j                  t              }d}| j                  ||       t        j                  t
              }d}| j                  ||       t        j                  t              }d}| j                  ||       t        j                  t              }d}| j                  ||       t        j                  t              }d}| j                  ||       y )Nixjyfd)	r
   mangle_typer   r   r   r   r   r   r   r   s      r   
test_typeszTestItaniumManager.test_types   s    ))%0%))%0%))&1%))&1%))'2%))'2%r   c                     t        j                  dt        t        g      }d}| j	                  ||       t        j                  dt
        t        t        g      }d}| j	                  ||       y )Nwhat	_Z4whatifa_little_brown_fox_Z18a_little_brown_foxyjd)r
   mangler   r   r   r   r   r   r   s      r   test_functionz TestItaniumManager.test_function/   sg    $$VeW-=>%$$%9F<B<C<E F -%r   c                     t        j                  t              }t        t              }dj	                  t        |      |      }| j                  ||       y )Nz	{n}{name})nname)r
   r$   r	   strformatlenr   )r   r   r/   r   s       r   test_custom_typez#TestItaniumManager.test_custom_type:   sG    ))*;<$%##c$id#;%r   c                     t        j                  d      }d}| j                  ||       t        j                  d      }| j                  |d       y )N{   Li123Eg(@z^\d+_12_[0-9a-z][0-9a-z]3$)r
   mangle_valuer   assertRegexr   s      r   test_mangle_literalz&TestItaniumManager.test_mangle_literal@   sH    **3/%**40;<r   c                 V    d}t        j                  |      }| j                  |d       y )Nu	   f∂ƒ©zz^\d+f(_[a-z0-9][a-z0-9])+z$)r
   r   r8   )r   r/   r   s      r   test_mangle_unicodez&TestItaniumManager.test_mangle_unicodeI   s(    //5<=r   N)	__name__
__module____qualname__r   r%   r,   r3   r9   r;    r   r   r   r      s     &&2	&&=>r   r   __main__)numbar   r   r   r   r   r   numba.core.typesr	   
numba.corer
   unittestTestCaser   r<   mainr?   r   r   <module>rG      sC    @ @ . & D>** D>N zHMMO r   