1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| from datetime import tzinfo, timedelta
|
|
| class TomlTz(tzinfo):
| def __init__(self, toml_offset):
| if toml_offset == "Z":
| self._raw_offset = "+00:00"
| else:
| self._raw_offset = toml_offset
| self._sign = -1 if self._raw_offset[0] == '-' else 1
| self._hours = int(self._raw_offset[1:3])
| self._minutes = int(self._raw_offset[4:6])
|
| def tzname(self, dt):
| return "UTC" + self._raw_offset
|
| def utcoffset(self, dt):
| return self._sign * timedelta(hours=self._hours, minutes=self._minutes)
|
| def dst(self, dt):
| return timedelta(0)
|
|