lang.float
ballerina/lang.float
Module overview
The lang.float
module corresponds to the float
basic type.
Functions
abs
Returns the IEEE absolute value of a float value.
Parameters
- x float - float value to operate on
Return Type
- float - absolute value of parameter
x
acos
Returns the arccosine of a float value.
Corresponds to IEEE acos operation.
Parameters
- x float - float value to operate on
Return Type
- float - the arccosine of parameter
x
in radians
asin
Returns the arcsine of a float value.
Corresponds to IEEE asin operation.
Parameters
- x float - float value to operate on
Return Type
- float - the arcsine of parameter
x
in radians
atan
Returns the arctangent of a float value.
Corresponds to IEEE atan operation.
Parameters
- x float - float value to operate on
Return Type
- float - the arctangent of parameter
x
in radians
atan2
Performs the 2-argument arctangent operation.
Corresponds IEEE atan2(y, x) operation.
Return Type
- float - the angle in radians from the positive x-axis to the point
whose Cartesian coordinates are
(x, y)
cbrt
Returns the cube root of a float value.
Corresponds to IEEE rootn(x, 3) operation.
Parameters
- x float - float value to operate on
Return Type
- float - cube root of parameter
x
ceiling
Rounds a float up to the closest integral value.
Parameters
- x float - float value to operate on
Return Type
- float - smallest (closest to -∞) decimal value not less than parameter
x
that is a mathematical integer
cos
Returns the cosine of a float value.
Corresponds to IEEE cos operation.
Parameters
- x float - float value, specifying an angle in radians
Return Type
- float - the cosine of parameter
x
cosh
Returns the hyperbolic cosine of a float value.
Corresponds to IEEE cosh operation.
Parameters
- x float - float value to operate on
Return Type
- float - hyperbolic cosine of parameter
x
exp
Raises Euler's number to a power.
Corresponds to IEEE exp operation.
Parameters
- x float - float value to operate on
Return Type
- float - Euler's number raised to the power parameter
x
floor
Rounds a float down to the closest integral value.
Parameters
- x float - float value to operate on
Return Type
- float - largest (closest to +∞) float value not greater than parameter
x
that is a mathematical integer
fromBitsInt
Returns the float that is represented in IEEE 64-bit floating point by an int.
All bit patterns that IEEE defines to be NaNs will all be mapped to the single float NaN value.
Parameters
- x int - int value
Return Type
- float - parameter
x
bit pattern as a float
fromHexString
Return the float value represented by a string.
parameter s
must follow the syntax of HexFloatingPointLiteral as defined by the Ballerina specification
with the following modifications
- the HexFloatingPointLiteral may have a leading
+
or-
sign NaN
is allowedInfinity
is allowed with an optional leading+
or-
sign
Parameters
- s string - hexadecimal floating point hex string representation
fromString
Returns the float value represented by a string.
parameter s
must follow the syntax of DecimalFloatingPointNumber as defined by the Ballerina specification
with the following modifications
- the DecimalFloatingPointNumber may have a leading
+
or-
sign NaN
is allowedInfinity
is allowed with an optional leading+
or-
sign- a FloatingPointTypeSuffix is not allowed
This is the inverse of function
value:toString
applied to anfloat
.
Parameters
- s string - string representation of a float
isFinite
Tests whether a float is finite.
Exactly one of isFinite, isInfinite and IsNaN will be true for any float value
Parameters
- x float - the float to be tested
Return Type
- boolean - true if parameter
x
is finite, i.e., neither NaN nor +∞ nor -∞
isInfinite
Tests whether a float is infinite.
Exactly one of isFinite, isInfinite and IsNaN will be true for any float value
Parameters
- x float - the float to be tested
Return Type
- boolean - true if parameter
x
is either +∞ or -∞
isNaN
Tests whether a float is NaN.
Exactly one of isFinite, isInfinite and IsNaN will be true for any float value.
Parameters
- x float - the float to be tested
Return Type
- boolean - true if parameter
x
is NaN
log
Returns the natural logarithm of a float value.
Corresponds to IEEE log operation.
Parameters
- x float - float value to operate on
Return Type
- float - natural logarithm of parameter
x
log10
Returns the base 10 logarithm of a float value.
Corresponds to IEEE log10 operation.
Parameters
- x float - float value to operate on
Return Type
- float - base 10 logarithm of parameter
x
max
Returns the maximum of zero or more float values.
Result is -∞ if no args NaN if any arg is NaN
Parameters
- xs float... - float values to operate on
Return Type
- float - maximum value of all of parameter
xs
min
Returns the minimum of zero or more float values.
Result is +∞ if no args Result is NaN if any arg is NaN
Parameters
- xs float... - float values to operate on
Return Type
- float - minimum value of all of parameter
xs
pow
Raises one float value to the power of another float values.
Corresponds to IEEE pow(x, y) operation.
Return Type
- float -
x
raised to the power of parametery
round
Rounds a float value to a specified number of digits.
Returns the float value that is an integral multiple of 10 raised to the power of -fractionDigits
and closest to x
.
If there are two such values, choose the one whose final digit is even
(this is the round-to-nearest rounding mode, which is the default for IEEE and for Ballerina).
A value of fractionDigits
greater than 0 thus corresponds to the number of digits after the decimal
point being fractionDigits
; a value of 0 for fractionDigits
rounds to an integer.
If x
is NaN, +0, -0, +∞ or -∞, then the result is x
.
When fractionDigits
is 0, this is
the same as Java Math.rint method, .NET Math.Round method and
IEEE roundToIntegralTiesToEven operation
Note that <int>x
is the same as <int>x.round(0)
.
Parameters
- x float - float value to operate on
- fractionDigits int (default 0) - the number of digits after the decimal point
Return Type
- float - float value closest to
x
that is an integral multiple of 10 raised to the power of-fractionDigits
sin
Returns the sine of a float value.
Corresponds to IEEE sin operation.
Parameters
- x float - float value, specifying an angle in radians
Return Type
- float - the sine of parameter
x
sinh
Returns the hyperbolic sine of a float value.
Corresponds to IEEE sinh operation.
Parameters
- x float - float value to operate on
Return Type
- float - hyperbolic sine of parameter
x
sqrt
Returns the square root of a float value.
Corresponds to IEEE squareRoot operation.
Parameters
- x float - float value to operate on
Return Type
- float - square root of parameter
x
sum
Returns the sum of zero or more float values.
Result is NaN if any arg is NaN
Parameters
- xs float... - float values to sum
Return Type
- float - sum of all of parameter
xs
, +0.0 if parameterxs
is empty
tan
Returns the tangent of a float value.
Corresponds to IEEE tan operation
Parameters
- x float - float value, specifying an angle in radians
Return Type
- float - the tangent of parameter
x
tanh
Returns the hyperbolic tangent of a float value.
Corresponds to IEEE tanh operation.
Parameters
- x float - float value to operate on
Return Type
- float - hyperbolic tangent of parameter
x
toBitsInt
Returns IEEE 64-bit binary floating point format representation of a float value as an int.
Parameters
- x float - float value
Return Type
- int - parameter
x
bit pattern as an int
toExpString
Returns a string that represents x
using scientific notation.
The returned string will be in the same format used by value:toString
,
except that it will always include an exponent and there will be exactly
one digit before the decimal point.
But if x
is NaN or infinite, the result will be the same as value:toString
.
The digit before the decimal point will be zero only if all other digits
are zero.
This will panic if fractionDigits
is less than 0.
If fractionDigits
is zero, there will be no decimal point.
Any necessary rounding will use the roundTiesToEven rounding direction.
The exponent in the result uses lower-case e
, followed by a +
or -
sign,
followed by at least two digits, and only as many more digits as are needed
to represent the result. If x
is zero, the exponent is zero. A zero exponent
is represented with a +
sign.
Parameters
- x float - float value
- fractionDigits int? - number of digits following the decimal point;
()
means to use the minimum number of digits required to accurately represent the value
Return Type
- string - string representation of
x
in scientific notation
toFixedString
Returns a string that represents x
using fixed-point notation.
The returned string will be in the same format used by value:toString
,
except that it will not include an exponent.
If x
is NaN or infinite, the result will be the same as value:toString
.
This will panic if fractionDigits
is less than 0.
If fractionDigits
is zero, there will be no decimal point.
Any necessary rounding will use the roundTiesToEven rounding direction.
Parameters
- x float - float value
- fractionDigits int? - number of digits following the decimal point;
()
means to use the minimum number of digits required to accurately represent the value
Return Type
- string - string representation of
x
in fixed-point notation
toHexString
Returns a string that represents a float value as a hexadecimal floating point number.
The returned string will comply to the grammar of HexFloatingPointLiteral in the Ballerina spec with the following modifications:
- it will have a leading
-
sign if negative - positive infinity will be represented by
Infinity
- negative infinity will be represented by
-Infinity
- NaN will be represented by
NaN
The representation includes0x
for finite numbers.
Parameters
- x float - float value
Return Type
- string - hexadecimal floating point hex string representation