U
    .d\                     @   sh   d dl Z d dlZe jeje jeje jeje j	ej
e jeje jeje jeje jejiZdd Zdd ZdS )    Nc              
   C   sT   zt tj| ddjW S  tttfk
rN } zt| d|W 5 d}~X Y nX dS )z~
    >>> eval_expr('2*6')
    12
    >>> eval_expr('2**6')
    64
    >>> eval_expr('1 + 2*3**(4) / (6 + -7)')
    -161.0
    eval)modez3 is not a valid or supported arithmetic expression.N)eval_astparsebody	TypeErrorSyntaxErrorKeyError
ValueError)expre r   1/tmp/pip-unpacked-wheel-ho8k9mhl/joblib/_utils.py	eval_expr   s    	r   c                 C   sn   t | tjr| jS t | tjr>tt| j t| j	t| j
S t | tjrbtt| j t| jS t| d S )N)
isinstancer   ZNumnZBinOp	operatorstypeopr   leftrightZUnaryOpZoperandr   )noder   r   r   r   $   s     r   )r   operatorr   ZAddaddZSubsubZMultmulZDivtruedivZFloorDivfloordivZModmodZPowpowZUSubnegr   r   r   r   r   r   r   <module>   s(           