Ilya Gorbunov
906a351a81
Regenerate standard library generated code
2022-01-17 15:38:27 +03:00
Abduqodiri Qurbonzoda
f1befc0108
Format Other_Uppercase/Other_Lowercase property as an identifier in docs
2021-09-15 17:31:52 +03:00
Abduqodiri Qurbonzoda
0faa83bacb
Deprecate JS Array/PrimitiveArray.sort(comparison) functions
2021-09-02 01:38:03 +00:00
Ilya Goncharov
766857881a
[JS IR] Review remarks
...
- Use intrinsic on this
- Enqueue invoke for DCE
- Change transform
- Ignore instead of target backend
^KT-46204 fixed
2021-08-10 07:24:51 +00:00
Ilya Goncharov
627af332b1
[JS IR] Use PublishedApi for intrinsic
...
^KT-46204 fixed
2021-08-10 07:24:48 +00:00
Ilya Goncharov
e6af3ff6a8
[JS IR] Rename and doc new intrinsics, add new intrinsic to call suspend fun as supertype
...
^KT-46204 fixed
2021-08-10 07:24:48 +00:00
Ilya Goncharov
a70fc99130
[JS IR] Add intrinsic to call suspend functions as super type
...
^KT-46204 fixed
2021-08-10 07:24:47 +00:00
Ilya Goncharov
755f847ab9
[JS IR] Use invoke for coroutines in runtime
...
^KT-46204 fixed
2021-08-10 07:24:46 +00:00
Abduqodiri Qurbonzoda
d934c97bf5
Equivalize isLowerCase and isUpperCase behavior in all platforms #KT-46184
2021-05-31 13:42:46 +03:00
Abduqodiri Qurbonzoda
54994a289f
Support all digit chars on JS and Native #KT-46002
2021-05-27 06:56:52 +03:00
Abduqodiri Qurbonzoda
f99c72cc98
Remove redundant @OptIn targeting new case conversion api
2021-04-08 03:21:59 +03:00
Ilya Gorbunov
b64b96eee6
Deprecate Char-to-Number conversions in stdlib (JVM and JS)
...
- Int.toChar was left non-deprecated because the replacement is not intrinsic yet.
- Number.toChar was left non-deprecated because otherwise the deprecation propagates to the override, Int.toChar.
KT-23451
2021-04-07 18:30:20 +03:00
Ilya Gorbunov
d70edeb38b
Hide deprecated JS Math object from public API and rename to JsMath
...
KT-41318
- Rename Math to JsMath and remove unused functions
- Fix return types, remove duplicating JsMath from longjs.kt
Co-authored-by: Abduqodiri Qurbonzoda <abduqodiri.qurbonzoda@jetbrains.com >
2021-04-07 00:39:47 +03:00
Abduqodiri Qurbonzoda
2266cd4631
Commonize Char.titlecaseChar() and Char.titlecase() #KT-44369
2021-03-02 01:11:45 +03:00
Abduqodiri Qurbonzoda
46b7a774b5
Commonize CharCategory and related functions #KT-39177 #KT-43216 #KT-39906 #KT-30652
2021-01-28 01:41:24 +03:00
Alexander Udalov
acd29481bd
Regenerate sources of builtins and stdlib
2021-01-03 22:31:06 +01:00
Zalim Bashorov
72593e3d30
[JS IR] Revert jsClass_js-ir.kt to not break compatibility with older compiler versions
2020-12-24 20:03:23 +03:00
Zalim Bashorov
d7e3f826bb
[JS IR] Generate jsClass function inside the compiler instead of relying on declaration inside stdlib
...
We want to make its type parameter reified to do it we have to make it inline and non-external.
But we don't want to inline it in call sites and want prevent using it anywhere except places generated by the compiler.
In user code, including stdlib, we should use `K::class.js` instead.
Separately we have to intrinsify `K::class.js` to reduce overhead.
2020-12-24 20:03:23 +03:00
Zalim Bashorov
df6635085b
[JS IR] Replace calls with invalid type arguments for type parameters with call to errorCode function from runtime.
2020-12-24 20:03:22 +03:00
Alexander Udalov
da6d904c6e
Suppress code warnings in kotlin-stdlib
2020-08-20 20:30:34 +02:00
Abduqodiri Qurbonzoda
d2c9fc41f1
Replace @LowPriorityInOverloadResolution with @DeprecatedSinceKotlin #KT-37101
2020-07-15 20:36:57 +03:00
Ilya Gorbunov
6c8ff25e5d
Drop deprecated jsClass top level and extension functions
...
Introduce internal toplevel jsClass in js-ir source set instead.
It is needed for JS-IR backend.
2020-06-22 12:29:25 +03:00
Anton Bannykh
a18bfad53a
Add stdlib API test + remove some extra IR stdlib API's
2020-06-03 17:14:29 +03:00
Ilya Gorbunov
e2c3455445
Document NaN propagation in top-level minOf/maxOf functions
2020-06-02 19:01:44 +03:00
Roman Elizarov
46b426ef77
KT-31741: stdlib: DeepRecursiveFunction ( #3398 )
...
Introduces experimental coroutines-based framework to execute deeply recursive functions that utilities the heap and thus avoid StackOverflowError.
2020-05-27 10:06:00 +03:00
Abduqodiri Qurbonzoda
0c7b04a495
Document fromIndex and toIndex parameters #KT-38388
2020-05-09 23:34:03 +03:00
Anton Bannykh
2992d49a1d
JS IR: fix findAssociatedObjects for primitive type KClass'es
2020-04-28 19:08:44 +03:00
Anton Bannykh
442331acc9
IR JS: support findAssociatedObject feature (KT-37418 fixed)
2020-04-27 17:23:19 +03:00
Abduqodiri Qurbonzoda
5af76a07d4
Fix CharArray sort in JS IR-backend
2020-04-22 23:46:50 +03:00
Abduqodiri Qurbonzoda
d6472aa700
Reverse range and sortDescending range #KT-36955
2020-04-20 22:06:28 +03:00
Ilya Gorbunov
2bb36899da
Introduce 'fail' method to throw AssertionError with cause
...
#KT-37804
2020-03-31 13:37:03 +03:00
Abduqodiri Qurbonzoda
e632d58936
Nullable Array.contentEquals/contentHashCode/contentToString #KT-34161
2020-03-12 18:01:23 +03:00
Zalim Bashorov
9e7f72382f
[stdlib-js-ir] Remove BitUtils object and make all members toplevel
...
It works slightly better with IR DCE --
we get about 6% less code on box tests.
2020-03-11 12:54:41 +03:00
Zalim Bashorov
43171f67a8
[stdlib-js-ir] Cleanup exceptions
2020-03-11 12:54:41 +03:00
Roman Artemev
0e67c6ac7d
[JS IR] Update coroutine runtime
2020-03-03 18:54:35 +03:00
Abduqodiri Qurbonzoda
1f721796b8
Add vararg overloads for maxOf/minOf functions #KT-33906
2020-02-26 04:17:19 +03:00
Ilya Gorbunov
09b1960dd0
Regenerate stdlib sources: update copyright year
2020-01-16 15:57:06 +03:00
Ilya Gorbunov
3751a8a797
Common Array.fill for unsigned arrays, improve docs, native impl name
...
KT-32359
2019-08-01 19:02:39 +03:00
Jake Wharton
1a6069382e
Provide Array.fill in common stdlib
...
KT-32359
2019-08-01 19:02:38 +03:00
Dat Trieu
38d26b1d92
KT-16602: Provide samples for sorting API usage
2019-07-12 21:32:03 +03:00
AJ Alt
ed96197d6b
Always use LF line endings in generated stdlib code
...
The code generation uses a mixture of literal `\n` characters and `appendln`. The latter insert `\r\n` on Windows by default, causing generated files to contain a mixture of line endings.
This commit sets the `line.separator` system property for the generator to `\n` so that `appendln` will never insert `\r` characters. As an additional measure, `.gitattributes` files were added to checkout generated stdlib files always with LF line endings.
2019-06-27 03:02:10 +03:00
Roman Artemev
97203973ac
[JS IR BE] Fix coroutine context
2019-06-24 20:14:19 +03:00
Ilya Gorbunov
eae1813ead
stdlib-js(-v1/-ir): rename source files to avoid duplicates in sources
...
Prohibit having duplicates in sources jar and rename those source files,
that clash with the same named source files coming from
the common js source root.
Relates to KT-31965
2019-06-18 20:03:04 +03:00
Svyatoslav Kuzmich
e3bcabeae3
[JS IR] stdlib: Fix bugs in Long.toString(radix)
2019-05-07 21:49:12 +03:00
Svyatoslav Kuzmich
bc29a5b15c
[JS IR] stdlib: port methods that use bit representation of numbers
...
- Port part of 'misc.js' from current backend to 'bitUtils.kt' in IR backend
- Enable toBits, toRawBits, fromBits extension function on Double and Float
- Enable Double.withSign
- Refactor getNumberHashCode using new utils
2019-05-07 21:49:12 +03:00
Svyatoslav Kuzmich
362fbc8770
[JS IR] stdlib: Use comparator in CharArray.sort
...
CharArray is represented as a regular JS Array. Its default sort order is based
on string representation of elements.
2019-05-07 21:48:50 +03:00
Svyatoslav Kuzmich
179acf0789
[JS IR] stdlib: generate type-safe contentToString for primitive arrays
...
Avoid casting 'primitive' arrays to Array<*> because they fail on runtime
2019-05-07 21:48:50 +03:00
Yanis Batura
a51b7fb8d0
Fix typos
2019-04-30 18:42:07 +03:00
Svyatoslav Kuzmich
379cb08226
[JS] Reduce usage of 'js' function in stdlib
...
Function 'kotlin.js.js' is to be redesigned in JS IR backend,
partially because it is a hard feature to support.
Current implementation is unstable and can cause problems around
inlining and name generator. Luckily most of its use-cases
can be covered by simpler features like dynamic expressions and
external declarations.
Thus we are reducing it's usage in stdlib to make IR backend more
stable in current state. JavaScript features that can't be covered by dynamic expression are
implemented in 'jsOperators.kt' file respectively for each backend:
- 'internal inline' function which calls 'js' function inside for current
pre-IR backend
- 'internal' function with '_hack' parameters for JS IR backend which will be
later intinsicified in a compiler
2019-04-30 15:27:19 +03:00
nikita.movshin
abb7d3ab46
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
Update 2 lines comment
2019-04-23 20:09:27 +03:00