File: //lib/python3/dist-packages/attr/__pycache__/_version_info.cpython-312.pyc
�
��`r � �~ � d dl mZmZmZ d dlmZ ddlmZ ddlm Z m
Z
e e
dddd�� G d � d
e� � � Zy)� )�absolute_import�division�print_function)�total_ordering� )�astuple)�attrib�attrsFT)�eq�order�slots�frozenc �z � e Zd ZdZ ee�� Z ee�� Z ee�� Z ee �� Z
ed� � Zd� Z
d� Zd� Zy)�VersionInfoa�
A version object that can be compared to tuple of length 1--4:
>>> attr.VersionInfo(19, 1, 0, "final") <= (19, 2)
True
>>> attr.VersionInfo(19, 1, 0, "final") < (19, 1, 1)
True
>>> vi = attr.VersionInfo(19, 2, 0, "final")
>>> vi < (19, 1, 1)
False
>>> vi < (19,)
False
>>> vi == (19, 2,)
True
>>> vi == (19, 2, 1)
False
.. versionadded:: 19.2
)�typec �� � |j d� }t |� dk( r|j d� | t |d � t |d � t |d � |d �� S )z6
Parse *s* and return a _VersionInfo.
�.� �finalr r � )�year�minor�micro�releaselevel)�split�len�append�int)�cls�s�vs �4/usr/lib/python3/dist-packages/attr/_version_info.py�_from_version_stringz VersionInfo._from_version_string% sZ � �
�G�G�C�L���q�6�Q�;�
�H�H�W����Q�q�T��#�a��d�)�3�q��t�9�1�Q�4�
�
� c �� � | j |j u rt |� }t |t � st �dt |� cxk r
dk s
t � t �t | � dt |� |fS )z�
Ensure *other* is a tuple of a valid length.
Returns a possibly transformed *other* and ourselves as a tuple of
the same length as *other*.
r � N)� __class__r �
isinstance�tuple�NotImplementedErrorr )�self�others r"