File: //opt/alt/python37/lib64/python3.7/site-packages/numpy/lib/__pycache__/_version.cpython-37.pyc
B
<�Fd � @ sD d Z ddlmZmZmZ ddlZddlmZ dgZG dd� d�Z dS )a Utility to compare (NumPy) version strings.
The NumpyVersion class allows properly comparing numpy version strings.
The LooseVersion and StrictVersion classes that distutils provides don't
work; they don't recognize anything like alpha/beta/rc/dev versions.
� )�division�absolute_import�print_functionN)�
basestring�NumpyVersionc @ sh e Zd ZdZdd� Zdd� Zdd� Zdd � Zd
d� Zdd
� Z dd� Z
dd� Zdd� Zdd� Z
dd� ZdS )r a� Parse and compare numpy version strings.
NumPy has the following versioning scheme (numbers given are examples; they
can be > 9) in principle):
- Released version: '1.8.0', '1.8.1', etc.
- Alpha: '1.8.0a1', '1.8.0a2', etc.
- Beta: '1.8.0b1', '1.8.0b2', etc.
- Release candidates: '1.8.0rc1', '1.8.0rc2', etc.
- Development versions: '1.8.0.dev-f1234afa' (git commit hash appended)
- Development versions after a1: '1.8.0a1.dev-f1234afa',
'1.8.0b2.dev-f1234afa',
'1.8.1rc1.dev-f1234afa', etc.
- Development versions (no git hash available): '1.8.0.dev-Unknown'
Comparing needs to be done against a valid version string or other
`NumpyVersion` instance. Note that all development versions of the same
(pre-)release compare equal.
.. versionadded:: 1.9.0
Parameters
----------
vstring : str
NumPy version string (``np.__version__``).
Examples
--------
>>> from numpy.lib import NumpyVersion
>>> if NumpyVersion(np.__version__) < '1.7.0'):
... print('skip')
skip
>>> NumpyVersion('1.7') # raises ValueError, add ".0"
c C s� || _ t�d|�}|std��|�� | _dd� | j�d�D �\| _| _| _ t
|�|�� krbd| _nvt�d||�� d � �}t�d||�� d � �}t�d ||�� d � �}d
d� |||gD �}|r�|d �� | _nd| _t
t�d
|��| _d S )Nz\d[.]\d+[.]\d+z Not a valid numpy version stringc S s g | ]}t |��qS � )�int)�.0�xr r �E/opt/alt/python37/lib64/python3.7/site-packages/numpy/lib/_version.py�
<listcomp>? s z)NumpyVersion.__init__.<locals>.<listcomp>�.�finalza\dzb\dzrc\dc S s g | ]}|d k r|�qS )Nr )r �mr r r r G s r � z.dev)�vstring�re�match�
ValueError�group�version�split�major�minor�bugfix�len�end�pre_release�bool�search�
is_devversion)�selfr Zver_mainZalphaZbetaZrcZpre_relr r r �__init__8 s"