
    tf                         d Z ddlZddlmZ ddlmZ  G d de          Z G d de          Z G d	 d
e          Z G d de          Z	 G d de	          Z
dS )z
Interface definitions paralleling the abstract base classes defined in
:mod:`numbers`.

After this module is imported, the standard library types will declare
that they implement the appropriate interface.

.. versionadded:: 5.0.0
    N)ABCInterface)optionalc                       e Zd Zej        ZdS )INumberN)__name__
__module____qualname__abcNumber     \/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/zope/interface/common/numbers.pyr   r   "   s        
*CCCr   r   c                   2    e Zd Zej        Zed             ZdS )IComplexc                      dS z<
        Rarely implemented, even in builtin types.
        Nr   r   r   r   __complex__zIComplex.__complex__)         r   N)r   r   r	   r
   Complexr   r   r   r   r   r   r   &   s4        
+C  X  r   r   c                   :    e Zd Zej        Zed             ZexZZdS )IRealc                      dS r   r   r   r   r   r   zIReal.__complex__3   r   r   N)	r   r   r	   r
   Realr   r   	__floor____ceil__r   r   r   r   r   0   s:        
(C  X
 '&Ir   r   c                       e Zd Zej        ZdS )	IRationalN)r   r   r	   r
   Rationalr   r   r   r   r   <           
,CCCr   r   c                       e Zd Zej        ZdS )	IIntegralN)r   r   r	   r
   Integralr   r   r   r!   r!   @   r   r   r!   )__doc__numbersr
   zope.interface.commonr   r   r   r   r   r   r!   r   r   r   <module>r&      s        . . . . . . * * * * * *    l       w   	' 	' 	' 	' 	'H 	' 	' 	'           	     r   