diff options
| author | Paul Buetow <paul@buetow.org> | 2026-05-22 12:41:00 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-05-22 12:41:00 +0300 |
| commit | 75f5f402a22b302b85bd69fe9589b82e5caade4d (patch) | |
| tree | 47df2ee0313ce7ccdd7c62180b2f253cde9ef3e2 /integrationtests | |
| parent | 9a68d3658e9d4f71121f90a1e0489898fea849f5 (diff) | |
Make hyper operators metric-aware for consistency
HyperAdd, HyperSubtract, and HyperModulo now validate that all operands
share the same metric category (Cool absorbs), convert to base units for
computation, and return the result with the appropriate metric.
HyperMultiply, HyperDivide, HyperPower, HyperLog2, HyperLog10, and
HyperLn use raw float64 values and always return Cool (unitless), since
the semantic meaning of combining N arbitrary units via these operations
is unclear.
- Add validateSameCategory() helper for multi-operand category checks
- Add resultMetricForHyperAdd() helper to find the result metric
(first non-Cool, falling back to Cool)
- Replace manual pop/reverse loops with popAll() for consistency
- Add comprehensive tests for all 9 hyper operators with metrics
Diffstat (limited to 'integrationtests')
0 files changed, 0 insertions, 0 deletions
