(cls, value, kwds)
| 289 | |
| 290 | @classmethod |
| 291 | def parse(cls, value, kwds): |
| 292 | if not value: |
| 293 | kwds['defects'].append(errors.HeaderMissingRequiredValue()) |
| 294 | kwds['datetime'] = None |
| 295 | kwds['decoded'] = '' |
| 296 | kwds['parse_tree'] = parser.TokenList() |
| 297 | return |
| 298 | if isinstance(value, str): |
| 299 | kwds['decoded'] = value |
| 300 | try: |
| 301 | value = utils.parsedate_to_datetime(value) |
| 302 | except ValueError: |
| 303 | kwds['defects'].append(errors.InvalidDateDefect('Invalid date value or format')) |
| 304 | kwds['datetime'] = None |
| 305 | kwds['parse_tree'] = parser.TokenList() |
| 306 | return |
| 307 | kwds['datetime'] = value |
| 308 | kwds['decoded'] = utils.format_datetime(kwds['datetime']) |
| 309 | kwds['parse_tree'] = cls.value_parser(kwds['decoded']) |
| 310 | |
| 311 | def init(self, *args, **kw): |
| 312 | self._datetime = kw.pop('datetime') |
no test coverage detected