Prechádzať zdrojové kódy

datetimeex.Duration refactor

Fabian Peter Hammerle 8 rokov pred
rodič
commit
26eeeb2011
1 zmenil súbory, kde vykonal 3 pridanie a 13 odobranie
  1. 3 13
      ioex/datetimeex.py

+ 3 - 13
ioex/datetimeex.py

@@ -1,6 +1,7 @@
 import datetime
 import dateutil.parser
 import dateutil.tz.tz
+import ioex.classex
 import re
 
 
@@ -33,22 +34,11 @@ class Duration(object):
 
     yaml_tag = u'!duration'
 
+    years = ioex.classex.AttributeDescriptor('_years', types=(int,), min=0)
+
     def __init__(self, years=0):
         self.years = years
 
-    @property
-    def years(self):
-        return self._years
-
-    @years.setter
-    def years(self, years):
-        if not type(years) is int:
-            raise TypeError('expected int, %r given' % years)
-        elif years < 0:
-            raise ValueError('number of years must be >= 0, %r given' % years)
-        else:
-            self._years = years
-
     @property
     def isoformat(self):
         iso_str = re.sub(