Class: Plurimath::Formatter::Numbers::PrecisionResolver
- Inherits:
-
Object
- Object
- Plurimath::Formatter::Numbers::PrecisionResolver
- Defined in:
- lib/plurimath/formatter/numbers/precision_resolver.rb
Overview
Chooses which precision source wins for one render call.
Instance Method Summary collapse
Instance Method Details
#resolve(source, precision:, base:, significant:, notation_supported:) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/plurimath/formatter/numbers/precision_resolver.rb', line 8 def resolve(source, precision:, base:, significant:, notation_supported:) return precision if precision significant_precision = significant_base_precision(source, base, significant) return significant_precision if significant_precision # Source owns input-derived digit lengths; this resolver only decides # which precision rule wins. Plain decimal rendering preserves # fractional scale, while notation precision controls coefficient # digits after the leading digit. return source.notation_precision if notation_supported source.decimal_precision end |