Source code for pinttr._defaults

from typing import Union

import pint

#: Default unit registry (if not modified with :func:`.set_unit_registry`, it is the `application registry <https://pint.readthedocs.io/en/stable/getting/pint-in-your-projects.html#having-a-shared-registry>`_).
unit_registry = pint.get_application_registry()


[docs] def set_unit_registry(ureg: Union[pint.UnitRegistry, pint.ApplicationRegistry]) -> None: """ Set unit registry. By default, Pinttrs uses the `application registry <https://pint.readthedocs.io/en/stable/getting/pint-in-your-projects.html#having-a-shared-registry>`_). :param ureg: Unit registry. :raises: :class:`TypeError` if ``ureg`` is not a :class:`pint.UnitRegistry`. .. versionchanged:: 24.1.0 The default registry is now the application registry. """ global unit_registry if not isinstance(ureg, (pint.UnitRegistry, pint.ApplicationRegistry)): raise TypeError( "ureg must be a pint.UnitRegistry or pint.ApplicationRegistry instance" ) unit_registry = ureg
[docs] def get_unit_registry() -> Union[pint.UnitRegistry, pint.ApplicationRegistry]: """ Get default unit registry. By default, Pinttrs uses the `application registry <https://pint.readthedocs.io/en/stable/getting/pint-in-your-projects.html#having-a-shared-registry>`_). .. versionchanged:: 24.1.0 The default registry is now the application registry. """ global unit_registry return unit_registry