Denis Zharkov
c12bfe312a
Make experimental/release COROUTINE_SUSPENDED reference the same instance
...
It's necessary when mixing experimental/release coroutines together
#KT-25683 In Progress
2018-08-30 14:57:44 +03:00
Ilya Gorbunov
357c5be4fb
Make sure index and count do not overflow for long sequences
...
Throw an exception immediately before an overflow becomes observable.
Place check to prevent negative index from indexOf, indexOfFirst.
Do not insert overflow checks for arrays, lists, maps and char sequences.
#KT-16097
2018-08-30 14:57:05 +03:00
Alexander Udalov
ceb909d261
Inherit KType from KAnnotatedElement, implement KType.annotations
...
#KT-16795 Fixed
2018-08-30 14:56:57 +03:00
Ilya Gorbunov
a0b0994651
Make unsigned array constructor-like functions inline-only
2018-08-30 14:56:53 +03:00
Ilya Gorbunov
f9479d12f9
Add missing unsigned array constructors (from size)
...
#KT-25961 Fixed
2018-08-30 14:56:51 +03:00
Ilya Gorbunov
282cf73aff
Update public API: inline classes codegen changes
2018-08-30 14:56:48 +03:00
Ilya Gorbunov
85af1f5d38
Improve argument validation in copyOfRange
...
Make copyOfRange implementation non-inline in order not to expose
copyOfRangeToIndexCheck implementation detail.
It will be possible to make the function non-inline itself later without
that JvmName trick, when apiVersion 1.2 support is discontinued.
#KT-19489
2018-08-30 14:56:29 +03:00
Ilya Gorbunov
17e04b2665
Deprecate readBytes with estimatedSize parameter, add overload without parameters
...
Add a test for readBytes.
#KT-19305 Fixed
2018-08-30 14:56:23 +03:00
Alexander Udalov
cbc92bc9a1
Add KClass.sealedSubclasses to get direct subclasses of sealed class
...
#KT-14657 Fixed
2018-08-30 14:56:21 +03:00
Ilya Gorbunov
1792a77a47
Generate hashCode and equals for unsigned types
2018-08-30 14:52:51 +03:00
Alexander Udalov
082da82f3e
Introduce kotlin.jvm.functions.FunctionN
...
#KT-13764
2018-08-30 14:52:36 +03:00
Alexander Udalov
e35ebff4e1
Move superinterface to the only subclass of FunctionBase
2018-08-30 14:51:17 +03:00
Ilya Gorbunov
07a0cb91d4
Introduce Char.MIN_VALUE and MAX_VALUE constants (KT-21763)
...
Add Char.MIN_VALUE and Char.MAX_VALUE implementations in primitive companion objects.
Update builtins test data and public API.
Co-authored-by: Oskar Drozda <themppsplx@gmail.com >
2018-08-30 14:51:14 +03:00
Ilya Gorbunov
0c50014e7a
Introduce SIZE_BYTES and SIZE_BITS constants for all integral types
...
#KT-8247 Fixed
2018-08-30 14:51:10 +03:00
Kerooker
af5f78076c
KT-7922 Added Boolean Companion Object
2018-08-30 14:51:04 +03:00
Ilya Gorbunov
fa33b1b5a9
Random docs and API refinement
...
KT-17261
2018-08-30 14:50:40 +03:00
Ilya Gorbunov
7e4528e217
Common shuffle/shuffled with the specified random source
...
KT-17261, KT-9010
2018-08-30 14:50:38 +03:00
Ilya Gorbunov
cc031e3a40
Provide common Random API
...
#KT-17261
2018-08-30 14:50:36 +03:00
Ilya Gorbunov
bbee18b84d
Introduce StringBuilder.clear() extension
...
#KT-18910 Fixed
2018-08-30 14:50:29 +03:00
Alexander Udalov
f423403167
Make kotlin.Metadata public
...
Prohibit explicit usage of `@Metadata` to prevent possible
AnnotationFormatError at runtime
#KT-23602 Fixed
2018-08-30 14:50:25 +03:00
Ilya Gorbunov
b160561795
Include new coroutines and unsigned classes into stdlib
...
Fix clashing module name in common coroutines sourceset
2018-08-30 14:50:21 +03:00
Denis Zharkov
4bf51af2fa
Fix reference-public-api
...
It's necessary because of the changes in 3497880f203449121ea8035c49b792cc4dc53bd6
2018-07-09 15:27:19 +03:00
Alexander Udalov
bf3419c3bd
Introduce OptionalExpectation for annotations missing on some platforms
...
This commits adds a new annotation OptionalExpectation to the standard
library, which is experimental. To enable its usage, either pass
'-Xuse-experimental=kotlin.ExperimentalMultiplatform' as a compiler
argument, or '-Xuse-experimental=kotlin.Experimental' and also annotate
each usage with `@UseExperimental(ExperimentalMultiplatform::class)`
#KT-18882 Fixed
2018-05-24 13:14:51 +02:00
Ilmir Usmanov
5e4ce4f880
Remove coroutineContext from kotlin.coroutines.experimental.intrinsics package
...
#KT-22400: Fixed
2018-05-07 10:28:54 +03:00
Alexander Udalov
4f53a54115
Drop Experimental.Impact, simplify related code and tests
...
See https://github.com/Kotlin/KEEP/issues/95#issuecomment-383889404
Drop Experimental.changesMayBreak, Experimental.Impact, the concept of
signature/body usage, same module exemption. Make the majority of tests
single-module because there is now no difference in the checker between
usages from the same module or from another module
2018-05-04 13:48:24 +02:00
Ilya Gorbunov
ae62cd6570
Do not produce original kotlin-stdlib public api dump anymore
...
It was produced from the kotlin-stdlib of 1.0 which was separate from the kotlin-runtime.
The actual dump is in kotlin-stdlib-runtime-merged.txt
2018-04-12 17:53:00 +03:00
Mikhael Bogdanov
be33a9bf3b
Update test data
2018-04-04 14:55:39 +02:00
Mikhael Bogdanov
08ff1de248
Update test data
2018-04-03 19:38:37 +02:00
Ilya Gorbunov
c796e5338b
Move runtime.jvm sources to stdlib/jvm/runtime
...
Update path in kotlin-runtime
Update path in kotlin-mock-runtime-for-tests
2018-02-26 17:11:10 +03:00
Alexander Udalov
31e762c679
Move 1.3-specific part of stdlib to another source set
2018-02-15 13:14:37 +01:00
Alexander Udalov
0bf0a315ed
Introduce Experimental and UseExperimental annotations
...
#KT-22759 In Progress
2018-02-08 17:07:21 +01:00
Ilya Gorbunov
479f293edc
Expose internal getProgressionLastElement to public api
...
To be used in compiler loop optimizations.
#KT-18869 Fixed
2017-12-14 07:22:08 +03:00
Ilya Gorbunov
9305903e6c
Remove deprecated pairwise function
...
It was replaced with zipWithNext.
2017-11-07 18:59:33 +03:00
Ilmir Usmanov
817f79520a
Implement coroutineContext intrinsic
...
This intrinsic allows coroutine to access its context without suspention
and, furthermore, disabling tail-call optimization.
KT-17609: Fixed
2017-11-02 12:45:24 +03:00
Ilya Gorbunov
3ab7946c4d
Introduce apiVersionIsAtLeast function to branch in inlines
...
#KT-16028
2017-10-13 18:56:05 +03:00
Alexander Udalov
d41c1d572b
Remove deprecated API from package kotlin.reflect
...
This is needed to avoid the split package problem on Java 9 (KT-19258):
both kotlin-stdlib.jar and kotlin-reflect.jar export the package
kotlin.reflect
2017-10-11 19:23:40 +03:00
Alexander Udalov
537a0ce315
Restore kotlin-stdlib-jre7/8 libraries
2017-10-11 19:23:30 +03:00
Alexander Udalov
e253acd5fd
Introduce kotlin-stdlib-jdk7/8 libraries, deprecate kotlin-stdlib-jre7/8
...
The idea is to keep all declarations in the same packages from Kotlin's
point of view, but use JvmPackageName annotation to move them to another
JVM package, to avoid the split package problem which is otherwise
unsolvable when using module path on Java 9 (KT-19258).
In this commit, kotlin-stdlib-jre7/8 are moved to kotlin-stdlib-jdk7/8
and in the subsequent commit, -jre7/8 are restored. This is done in
order to make Git recognize this as a file move to preserve history.
Include new stdlib-jdkN artifacts in manifest version tests.
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
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
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
Ilya Gorbunov
c2cee2e405
Update binary api dump, rearrage bignumbers tests
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
bb22d6647b
Introduce MutableList.fill and shuffle/shuffled extensions for JVM only
...
'shuffle' and 'fill' are inline only, but 'shuffled' is not.
#KT-8823 Fixed
#KT-9010 Fixed
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
16d3d2f764
Make Regex class serializable on JVM
...
#KT-16447 Fixed
Refactor helper functions for serialization tests.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
a3a1c391cc
Generate 'chunked' and 'windowed' signatures and delegating implementations
...
Add implementations of windowed.
2017-10-11 19:20:24 +03:00
Ilya Gorbunov
c815ccfd6a
Introduce 'pairwise' function, KEEP-11
2017-10-11 19:20:24 +03:00
Mikhail Zarechenskiy
e9aad54664
Add intrinsics to mark and choose special api calls
...
#KT-20585 Fixed
2017-10-11 01:37:05 +03:00
Roman Elizarov
9f0810f723
Pull implementations up from AbstractCoroutineContextElemenet
...
Fixes KT-18671
2017-07-19 08:59:43 +03:00
Denis Zharkov
970dfd10d4
Update rendered public API for coroutines
...
suspendCoroutine is not public anymore as it's inline
and all inline suspend functions are treated as inline-only,
i.e. private in JVM
2017-05-23 18:45:33 +03:00