MCPcopy Index your code
hub / github.com/python-pendulum/pendulum / FixedTimezone

Class FixedTimezone

src/pendulum/tz/timezone.py:164–242  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

162
163
164class FixedTimezone(_datetime.tzinfo, PendulumTimezone):
165 def __init__(self, offset: int, name: str | None = None) -> None:
166 sign = "-" if offset < 0 else "+"
167
168 minutes = offset / 60
169 hour, minute = divmod(abs(int(minutes)), 60)
170
171 if not name:
172 name = f"{sign}{hour:02d}:{minute:02d}"
173
174 self._name = name
175 self._offset = offset
176 self._utcoffset = _datetime.timedelta(seconds=offset)
177
178 def __eq__(self, other: object) -> bool:
179 return isinstance(other, FixedTimezone) and self._offset == other._offset
180
181 @property
182 def name(self) -> str:
183 return self._name
184
185 def convert(self, dt: _DT, raise_on_unknown_times: bool = False) -> _DT:
186 if dt.tzinfo is None:
187 return dt.__class__(
188 dt.year,
189 dt.month,
190 dt.day,
191 dt.hour,
192 dt.minute,
193 dt.second,
194 dt.microsecond,
195 tzinfo=self,
196 fold=0,
197 )
198
199 return cast("_DT", dt.astimezone(self))
200
201 def datetime(
202 self,
203 year: int,
204 month: int,
205 day: int,
206 hour: int = 0,
207 minute: int = 0,
208 second: int = 0,
209 microsecond: int = 0,
210 ) -> _datetime.datetime:
211 return self.convert(
212 _datetime.datetime(
213 year, month, day, hour, minute, second, microsecond, fold=1
214 )
215 )
216
217 @property
218 def offset(self) -> int:
219 return self._offset
220
221 def utcoffset(self, dt: _datetime.datetime | None) -> _datetime.timedelta:

Callers 2

parse_iso8601Function · 0.90
fixed_timezoneFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…