
    \h                     
   S SK r S SKrS SKJr  S SKrS SKJr  S SKJrJ	r	J
r
  S SKJr  \" S5      r\SL r\ R                  R!                  \ R                  R#                  \5      S5      rSrS	rSS
 jrS r " S S\	5      rS rg)    N)Path)raises)LarkLaTeXParserTransformToSymPyExprparse_latex_lark)import_modulelarkz ../latex/lark/grammar/latex.larkzA
%override DIV_SYMBOL: DIV
%override MUL_SYMBOL: MUL | CMD_TIMES
z 
%override number: /\d+(,\d*)?/
c                     [        [        5      R                  SS9nX -  n[        R                  " 5        nUR                  [        USS95        UR                  5         [        UR                  US9nS S S 5        U$ ! , (       d  f       W$ = f)Nzutf-8)encodingutf8)grammar_filetransformer)
r   r   	read_texttempfileNamedTemporaryFilewritebytesflushr   name)modificationr   latex_grammarfparsers        ]/var/www/auris/envauris/lib/python3.13/site-packages/sympy/parsing/tests/test_custom_latex.pyinit_custom_parserr      sx    &00'0BM!M		$	$	&!	mf56		 aff+N	 
' M 
'	& Ms   >A>>
Bc                      [        [        5      n [        [        R                  R
                  5         U R                  S5        U R                  S5        S S S 5        g ! , (       d  f       g = f)Nz	a \cdot bzx \div y)r   modification1r   r	   
exceptionsUnexpectedCharactersdoparser   s    r   test_custom1r"   &   sD      .F	44	5|${# 
6	5	5s   #A
A-c                       \ rS rSrS rSrg)CustomTransformer/   c                     SUS   ;   a<  [         R                  R                  R                  US   R	                  SS5      5      $ [         R                  R                  R                  US   5      $ )N,r   .)sympycorenumbersFloatreplaceInteger)selftokenss     r   numberCustomTransformer.number0   sY    &)::%%++F1I,=,=c3,GHH::%%--fQi88     N)__name__
__module____qualname____firstlineno__r1   __static_attributes__r4   r3   r   r$   r$   /   s    9r3   r$   c                  Z   [        [        [        5      n [        [        R
                  R                  5         [        S5        [        S5        S S S 5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        g ! , (       d  f       NS= f)Nz100,1z0,009z2,71828z3,14159)	r   modification2r$   r   r	   r   r   r   r    r!   s    r   test_custom2r<   7   su      /@AF	44	5 	!!	 
6 NN7
NN7
NN9
NN9 
6	5s   B
B*)N)osr   pathlibr   r)   sympy.testing.pytestr   sympy.parsing.latex.larkr   r   r   sympy.externalr   r	   disabledpathjoindirname__file__r   r   r;   r   r"   r$   r<   r4   r3   r   <module>rG      s~    	    ' \ \ (V 4<ww||BGGOOH57YZ

$9, 9r3   