
    (ph                         S r SSKrSSKJr  SSKJr   " S S\5      r " S S\5      r " S	 S
\5      r " S S\5      r	 " S S\	5      r
g)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                   ,    \ rS rSr\R
                  rSrg)INumber"    N)__name__
__module____qualname____firstlineno__abcNumber__static_attributes__r       P/var/www/html/venv/lib/python3.13/site-packages/zope/interface/common/numbers.pyr   r   "   s    
**Cr   r   c                   <    \ rS rSr\R
                  r\S 5       rSrg)IComplex&   c                      gz,
Rarely implemented, even in builtin types.
Nr   r   r   r   __complex__IComplex.__complex__)       r   r   N)	r	   r
   r   r   r   Complexr   r   r   r   r   r   r   r   &   s    
++C r   r   c                   D    \ rS rSr\R
                  r\S 5       r\=rr	Sr
g)IReal0   c                      gr   r   r   r   r   r   IReal.__complex__3   r   r   r   N)r	   r
   r   r   r   Realr   r   	__floor____ceil__r   r   r   r   r   r   0   s)    
((C 
 '&Ir   r   c                   ,    \ rS rSr\R
                  rSrg)	IRational<   r   N)r	   r
   r   r   r   Rationalr   r   r   r   r$   r$   <       
,,Cr   r$   c                   ,    \ rS rSr\R
                  rSrg)	IIntegral@   r   N)r	   r
   r   r   r   Integralr   r   r   r   r)   r)   @   r'   r   r)   )__doc__numbersr   zope.interface.commonr   r   r   r   r   r$   r)   r   r   r   <module>r/      sQ     . *l w 	'H 	' 	 r   