diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2023-01-05 10:38:34 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2023-01-05 10:38:34 +0000 |
commit | e3bdad36cc3a1a00c1e6772ca1c1898085ab73e0 (patch) | |
tree | 34512072a667ae716fd262e7b37e733e60fe4d89 /pendulum/mixins | |
parent | Adding upstream version 2.1.2. (diff) | |
download | pendulum-e3bdad36cc3a1a00c1e6772ca1c1898085ab73e0.tar.xz pendulum-e3bdad36cc3a1a00c1e6772ca1c1898085ab73e0.zip |
Adding upstream version 3.0.0~a1.upstream/3.0.0_a1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'pendulum/mixins')
-rw-r--r-- | pendulum/mixins/__init__.py | 1 | ||||
-rw-r--r-- | pendulum/mixins/default.py | 79 |
2 files changed, 36 insertions, 44 deletions
diff --git a/pendulum/mixins/__init__.py b/pendulum/mixins/__init__.py index 4c48b5a..e69de29 100644 --- a/pendulum/mixins/__init__.py +++ b/pendulum/mixins/__init__.py @@ -1 +0,0 @@ -# -*- coding: utf-8 -*-
diff --git a/pendulum/mixins/default.py b/pendulum/mixins/default.py index bfb5912..59f985e 100644 --- a/pendulum/mixins/default.py +++ b/pendulum/mixins/default.py @@ -1,43 +1,36 @@ -from ..formatting import Formatter
-
-
-_formatter = Formatter()
-
-
-class FormattableMixin(object):
-
- _formatter = _formatter
-
- def format(self, fmt, locale=None):
- """
- Formats the instance using the given format.
-
- :param fmt: The format to use
- :type fmt: str
-
- :param locale: The locale to use
- :type locale: str or None
-
- :rtype: str
- """
- return self._formatter.format(self, fmt, locale)
-
- def for_json(self):
- """
- Methods for automatic json serialization by simplejson
-
- :rtype: str
- """
- return str(self)
-
- def __format__(self, format_spec):
- if len(format_spec) > 0:
- if "%" in format_spec:
- return self.strftime(format_spec)
-
- return self.format(format_spec)
-
- return str(self)
-
- def __str__(self):
- return self.isoformat()
+from __future__ import annotations + +from pendulum.formatting import Formatter + +_formatter = Formatter() + + +class FormattableMixin: + _formatter: Formatter = _formatter + + def format(self, fmt: str, locale: str | None = None) -> str: + """ + Formats the instance using the given format. + + :param fmt: The format to use + :param locale: The locale to use + """ + return self._formatter.format(self, fmt, locale) + + def for_json(self) -> str: + """ + Methods for automatic json serialization by simplejson. + """ + return str(self) + + def __format__(self, format_spec: str) -> str: + if len(format_spec) > 0: + if "%" in format_spec: + return self.strftime(format_spec) + + return self.format(format_spec) + + return str(self) + + def __str__(self) -> str: + return self.isoformat() |