Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/dateutil/_common.py: 40%

25 statements  

« prev     ^ index     » next       coverage.py v7.3.2, created at 2023-12-08 06:51 +0000

1""" 

2Common code used in multiple modules. 

3""" 

4 

5 

6class weekday(object): 

7 __slots__ = ["weekday", "n"] 

8 

9 def __init__(self, weekday, n=None): 

10 self.weekday = weekday 

11 self.n = n 

12 

13 def __call__(self, n): 

14 if n == self.n: 

15 return self 

16 else: 

17 return self.__class__(self.weekday, n) 

18 

19 def __eq__(self, other): 

20 try: 

21 if self.weekday != other.weekday or self.n != other.n: 

22 return False 

23 except AttributeError: 

24 return False 

25 return True 

26 

27 def __hash__(self): 

28 return hash(( 

29 self.weekday, 

30 self.n, 

31 )) 

32 

33 def __ne__(self, other): 

34 return not (self == other) 

35 

36 def __repr__(self): 

37 s = ("MO", "TU", "WE", "TH", "FR", "SA", "SU")[self.weekday] 

38 if not self.n: 

39 return s 

40 else: 

41 return "%s(%+d)" % (s, self.n) 

42 

43# vim:ts=4:sw=4:et