U
    [e\                     @   s   d Z ddlmZ ddlZddlm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
    )absolute_importN)ABCInterface)optional)PYTHON2c                   @   s   e Zd ZejZdS )INumberN)__name__
__module____qualname__abcNumber r   r   _/var/www/html/services/stratfitenv/lib/python3.8/site-packages/zope/interface/common/numbers.pyr   $   s   r   c                   @   s2   e Zd ZejZedd Zer.edd Ze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__c                 C   s   dS zS
            The interpreter may supply one through complicated rules.
            Nr   otherr   r   r   __eq__2   s    zIComplex.__eq__N)
r   r   r	   r
   Complexr   r   PY2r   __ne__r   r   r   r   r   (   s   

r   c                   @   s:   e Zd ZejZedd Ze ZZe	r6edd Z
e
ZdS )IRealc                   C   s   dS r   r   r   r   r   r   r   =   s    zIReal.__complex__c                 C   s   dS r   r   r   r   r   r   __le__F   s    zIReal.__le__N)r   r   r	   r
   Realr   r   	__floor____ceil__r   r   __lt__r   r   r   r   r   :   s   

r   c                   @   s   e Zd ZejZdS )	IRationalN)r   r   r	   r
   Rationalr   r   r   r   r   O   s   r   c                   @   s   e Zd ZejZdS )	IIntegralN)r   r   r	   r
   Integralr   r   r   r   r    S   s   r    )__doc__
__future__r   numbersr
   Zzope.interface.commonr   r   Zzope.interface._compatr   r   r   r   r   r   r    r   r   r   r   <module>   s   	