ó
\K]c           @@ s¶   d  d l  m Z m Z d  d l Z d  d l m Z d  d l m Z d  d l m Z m	 Z	 m
 Z
 m Z m Z m Z d  d l m Z d e j f d „  ƒ  YZ e d	 k r² e j ƒ  n  d S(
   i    (   t   print_functiont   absolute_importN(   t   unittest_support(   t   itanium_mangler(   t   int32t   int64t   uint32t   uint64t   float32t   float64(   t   range_iter32_typet   TestItaniumManagerc           B@ s>   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C@ ss   t  j d ƒ } d } |  j | | ƒ t  j d ƒ } d } |  j | | ƒ t  j d ƒ } d } |  j | | ƒ d  S(   Nt   applet   5applet   ap_plet   6ap_plet   apple213t	   8apple213(   R   t   mangle_identifiert   assertEqual(   t   selft   gott   expect(    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyt
   test_ident   s    c         C@ sâ   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 | | ƒ d  S(   Nt   it   xt   jt   yt   ft   d(	   R   t   mangle_typeR   R   R   R   R   R   R	   (   R   R   R   (    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyt
   test_types   s$    c         C@ sc   t  j d t t g ƒ } d } |  j | | ƒ t  j d t t t g ƒ } d } |  j | | ƒ d  S(   Nt   whatt	   _Z4whatift   a_little_brown_foxt   _Z18a_little_brown_foxyjd(   R   t   mangleR   R   R   R   R   R	   (   R   R   R   (    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyt   test_function3   s    c         C@ sM   t  j t ƒ } t t ƒ } d j d t | ƒ d | ƒ } |  j | | ƒ d  S(   Ns	   {n}{name}t   nt   name(   R   R   R
   t   strt   formatt   lenR   (   R   R   R'   R   (    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyt   test_custom_type>   s    c         C@ sH   t  j d ƒ } d } |  j | | ƒ t  j d ƒ } |  j | d ƒ d  S(   Ni{   t   Li123Egš™™™™™(@s   ^\d+_12\$[0-9a-z][0-9a-z]3$(   R   t   mangle_valueR   t   assertRegexpMatches(   R   R   R   (    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyt   test_mangle_literalD   s
    c         C@ s)   d } t  j | ƒ } |  j | d ƒ d  S(   Nu	   fâˆ‚Æ’Â©zs   ^\d+f(\$[a-z0-9][a-z0-9])+z$(   R   R   R.   (   R   R'   R   (    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyt   test_mangle_unicodeM   s    (   t   __name__t
   __module__R   R   R%   R+   R/   R0   (    (    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyR      s   						t   __main__(   t
   __future__R    R   t   ret   numbaR   t   unittestR   R   R   R   R   R   R	   t   numba.typesR
   t   TestCaseR   R1   t   main(    (    (    s?   lib/python2.7/site-packages/numba/tests/test_itanium_mangler.pyt   <module>   s   .G