U
    ็g  ใ                   @   sx   d Z ddlZddlmZ ddlmZ G dd deZG dd deZG d	d
 d
eZG dd deZ	G d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                   @   s   e Zd ZejZdS )ฺINumberN)ฺ__name__ฺ
__module__ฺ__qualname__ฺabcฺNumberฉ r
   r
   ๚A/tmp/pip-unpacked-wheel-pt80dmt4/zope/interface/common/numbers.pyr   "   s   r   c                   @   s   e Zd ZejZedd ZdS )ฺIComplexc                   C   s   dS ฉz<
        Rarely implemented, even in builtin types.
        Nr
   r
   r
   r
   r   ฺ__complex__)   s    zIComplex.__complex__N)r   r   r   r   ฺComplexr   r   r
   r
   r
   r   r   &   s   r   c                   @   s&   e Zd ZejZedd Ze ZZdS )ฺIRealc                   C   s   dS r   r
   r
   r
   r
   r   r   3   s    zIReal.__complex__N)	r   r   r   r   ฺRealr   r   ฺ	__floor__ฺ__ceil__r
   r
   r
   r   r   0   s   
r   c                   @   s   e Zd ZejZdS )ฺ	IRationalN)r   r   r   r   ฺRationalr
   r
   r
   r   r   <   s   r   c                   @   s   e Zd ZejZdS )ฺ	IIntegralN)r   r   r   r   ฺIntegralr
   r
   r
   r   r   @   s   r   )ฺ__doc__Znumbersr   Zzope.interface.commonr   r   r   r   r   r   r   r
   r
   r
   r   ฺ<module>   s   
	
