DA.Numeric
Module Snapshot
Lifecycle
Stable.
Notices
Status:
active
Introduced in: 3.4.9
Removed in: -
Warnings: 0
Deprecations: 0
Deprecated since: -Data Types
data RoundingMode
Rounding modes.
Constructors:
RoundingUp
RoundingDown
RoundingCeiling
RoundingFloor
RoundingHalfUp
RoundingHalfDown
RoundingHalfEven
RoundingUnnecessary
Functions
mul
mul : NumericScale n3 => Numeric n1 -> Numeric n2 -> Numeric n3
Multiply two numerics. Both inputs and the output may have
different scales, unlike (*) which forces all numeric scales
to be the same. Raises an error on overflow, rounds to chosen
scale otherwise.
div
div : NumericScale n3 => Numeric n1 -> Numeric n2 -> Numeric n3
Divide two numerics. Both inputs and the output may have
different scales, unlike (/) which forces all numeric scales
to be the same. Raises an error on overflow, rounds to chosen
scale otherwise.
cast
cast : NumericScale n2 => Numeric n1 -> Numeric n2
Cast a Numeric. Raises an error on overflow or loss of precision.
castAndRound
castAndRound : NumericScale n2 => Numeric n1 -> Numeric n2
Cast a Numeric. Raises an error on overflow, rounds to chosen
scale otherwise.
shift
shift : NumericScale n2 => Numeric n1 -> Numeric n2
Move the decimal point left or right by multiplying the numeric
value by 10^(n1 - n2). Does not overflow or underflow.
pi
pi : NumericScale n => Numeric n
The number pi.
epsilon
epsilon : NumericScale n => Numeric n
The minimum strictly positive value that can be represented by a numeric of scale n.
roundNumeric
roundNumeric : NumericScale n => Int -> RoundingMode -> Numeric n -> Numeric n
Round a Numeric number. The value of round n r a is the value
of a rounded to n decimal places (i.e. scale), according to the rounding
mode r.
This will fail when using the RoundingUnnecessary mode for a number that cannot
be represented exactly with at most n decimal places.
Orphan Typeclass Instances
- instance
NumericScalen=>Bounded(Numericn)