File: //usr/share/dh-python/dhpython/__pycache__/version.cpython-35.pyc
vX9 @ s d d l Z d d l Z d d l m Z d d l m Z d Z e j e Z e j d e j Z
e j d Z d a
Gd d d Z Gd d
d
Z d d Z d
d Z d d d d Z d d d Z d S) N)exists) _defaultsz(-)?(\d\.\d+)(?:(-)(\d\.\d+)?)?z
(?P<major>\d+)\.?
(?P<minor>\d+)?\.?
(?P<micro>\d+)?[.\s]?
(?P<releaselevel>alpha|beta|candidate|final)?[.\s]?
(?P<serial>\d+)?dhpythonc @ s e Z d Z d d d d d d d d Z d d Z d d Z d d Z d
d Z d d
Z d d Z d d Z
d d Z d d Z d d Z
d d Z d d Z d d d Z d S)VersionNc
C sY t | t t f r1 d j d d | D } t | t rn x' d D] } t | | t | | qG Wd St } | d =| d
=| r t j | } xR | r | j
j n g D]2 \ } } | d k r | | d k r | | | <q WxN | j D]@ \ } } | d k r,| d k r,t | } t | | | q W| j
sUt d d S)
N.c s s | ] } t | Vq d S)N)str).0i r
(/usr/share/dh-python/dhpython/version.py <genexpr>, s z#Version.__init__.<locals>.<genexpr>majorminormicroreleaselevelserialselfvaluezmajor component is required)r
r r r r )
isinstancetuplelistjoinr setattrgetattrlocals
VERSION_REmatch groupdictitemsintr
ValueError)
r r r
r r r r namecompr r
r
r __init__) s(
+ zVersion.__init__c C s8 t | j } | j d k r4 | d j | j 7} | S)zReturn major.minor or major string.
>>> str(Version(major=3, minor=2, micro=1, releaselevel='final', serial=4))
'3.2'
>>> str(Version(major=2))
'2'
Nz.{})r r
r format)r resultr
r
r __str__@ s zVersion.__str__c C s t t | S)N)hashrepr)r r
r
r __hash__M s zVersion.__hash__c C sQ d j | } x7 d D]/ } t | | } | s2 P| d j | 7} q W| d S)zReturn full version string.
>>> repr(Version(major=3, minor=2, micro=1, releaselevel='final', serial=4))
"Version('3.2.1.final.4')"
>>> repr(Version(major=2))
"Version('2')"
zVersion('{}r r r z.{}z'))r r r )r$ r )r r% r! r r
r
r __repr__P s
zVersion.__repr__c C sL t | } | j d k r3 | j t | 7_ n | j t | 7_ | S)zReturn next version.
>>> Version('3.1') + 1
Version('3.2')
>>> Version('2') + '1'
Version('3')
N)r r r
r )r otherr% r
r
r __add__` s
zVersion.__add__c C sv t | } | j d k r<