Package Gnumed :: Package timelinelib :: Package calendar :: Module time
[frames] | no frames]

Source Code for Module Gnumed.timelinelib.calendar.time

1 # Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Rickard Lindberg, Roger Lindberg 2 # 3 # This file is part of Timeline. 4 # 5 # Timeline is free software: you can redistribute it and/or modify 6 # it under the terms of the GNU General Public License as published by 7 # the Free Software Foundation, either version 3 of the License, or 8 # (at your option) any later version. 9 # 10 # Timeline is distributed in the hope that it will be useful, 11 # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 # GNU General Public License for more details. 14 # 15 # You should have received a copy of the GNU General Public License 16 # along with Timeline. If not, see <http://www.gnu.org/licenses/>. 17 18 19 -class ComparableValue(object):
20
21 - def __init__(self, value):
22 self._value = value
23 24 @property
25 - def value(self):
26 return self._value
27
28 - def __eq__(self, other):
29 if isinstance(other, self.__class__): 30 return self.value == other.value 31 else: 32 return NotImplemented
33
34 - def __ne__(self, other):
35 if isinstance(other, self.__class__): 36 return self.value != other.value 37 else: 38 return NotImplemented
39
40 - def __lt__(self, other):
41 if isinstance(other, self.__class__): 42 return self.value < other.value 43 else: 44 return NotImplemented
45
46 - def __le__(self, other):
47 if isinstance(other, self.__class__): 48 return self.value <= other.value 49 else: 50 return NotImplemented
51
52 - def __gt__(self, other):
53 if isinstance(other, self.__class__): 54 return self.value > other.value 55 else: 56 return NotImplemented
57
58 - def __ge__(self, other):
59 if isinstance(other, self.__class__): 60 return self.value >= other.value 61 else: 62 return NotImplemented
63
64 65 -class GenericTimeMixin(object):
66
67 - def __radd__(self, other):
68 return self + other
69
70 - def to_str(self):
71 return repr(self)
72
73 74 -class GenericDeltaMixin(object):
75
76 - def __rmul__(self, other):
77 return self * other
78
79 - def __neg__(self):
80 return -1 * self
81