B
    ˜‘[ä  ã               @   sP   d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	 e	G dd„ deƒƒZ
dS )	z2Implementation of :class:`CompositeDomain` class. é    )Úprint_functionÚdivision)ÚDomain)ÚGeneratorsError)Úpublicc               @   s.   e Zd ZdZdZdgd \ZZZZdd„ Z	dS )ÚCompositeDomainz5Base class for composite domains, e.g. ZZ[x], ZZ(X). TNé   c             G   s@   t | jƒt |ƒ@ s*|  | j| j| | j¡S td| j|f ƒ‚dS )z$Inject generators into this domain. zcommon generators in %s and %sN)ÚsetÚsymbolsÚ	__class__ÚdomainÚorderr   )Úselfr
   © r   úBlib/python3.7/site-packages/sympy/polys/domains/compositedomain.pyÚinject   s    zCompositeDomain.inject)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__Zis_CompositeZgensZngensr
   r   r   r   r   r   r   r   
   s   r   N)r   Z
__future__r   r   Zsympy.polys.domains.domainr   Zsympy.polys.polyerrorsr   Zsympy.utilitiesr   r   r   r   r   r   Ú<module>   s   