Store cache from get_root_units and get_base_units
This commit is contained in:
@@ -804,6 +804,9 @@ class UnitRegistry(object):
|
||||
if not self._units[unit].converter.is_multiplicative:
|
||||
return None, units
|
||||
|
||||
if check_nonmult:
|
||||
self._root_units_cache[input_units] = factor, units
|
||||
|
||||
return factor, units
|
||||
|
||||
def get_base_units(self, input_units, check_nonmult=True, system=None):
|
||||
@@ -860,6 +863,9 @@ class UnitRegistry(object):
|
||||
|
||||
base_factor = self.convert(factor, units, destination_units)
|
||||
|
||||
if check_nonmult:
|
||||
self._base_units_cache[input_units] = base_factor, destination_units
|
||||
|
||||
return base_factor, destination_units
|
||||
|
||||
def _get_root_units_recurse(self, ref, exp, accumulators):
|
||||
@@ -1242,7 +1248,7 @@ class UnitRegistry(object):
|
||||
:param args: iterable of input units.
|
||||
:return: the wrapped function.
|
||||
:raises:
|
||||
:class:`TypeError` if the parameters don't match dimensions
|
||||
:class:`DimensionalityError` if the parameters don't match dimensions
|
||||
"""
|
||||
dimensions = [self.get_dimensionality(dim) for dim in args]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user