Clarify floating-point to integral conversion rounding behaviour

This commit is contained in:
Abduqodiri Qurbonzoda
2019-08-13 08:26:15 +03:00
parent fd5bf33861
commit 432828a2db
7 changed files with 12 additions and 12 deletions
+4 -4
View File
@@ -1160,7 +1160,7 @@ public class Float private constructor() : Number(), Comparable<Float> {
/**
* Converts this [Float] value to [Int].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Float` value is `NaN`, [Int.MIN_VALUE] if it's less than `Int.MIN_VALUE`,
* [Int.MAX_VALUE] if it's bigger than `Int.MAX_VALUE`.
*/
@@ -1168,7 +1168,7 @@ public class Float private constructor() : Number(), Comparable<Float> {
/**
* Converts this [Float] value to [Long].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Float` value is `NaN`, [Long.MIN_VALUE] if it's less than `Long.MIN_VALUE`,
* [Long.MAX_VALUE] if it's bigger than `Long.MAX_VALUE`.
*/
@@ -1378,7 +1378,7 @@ public class Double private constructor() : Number(), Comparable<Double> {
/**
* Converts this [Double] value to [Int].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Double` value is `NaN`, [Int.MIN_VALUE] if it's less than `Int.MIN_VALUE`,
* [Int.MAX_VALUE] if it's bigger than `Int.MAX_VALUE`.
*/
@@ -1386,7 +1386,7 @@ public class Double private constructor() : Number(), Comparable<Double> {
/**
* Converts this [Double] value to [Long].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Double` value is `NaN`, [Long.MIN_VALUE] if it's less than `Long.MIN_VALUE`,
* [Long.MAX_VALUE] if it's bigger than `Long.MAX_VALUE`.
*/
+1 -1
View File
@@ -241,7 +241,7 @@ class GeneratePrimitives(out: PrintWriter) : BuiltInsSourceGenerator(out) {
"""
} else {
"""
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `$thisName` value is `NaN`, [$otherName.MIN_VALUE] if it's less than `$otherName.MIN_VALUE`,
* [$otherName.MAX_VALUE] if it's bigger than `$otherName.MAX_VALUE`.
*/
+1 -1
View File
@@ -349,7 +349,7 @@ class UnsignedTypeGenerator(val type: UnsignedType, out: PrintWriter) : BuiltIns
/**
* Converts this [$otherName] value to [$className].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `$otherName` value is negative or `NaN`, [$className.MAX_VALUE] if it's bigger than `$className.MAX_VALUE`.
*/
""".trimIndent()
+1 -1
View File
@@ -336,7 +336,7 @@ internal fun fromInt(value: Int) = Long(value, if (value < 0) -1 else 0)
/**
* Converts this [Double] value to [Long].
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Double` value is `NaN`, [Long.MIN_VALUE] if it's less than `Long.MIN_VALUE`,
* [Long.MAX_VALUE] if it's bigger than `Long.MAX_VALUE`.
*/
+1 -1
View File
@@ -95,7 +95,7 @@ Kotlin.Long.fromInt = function(value) {
/**
* Converts this number value to `Long`.
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Double` value is `NaN`, `Long.MIN_VALUE` if it's less than `Long.MIN_VALUE`,
* `Long.MAX_VALUE` if it's bigger than `Long.MAX_VALUE`.
* @param {number} value The number in question.
+2 -2
View File
@@ -313,7 +313,7 @@ public inline fun Long.toUInt(): UInt = UInt(this.toInt())
/**
* Converts this [Float] value to [UInt].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Float` value is negative or `NaN`, [UInt.MAX_VALUE] if it's bigger than `UInt.MAX_VALUE`.
*/
@SinceKotlin("1.3")
@@ -323,7 +323,7 @@ public inline fun Float.toUInt(): UInt = doubleToUInt(this.toDouble())
/**
* Converts this [Double] value to [UInt].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Double` value is negative or `NaN`, [UInt.MAX_VALUE] if it's bigger than `UInt.MAX_VALUE`.
*/
@SinceKotlin("1.3")
@@ -316,7 +316,7 @@ public inline fun Long.toULong(): ULong = ULong(this)
/**
* Converts this [Float] value to [ULong].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Float` value is negative or `NaN`, [ULong.MAX_VALUE] if it's bigger than `ULong.MAX_VALUE`.
*/
@SinceKotlin("1.3")
@@ -326,7 +326,7 @@ public inline fun Float.toULong(): ULong = doubleToULong(this.toDouble())
/**
* Converts this [Double] value to [ULong].
*
* The fractional part, if any, is rounded down.
* The fractional part, if any, is rounded down towards zero.
* Returns zero if this `Double` value is negative or `NaN`, [ULong.MAX_VALUE] if it's bigger than `ULong.MAX_VALUE`.
*/
@SinceKotlin("1.3")