- Contain a single optional decimal place always represented with
.
- In libraries will be stored in memory as integers, and converted to floats for atomic maths operations if needed.
- Have tailing
0
s to determine the significant digits, e.g.1.000
implies we’re dealing with an integer value of1000
, and thus an accuracy of three decimal places. - When performing arithmetic will always convert the incoming amount’s value to have the same exponential as the base.
- Does not include support for exponential values in output, like
2.0e10
, as amounts are typically used for consumption by humans and not complex mathematical calculations with large numbers.
- Require a
%
symbol at the end of the serialised value, for example10.0%
- Will always be converted with a factor of 100, so
16.0%
implies an underlying value of0.160
or160
as an integer, in order to make calculations.