
    sKg                         d dl Z d dlZd dlZd dlmZmZmZmZmZm	Z	m
Z
 d dlmZ  ed      Z ed      Zej                  dd dk\  Z G d d	e      Zed
k(  r ej&                          yy)    N)Constant	FloatType
DoubleTypeLiteralStructTypeIntType	ArrayTypeHalfType)TestCase         )      c                   V    e Zd Zd Zd Z ej                  ed      d        Zd Z	d Z
y)TestValueReprc                       fd} |t         j                  d        |t        d      d        |t        d      d       y )Nc                 d    t        t               |       }j                  t        |      |       y N)r   r   assertEqualstrvalexpectedcselfs      a/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/llvmlite/tests/test_valuerepr.py
check_reprz2TestValueRepr.test_double_repr.<locals>.check_repr   s%    s+ASVX.    zdouble 0x400921fb54442d18infzdouble 0x7ff0000000000000-infzdouble 0xfff0000000000000mathpifloatr   r   s   ` r   test_double_reprzTestValueRepr.test_double_repr   s7    	/ 	477785<!<=5="=>r   c                       fd} |t         j                  d        |t        d      d        |t        d      d       y )Nc                 d    t        t               |       }j                  t        |      |       y r   )r   r   r   r   r   s      r   r   z1TestValueRepr.test_float_repr.<locals>.check_repr   s%    c*ASVX.r   zfloat 0x400921fb60000000r   zfloat 0x7ff0000000000000r    zfloat 0xfff0000000000000r!   r%   s   ` r   test_float_reprzTestValueRepr.test_float_repr   s7    	/ 	477675<!;<5="<=r   z
py36+ onlyc                       fd} |t         j                  d        |t        d      d        |t        d      d       y )Nc                 d    t        t               |       }j                  t        |      |       y r   )r   r	   r   r   r   s      r   r   z0TestValueRepr.test_half_repr.<locals>.check_repr&   s%    S)ASVX.r   zhalf 0x4009200000000000r   zhalf 0x7ff0000000000000r    zhalf 0xfff0000000000000r!   r%   s   ` r   test_half_reprzTestValueRepr.test_half_repr$   s7    	/ 	477565<!:;5=";<r   c                     t        t        t        g      }t        |t        t        d      t        t        d      f      }| j	                  t        |      d       y )Nd   i  z{i8, i16} {i8 100, i16 1000})r   int8int16r   r   r   )r   tpr   s      r   test_struct_reprzTestValueRepr.test_struct_repr-   sD    e}-R(4-xt/DEFQ!?@r   c                    t        t        d      }dD cg c]  }t        t        |       }}t        ||      }| j                  t	        |      d       t        |t        d            }| j                  t	        |      d       y c c}w )Nr   )   
   iz[3 x i8] [i8 5, i8 10, i8 -15]s   z[3 x i8] c"\01\02\03")r   r/   r   r   r   	bytearray)r   r1   xvaluesr   s        r   test_array_reprzTestValueRepr.test_array_repr2   su    tQ-9:\(4#\:R Q!ABR?34Q!;<	 ;s   BN)__name__
__module____qualname__r&   r)   unittest
skipUnlessPY36_OR_LATERr,   r2   r9    r   r   r   r      s:    ?> X5= 6=A
=r   r   __main__)r"   sysr=   llvmlite.irr   r   r   r   r   r   r	   llvmlite.testsr
   r/   r0   version_infor?   r   r:   mainr@   r   r   <module>rG      sv     
    $ qz   !$.&=H &=R zHMMO r   