BigDecimal
Represents arbitrary-precision signed decimal numbers.
The representation consists of both a "value" and a "scale". Standard
equality (== and the Eq trait) consider both value and scale,
numerical equality (are the values the same after the scales have been
normalized) is provided by the function numericEquals.
Definitions
def abs(x: BigDecimal): BigDecimal
SourceReturns the absolute value of x.
def ceil(x: BigDecimal): BigDecimal
SourceReturns x rounded up to a BigDecimal representing the nearest larger integer value.
def compare(x: BigDecimal, y: BigDecimal): Int32
SourceReturns 1 if x > y, -1 if x < y, and 0 if x = y.
def dist(x: BigDecimal, y: BigDecimal): BigDecimal
SourceReturns the distance between x and y.
def floor(x: BigDecimal): BigDecimal
SourceReturns x rounded down to a BigDecimal representing the nearest smaller integer value.
def fromString(s: String): Option[BigDecimal]
SourceParse the string s as an BigDecimal, leading or trailing whitespace is trimmed.
A successful parse is wrapped with Some(x), a parse failure is indicated by None.
def max(x: BigDecimal, y: BigDecimal): BigDecimal
SourceReturns the larger of x and y.
def min(x: BigDecimal, y: BigDecimal): BigDecimal
SourceReturns the smaller of x and y.
def numericEquals(x: BigDecimal, y: BigDecimal): Bool
SourceCompare x and y for equality normalizing any difference in scale.
def pow(base: { base = BigDecimal }, n: Int32): BigDecimal
SourceReturns base raised to the power of n.
def precision(x: BigDecimal): Int32
SourceReturns the precision of x.
def round(x: BigDecimal): BigDecimal
SourceReturns x rounded to a BigDecimal representing the nearest integer value.
The rounding may be upwards or downwards. If the rounding up and rounding down are equally
close, x will be rounded to an even value (i.e. round(0.5ff64) == 0.0ff64).
def scale(x: BigDecimal): Int32
SourceReturns the scale of x.
def signum(x: BigDecimal): Int32
SourceReturns 1 if x > 0, -1 if x < 0, and 0 if x = 0.
def toBigInt(x: BigDecimal): BigInt
SourceConvert x to a BigInt.
def toPlainString(x: BigDecimal): String
SourceReturns x as a "plain string" without an exponent field.
def tryToFloat32(x: BigDecimal): Option[Float32]
SourceConvert x to an Option[Float32].
Returns Some(x as Float32) if the numeric value of x is within the range
of Float32, loss of precision may occur.
Returns None if the numeric value of x is outside the range of Float32
(i.e. 1.4E-45 to 3.4028235E38).
def tryToFloat64(x: BigDecimal): Option[Float64]
SourceConvert x to an Option[Float64].
Returns Some(x as Float64) if the numeric value of x is within the range
of Float64, loss of precision may occur.
Returns None if the numeric value of x is outside the range of Float64
(i.e 4.9E-324 to 1.7976931348623157E308).
def tryToInt16(x: BigDecimal): Option[Int16]
SourceConvert x to an Option[Int16].
Returns Some(x as Int16) if the numeric value of x is within the range
of Int16, rounding x towards 0`.
Returns None if the numeric value of x is outside the range of Int16
(i.e. -32768 to 32767).
def tryToInt32(x: BigDecimal): Option[Int32]
SourceConvert x to an Option[Int32].
Returns Some(x as Int32) if the numeric value of x is within the range
of Int32, rounding x towards 0`.
Returns None if the numeric value of x is outside the range of Int32
(i.e. -2147483648 to 2147483647).
def tryToInt64(x: BigDecimal): Option[Int64]
SourceConvert x to an Option[Int64].
Returns Some(x as Int64) if the numeric value of x is within the range
of Int64, rounding x towards 0`.
Returns None if the numeric value of x is outside the range of Int64
(i.e. -9223372036854775808 to 9223372036854775807).
def tryToInt8(x: BigDecimal): Option[Int8]
SourceConvert x to an Option[Int8].
Returns Some(x as Int8) if the numeric value of x is within the range
of Int8, rounding x towards 0`.
Returns None if the numeric value of x is outside the range of Int8
(i.e. -128 to 127).