unitflow.define¶
Unit definitions, namespaces, registries, and SI prefix generation.
Unit-definition and namespace exports.
- class unitflow.define.UnitNamespace(name)[source]¶
Bases:
objectA simple named namespace for unit lookup by symbol, name, or alias.
- Parameters:
name (str)
- define_unit(*, name, symbol, expr, aliases=(), family=None, quantity_kind=None)[source]¶
- Parameters:
name (str)
symbol (str)
aliases (tuple[str, ...])
family (UnitFamily | None)
quantity_kind (str | None)
- Return type:
- class unitflow.define.UnitRegistry(name='registry')[source]¶
Bases:
objectA lightweight registry that resolves identifiers across namespaces.
- Parameters:
name (str)
- add_namespace(namespace)[source]¶
- Parameters:
namespace (UnitNamespace)
- Return type:
- unitflow.define.define_unit(*, name, symbol, expr, aliases=(), family=None, quantity_kind=None)[source]¶
Define a new semantic unit from an existing unit or exact quantity expression.
- Parameters:
name (str)
symbol (str)
aliases (tuple[str, ...])
family (UnitFamily | None)
quantity_kind (str | None)
- Return type:
- unitflow.define.generate_prefixes(namespace, base_unit, *, prefixes=None, include=None, exclude=None, resolver=None)[source]¶
Generate prefixed variants of a base unit and register them in a namespace.
Returns a dict mapping prefix names to the created units.
- Parameters:
namespace (UnitNamespace)
base_unit (Unit)
prefixes (dict[str, tuple[str, Fraction]] | None)
include (set[str] | None)
exclude (set[str] | None)
resolver (DisplayResolver | None)
- Return type:
dict[str, Unit]