ó
”¼\c           @   sĀ   d  d l  m Z d  d l m Z m Z m Z m Z m Z m Z m	 Z	 d  d l
 m Z m Z m Z m Z d  d l m Z e d  \ Z Z d   Z d   Z d   Z d	   Z d
   Z d   Z d S(   i’’’’(   t   symbols(   t   betat   Eit   zetat   Maxt   Mint   sqrtt   exp(   t   CXX98CodePrintert   CXX11CodePrintert   CXX17CodePrintert   cxxcode(   t   log1ps   x yc          C   sø   t    j t t d   d	 k s' t  t    j t t d t t    d k sW t  t    }  |  j d k su t  |  j d k s t  d |  j	 k s t  d |  j	 k s“ t  d  S(
   Ni   s   std::max(x, 3)s   std::max(3, x)s&   std::min(3, std::min(x, std::sqrt(x)))s   C++s   C++98t   templatet   alignas(   s   std::max(x, 3)s   std::max(3, x)(
   R   t   doprintR   t   xt   AssertionErrorR   R   t   languaget   standardt   reserved_words(   t   cxx98printer(    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   test_CXX98CodePrinter	   s    '0	c          C   s   t    j t t   d k s$ t  t    }  |  j d k sB t  |  j d k sW t  d |  j k sl t  d |  j k s t  d |  j k s t  d  S(   Ns   std::log1p(x)s   C++s   C++11t   operatort   noexceptt   concept(   R	   R   R   R   R   R   R   R   (   t   cxx11printer(    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   test_CXX11CodePrinter   s    $	c          C   s>   d t  f d     Y}  |    j t t   d k s: t  d  S(   Nt	   MyPrinterc           B   s   e  Z d    Z RS(   c         S   s    d d j  t |  j | j   S(   Ns   my_library::log1p(%s)s   , (   t   joint   mapt   _printt   args(   t   selft   expr(    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   _print_log1p    s    (   t   __name__t
   __module__R#   (    (    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyR      s   s   my_library::log1p(x)(   R	   R   R   R   R   (   R   (    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   test_subclass_print_method   s    c          C   sn   d t  f d     Y}  t    } |    } | j t t   d k sI t  | j t t   d k sj t  d  S(   NR   c           B   s   e  Z d  Z RS(   s   my_library::(   R$   R%   t   _ns(    (    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyR   '   s   s   std::log1p(x)s   my_library::log1p(x)(   R	   R   R   R   R   (   R   t   pt   myp(    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   test_subclass_print_method__ns&   s
    		!c           C   ss   t    j t t t   d k s' t  t    j t t   d k sK t  t    j t t   d k so t  d  S(   Ns   std::beta(x, y)s   std::expint(x)s   std::riemann_zeta(x)(   R
   R   R   R   t   yR   R   R   (    (    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   test_CXX17CodePrinter1   s    '$c           C   sA   t  t t t  d  j d   t  d d g  k s= t  d  S(   Ng      ą?t   *s   0.5s   std::sqrt(x)(   t   sortedR   R   R   t   splitR   (    (    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   test_cxxcode7   s    N(   t   sympyR    t   sympy.functionsR   R   R   R   R   R   R   t   sympy.printing.cxxcodeR   R	   R
   R   t   sympy.codegen.cfunctionsR   R   R+   R   R   R&   R*   R,   R0   (    (    (    s@   lib/python2.7/site-packages/sympy/printing/tests/test_cxxcode.pyt   <module>   s   4"	
				