
    Ed                         d Z ddlmZmZmZmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZ ddlmZ e G d d	e	ee                      Z e            Zd
S )z6Implementation of :class:`ExpressionRawDomain` class.     )ExprSsympifyAdd)CharacteristicZero)Field)SimpleDomain)CoercionFailed)publicc                       e Zd ZdZdxZZeZej	        Z
ej        ZdZdZdZd Zed             Zd Zd Zd	 Zd
 Zd ZdS )ExpressionRawDomainzHA class for arbitrary expressions but without automatic simplification. TEXRAWFc                     d S N selfs    Glib/python3.11/site-packages/sympy/polys/domains/expressionrawdomain.py__init__zExpressionRawDomain.__init__   s        c                      t          |          S r   )r   r   as     r   newzExpressionRawDomain.new   s    qzzr   c                     |S )z!Convert ``a`` to a SymPy object. r   r   s     r   to_sympyzExpressionRawDomain.to_sympy#   s    r   c                 x    t          |t                    s$t          dt          |          j                   |S )z)Convert SymPy's expression to ``dtype``. z&Expecting an Expr instance but found: )
isinstancer   r
   type__name__r   s     r   
from_sympyzExpressionRawDomain.from_sympy'   s:    !T"" 	^ !\$q''JZ!\!\]]]r   c                 ,    |                     |          S )z5Convert a domain element from another domain to EXRAW)r   )r   r   Ks      r   convert_fromz ExpressionRawDomain.convert_from-   s    zz!}}r   c                     | S )z*Returns a field associated with ``self``. r   r   s    r   	get_fieldzExpressionRawDomain.get_field1   s    r   c                     t          | S r   )r   )r   itemss     r   sumzExpressionRawDomain.sum5   s    E{r   N)r    
__module____qualname____doc__is_SymbolicRawDomainis_EXRAWr   dtyper   ZerozeroOneonerephas_assoc_Ringhas_assoc_Fieldr   classmethodr   r   r!   r$   r&   r)   r   r   r   r   r      s        RR&**8E6D
%C
CNO     [            r   r   N)r,   
sympy.corer   r   r   r   &sympy.polys.domains.characteristiczeror   sympy.polys.domains.fieldr    sympy.polys.domains.simpledomainr	   sympy.polys.polyerrorsr
   sympy.utilitiesr   r   r   r   r   r   <module>r>      s    < < - , , , , , , , , , , , E E E E E E + + + + + + 9 9 9 9 9 9 1 1 1 1 1 1 " " " " " " ) ) ) ) )%!3\ ) ) )X 	r   