o
    Z۷i
                     @   sj   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 dejZedkr3e  dS dS )    )int32int64uint32uint64float32float64)range_iter32_type)itanium_manglerNc                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )TestItaniumManagerc                 C   sR   t d}d}| || t d}d}| || t d}d}| || d S )Napple5appleap_ple6ap_pleapple213	8apple213)r	   mangle_identifierassertEqualselfgotexpect r   V/home/ubuntu/vllm_env/lib/python3.10/site-packages/numba/tests/test_itanium_mangler.py
test_ident	   s   


zTestItaniumManager.test_identc                 C   s   t t}d}| || t t}d}| || t t}d}| || t t}d}| || t t}d}| || t t}d}| || d S )Nixjyfd)	r	   mangle_typer   r   r   r   r   r   r   r   r   r   r   
test_types   s$   





zTestItaniumManager.test_typesc                 C   sF   t dttg}d}| || t dtttg}d}| || d S )Nwhat	_Z4whatifa_little_brown_fox_Z18a_little_brown_foxyjd)r	   mangler   r   r   r   r   r   r   r   r   r   test_function/   s   z TestItaniumManager.test_functionc                 C   s4   t t}tt}djt||d}| || d S )Nz	{n}{name})nname)r	   r    r   strformatlenr   )r   r   r)   r   r   r   r   test_custom_type:   s   
z#TestItaniumManager.test_custom_typec                 C   s4   t d}d}| || t d}| |d d S )N{   Li123Eg(@z^\d+_12_[0-9a-z][0-9a-z]3$)r	   mangle_valuer   assertRegexr   r   r   r   test_mangle_literal@   s
   

z&TestItaniumManager.test_mangle_literalc                 C   s   d}t |}| |d d S )Nu	   f∂ƒ©zz^\d+f(_[a-z0-9][a-z0-9])+z$)r	   r   r1   )r   r)   r   r   r   r   test_mangle_unicodeI   s   
z&TestItaniumManager.test_mangle_unicodeN)	__name__
__module____qualname__r   r!   r'   r-   r2   r3   r   r   r   r   r
      s    	r
   __main__)numbar   r   r   r   r   r   numba.core.typesr   
numba.corer	   unittestTestCaser
   r4   mainr   r   r   r   <module>   s    G