Complete documentation page mirrored and translated for learning. Attribution is shown at the bottom of each article.

阅读中文版

appdevreferencedaml-standard-libraryda-numeric

DA.Numeric

Documentation Index

Fetch the complete documentation index at: https://docs.canton.network/llms.txt Use this file to discover all available pages before exploring further.

DA.Numeric

Reference documentation for Daml module DA.Numeric.

DA.Numeric

Module Snapshot

Stable. Status: `active` Introduced in: `3.4.9` Removed in: `-` Warnings: `0` Deprecations: `0` Deprecated since: `-`

Data Types

data RoundingMode

Rounding modes.

Constructors:

  • RoundingUp Round away from zero.
  • RoundingDown Round towards zero.
  • RoundingCeiling Round towards positive infinity.
  • RoundingFloor Round towards negative infinity.
  • RoundingHalfUp Round towards the nearest neighbor unless both neighbors are equidistant, in which case round away from zero.
  • RoundingHalfDown Round towards the nearest neighbor unless both neighbors are equidistant, in which case round towards zero.
  • RoundingHalfEven Round towards the nearest neighbor unless both neighbors are equidistant, in which case round towards the even neighbor.
  • RoundingUnnecessary Do not round. Raises an error if the result cannot be represented without rounding at the targeted scale.

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 NumericScale n => Bounded (Numeric n)

Mirrored from Canton Network official documentation (CC-BY-4.0) by CC Privacy Club for learning purposes.