This abstract definition of a NUMBER is intended to be the unique
view of the client (do not use sub-classes names at all in the
client code). In order to create NUMBERs without using concrete
class name, the client code can inherit NUMBER_TOOLS. (See directory
tutorial/number for examples.)
A maximum of decimal
digits places will be used for the decimal part. If the
all_digits flag is True insignificant digits will be included
as well. (See also decimal_in to save memory.)
A value that is equal to Current if it is between the limits set by
a_min and a_max.
Otherwise it's a_min if Current is smaller or a_max if Current
is greater
It's a shortcut for Current.min(a_max).max(a_min) also known as
"clamp" in the widespread C library Glib