From 435d1932409d64d9244e9f65bb0ccaf93e524df1 Mon Sep 17 00:00:00 2001 From: Guido Imperiale Date: Thu, 31 Oct 2019 11:25:41 +0000 Subject: [PATCH] No need for Unit to use __new__ --- pint/unit.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/pint/unit.py b/pint/unit.py index 7328a35d9..24c9e0b87 100644 --- a/pint/unit.py +++ b/pint/unit.py @@ -40,21 +40,20 @@ def __reduce__(self): return _unpickle, (Unit, self._units) - def __new__(cls, units): - inst = SharedRegistryObject.__new__(cls) + def __init__(self, units): + super(Unit, self).__init__() if isinstance(units, (UnitsContainer, UnitDefinition)): - inst._units = units + self._units = units elif isinstance(units, string_types): - inst._units = inst._REGISTRY.parse_units(units)._units + self._units = self._REGISTRY.parse_units(units)._units elif isinstance(units, Unit): - inst._units = units._units + self._units = units._units else: raise TypeError('units must be of type str, Unit or ' 'UnitsContainer; not {}.'.format(type(units))) - inst.__used = False - inst.__handling = None - return inst + self.__used = False + self.__handling = None @property def debug_used(self):