Ilya Gorbunov
6197c5bf7f
Add sample for coerceIn with floating point range
...
#KT-20357
2018-01-11 09:05:28 +03:00
Ilya Gorbunov
8fc83e3ff5
Add samples for coerceIn, coerceAtLeast, coerceAtMost for comparable types
...
#KT-20357
2018-01-11 09:05:28 +03:00
shiraji
17573a3c21
Add samples for coerceIn
...
#KT-20357
2018-01-11 09:05:28 +03:00
shiraji
4559da9848
Add samples for coerceAtMost
...
#KT-20357
2018-01-11 09:05:28 +03:00
shiraji
db607e231c
Add samples for coerceAtLeast
...
#KT-20357
2018-01-11 09:05:27 +03:00
Jake Wharton
11696ac4c0
Implement String.toBoolean() for JS.
...
#KT-16348
2018-01-10 15:32:49 +03:00
Ilya Gorbunov
e2306ecf94
Keep exception primary constructors for binary compatibility in JS
...
Resort to a workaround for KT-22053 in direct Throwable inheritors.
2017-12-29 21:21:20 +03:00
Ilya Gorbunov
4e26ca5659
Add missing exception constructors to common and JS declarations
...
Add test to validate exception properties after calling various constructors.
Make NumberFormatException a descendant of IllegalArgumentException in all platforms.
#KT-21861 Fixed
#KT-21191 Fixed
2017-12-29 21:16:17 +03:00
Ilya Gorbunov
042f81f23b
Fix Volatile usages in common and JS code
2017-12-27 21:55:24 +03:00
Ilya Gorbunov
a33a3867b8
JS: Move declaration to match their packages in JVM and Common stdlib
...
Mostly internal, but also two public annotations
2017-12-27 21:55:24 +03:00
Ilya Gorbunov
d9edc5f221
Replace Regex constructor-like functions with secondary constructors
...
Historically secondary constructors were not supported in Kotlin/JS, so they had to
be emulated with constructor-like top level functions, now they can be rewritten
as true secondary constructors.
#KT-22003 Fixed
2017-12-26 05:40:35 +03:00
Ilya Gorbunov
d8cd926a8c
Do not leak primitiveness of an array wrapped with asList
...
A primitive array wrapped in a List with asList had incorrect implementation of toArray method:
while it declares that an object array is returned, it returned a primitive array.
Therefore the methods such as `Collection.toTypedArray()` and its dependents
`ArrayList(collection)`, `Collection + Iterable` might behave incorrectly
having relied on `toTypedArray` returned an object array.
#KT-21828 Fixed
2017-12-18 15:50:15 +03:00
Alexey Andreev
9c0e049bbe
JS: fix boxed char with latest changes in compiler
2017-12-01 15:20:34 +03:00
Ilya Gorbunov
bd4d847943
Fix unresolved references in the api docs
...
These were mostly incorrect parameter names and external api links.
2017-11-28 18:41:17 +03:00
Alexey Andreev
be4e2f96c2
JS: throw error from coroutine marker functions
2017-11-27 17:01:18 +03:00
Alexey Andreev
71b1591044
JS: replace suspend inline metadata after inlining
...
This fixes some issues on coroutine inlining, see tests
2017-11-27 17:01:18 +03:00
Ilya Gorbunov
dcd0a94d76
Minor: fix extra space in return type of chunked and windowed
2017-11-15 09:17:42 +03:00
Ilya Gorbunov
a005f4804e
Strengthen deprecation for CharSequence.size in JS
2017-11-07 18:59:33 +03:00
Ilya Gorbunov
9305903e6c
Remove deprecated pairwise function
...
It was replaced with zipWithNext.
2017-11-07 18:59:33 +03:00
Alexey Andreev
43302ce00c
JS: add missing members to kotlin.js.Date
...
See KT-20694
2017-11-03 17:31:25 +03:00
Alexey Andreev
0a31b4ccc1
JS: improve declarations for JSON object
...
See KT-20580
2017-11-03 17:31:22 +03:00
Alexey Andreev
e9e01b70a8
JS: fix super access to simple non-overridable properties
...
See KT-7653
2017-10-30 13:12:09 +03:00
Ilya Gorbunov
ace9d0da94
Finalize math function parameter names
...
#KT-4900
2017-10-25 21:30:03 +03:00
Alexey Andreev
85945e0a6d
JS: add getFunctionById intrinsic
2017-10-25 20:18:04 +03:00
Alexey Andreev
aae67e154a
JS: add intrinsic for !!. Use it instead of ternary conditionals
...
See KT-2976
2017-10-25 20:18:03 +03:00
Anton Bannykh
b5d32f420d
JS: correct Double and Float conversions to Int (KT-8374 fixed)
2017-10-13 20:29:28 +03:00
Zalim Bashorov
beec788bd4
KJS: improve declaration for JS Promise and add helpers to simplify some usecases
...
* add `then` with only one parameter to make usages from Kotlin more idiomatic
* add overload static `resolve` which accepts Promise<S> according to the spec
* add helper functions for `then` to simplify chained usages
when Promise is returned from `then` or `catch` (workaround for KT-19672)
2017-10-12 18:07:09 +03:00
Ilya Gorbunov
781ca6d2b5
Inline swap function, do not use deprecated floor.
2017-10-12 06:06:26 +03:00
Pap Lorinc
e640867238
Provide java.util.Collections#shuffle as extensions for collections in JS
...
#KT-2460
2017-10-12 06:06:26 +03:00
Ilya Gorbunov
aab604d154
Improve math docs
...
Add links from log to ln, log2, log10.
Format lists in docs so that they are pretty in quick doc window.
2017-10-12 05:58:04 +03:00
Ilya Gorbunov
abdcbf1fb2
Refactor: use the same arraybuffer to compute double hashcode
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
0454bd9e28
Detect endianness when reinterpreting Float64 as two Int32
...
#KT-18264
Use Int32Array instead of Uint32Array since ints are required to be singed.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
aa3bfc55c3
Implement in JS nextUp(), nextDown(), nextTowards() and ulp extensions
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
480d4a0093
Make withSign(NaN) behave as in JVM
...
#KT-4900
Where only the sign of the result is undefined, but the absolute value is unchanged.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
132f2f88c2
Provide Double and Float bit conversion functions as extensions in JS and Common
...
Instance extension: Double/Float.toBits/toRawBits
Companion extension: Double/Float.Companion.fromBits
#KT-18264 Fixed
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
044ccf1532
Introduce inverse hyperbolic functions
...
#KT-4900
Improve accuracy of JS polyfills of hyperbolic functions and expm1/log1p
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
5bfa9b248e
Minor fixes in logarithm functions docs
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
57f5791e70
Annotate new API with SinceKotlin, provide common headers
...
#KT-4900
Also update binary API dump.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
a69a583c64
Deprecate kotlin.js.Math object, rename kotlin.math.kt to just math.kt
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
86b23ffe49
Integer math functions and tests for them
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
a832db48f6
Float Math API
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
6373ac7ef0
Rename log to ln, log1p to ln1p, keep pow only as extension
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
805d1c90b7
Rename sgn to sign, add docs and tests
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
d0b12e3872
Use HALF_EVEN rounding mode for round()
...
Add docs and tests for rounding.
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
5e9e6d5951
Common math tests and document for trigonometric functions and powers.
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
a375bafa21
Draft common math API with top-level functions and constants in kotlin.math package
...
#KT-4900
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
e59fbc1097
Provide polyfills for missing ES6 math functions
...
#KT-4900
Rename math.kt to js.math.kt
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
559255f38e
windowed function: add default parameters, drop or keep partial windows, KEEP-11
...
Make step default to 1.
Add partialWindows boolean parameter defaulting to false to control
whether to keep partial windows in the end.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
c04b0072af
Rename pairwise to zipWithNext, KEEP-11
2017-10-11 19:20:24 +03:00
Anton Bannykh
158c03b07f
JS: enable TypedArrays by default
2017-10-11 19:20:24 +03:00