File: //usr/lib/python3/dist-packages/future/backports/__pycache__/total_ordering.cpython-310.pyc
o
,�]� � @ s2 d Z ddlZejdkrddlmZ dS dd� ZdS )z�
For Python < 2.7.2. total_ordering in versions prior to 2.7.2 is buggy.
See http://bugs.python.org/issue10042 for details. For these versions use
code borrowed from Python 2.7.3.
From django.utils.
� N)� � r )�total_orderingc C s� ddd� fddd� fddd� fgddd� fd d
d� fddd� fgd dd� fdd
d� fddd� fgddd� fddd� fd dd� fgd�}t t| ��t |�@ }|sStd��t|�}|| D ]\}}||vrs||_tt|�j|_t| ||� q[| S )z6Class decorator that fills in missing ordering methods�__gt__c S s | |k p| |k S �N� ��self�otherr r �A/usr/lib/python3/dist-packages/future/backports/total_ordering.py�<lambda> � z total_ordering.<locals>.<lambda>�__le__c S s | |k p| |kS r r r r r r r � �__ge__c S s
| |k S r r r r r r r �
c S s | |k p| |kS r r r r r r r r
�__lt__c S s | |ko| |k S r r r r r r r r
c S s
| |k S r r r r r r r r c S s | |kp| |k S r r r r r r r r
c S s | |kp| |kS r r r r r r r r c S s
| |k S r r r r r r r r c S s | |k p| |kS r r r r r r r r
c S s | |ko| |k S r r r r r r r r
c S s
| |k S r r r r r r r r )r r r r z6must define at least one ordering operation: < > <= >=) �set�dir�
ValueError�max�__name__�getattr�int�__doc__�setattr)�cls�convert�roots�root�opname�opfuncr r r r
s8
�
�
�
���r )r �sys�version_info� functoolsr r r r r �<module> s