Skip to main content

Module types

Module types 

Source

Structs§

DagRegistry
Registry of dag declaration bodies accessible by name within a file.
DimensionRegistry
Dimension registry: maps dimension names to Dimension values and tracks base dimension metadata (ID assignment, names, default unit symbols).
IndexDef
A declared index with its ordered variants.
IndexRegistry
Index registry: maps declared index names and typed Nat-range identities to IndexDef.
NatRangeIndex
Typed identity for a concrete compiler-generated Nat range index.
PositiveFiniteScale
A unit scale factor that is guaranteed to be positive and finite.
RangeIndexData
Data for a concrete numeric range index (e.g., linspace(0.0 s, 100.0 s, step: 0.1 s)).
Registry
The frozen, read-only aggregate of all domain registries.
RegistryBuilder
Mutable builder for constructing a Registry.
StructField
A field in a record type definition.
TypeDef
A registered type definition: either a required type stub or a tagged union.
TypeGenericParam
A generic parameter on a type definition.
TypeRegistry
Type registry: maps type names to TypeDef and provides constructor-namespace lookup.
UnionMemberDef
A member (constructor) of a tagged-union type.
UnitInfo
Information about a registered unit.
UnitRegistry
Unit registry: maps unit names to UnitInfo (dimension + scale).

Enums§

IndexKind
The kind of an index: either named variants or a numeric range.
NatRangeIndexError
Error returned when an AST/runtime Nat range size cannot become a concrete index.
PositiveFiniteScaleError
Error returned when a unit scale is not a positive finite scalar.
TypeDefKind
The kind of a type definition.
TypeGenericConstraint
The constraint on a generic parameter of a type definition.
UnitResolveError
Why a unit expression could not be resolved.
UnitScale
How a unit’s scale factor is determined.

Functions§

pow_scale
Raise a positive unit scale to a rational power.