Abduqodiri Qurbonzoda
35c6f09886
Implement coerce extension functions for unsigned types
2019-03-15 17:46:48 +03:00
Abduqodiri Qurbonzoda
82002e5e73
Remove implementations of conversions from UByte/UShort to Float/Double
2019-03-12 02:56:44 +03:00
Ilya Gorbunov
6ae5e91930
Move UArraysKt into kotlin.collections.unsigned package
...
Provide UArraysKt class in kotlin.collections for binary compatibility
instead of removed multipart facade class. It contains only non-inline
functions of the latter.
2019-03-08 23:35:40 +03:00
Abduqodiri Qurbonzoda
be6c2d8c7d
Implement min max minOf maxOf functions for unsigned types (KT-30035)
2019-03-08 23:34:36 +03:00
Abduqodiri Qurbonzoda
bf83f0e070
Implement contains extension functions for URanges (KT-26378)
2019-03-08 23:34:35 +03:00
Abduqodiri Qurbonzoda
cb587893c0
Implement sorting extension functions for UArrays
2019-03-08 23:34:35 +03:00
Abduqodiri Qurbonzoda
c42dbb34ca
Implement drop, take & filter extension functions for UArrays
2019-03-08 23:34:35 +03:00
Abduqodiri Qurbonzoda
abb275775e
Implement map, flatMap, zip & groupBy extension functions for UArrays
2019-03-08 23:34:35 +03:00
Abduqodiri Qurbonzoda
7695b5e575
Implement sum extension function for UArrays (KT-28779)
2019-03-08 23:34:34 +03:00
Abduqodiri Qurbonzoda
690e35f11a
Implement reduce, forEach, min & max extension functions for UArrays
2019-03-08 23:34:34 +03:00
Abduqodiri Qurbonzoda
fc85781bfc
Implement asList, slice & sliceArray extension functions for UArrays
2019-03-08 23:34:34 +03:00
Abduqodiri Qurbonzoda
114736c09b
Implement reversing extension functions for UArrays
2019-03-08 23:34:34 +03:00
Abduqodiri Qurbonzoda
92cd84682c
Implement first, last & single extension functions for UArrays
2019-03-08 23:34:34 +03:00
Abduqodiri Qurbonzoda
299fac8e2d
Implement conversion from typed array and collection to UArrays
2019-03-08 23:34:34 +03:00
Abduqodiri Qurbonzoda
876dff6d22
Implement fill extension function for UArrays (KT-28339)
2019-03-08 23:34:33 +03:00
Abduqodiri Qurbonzoda
550c74bb6b
Implement binarySearch method for UArrays (KT-27262)
2019-03-08 23:34:33 +03:00
Abduqodiri Qurbonzoda
6cd9858147
Specialize plus operator for UArrays (KT-28397)
2019-03-08 23:34:32 +03:00
Alexander Udalov
d1e33534db
Implement typeOf intrinsic on JVM
...
#KT-29915 Fixed
2019-03-05 18:16:31 +01:00
Ilya Gorbunov
d4b97d33ef
Introduce kotlin.ExperimentalStdlibApi annotation for prerelease API
...
#KT-30174
2019-03-04 20:47:49 +03:00
Abduqodiri Qurbonzoda
1b6b44c805
Implement conversion between floating point numbers and unsigned integers
...
KT-27108
2019-02-25 21:58:03 +03:00
Ilya Gorbunov
6bcd112062
Drop obsolete artifact kotlin-runtime
...
Remove suppresses used to compile some parts of stdlib
as a non-multiplatform project.
2019-02-18 19:20:30 +03:00
Ilya Gorbunov
811566bbe0
Drop obsolete artifacts kotlin-stdlib-jre7/8
2019-02-18 18:44:35 +03:00
Ilya Gorbunov
27dc160aef
Rename Random companion object to Default
...
#KT-27508
2018-10-11 19:06:12 +03:00
Dmitry Petrov
189b05f8a4
Update testData for public API: companion field visibility in 1.3
2018-10-02 16:20:09 +03:00
Mikhail Zarechenskiy
86141be61f
Add inference annotations to the dumped declarations
2018-09-18 23:28:54 +03:00
Ilya Gorbunov
af29dced98
Make overridden compareTo in unsigned types inline only
2018-09-18 22:25:36 +03:00
Ilya Gorbunov
9e0708e85a
Make most of unsigned operations inline only
2018-09-18 22:25:36 +03:00
Ilya Gorbunov
d793221a7b
Extract unsigned type related extensions to separate classes
...
- Rename class with unsigned number to string conversions to UStringsKt
- Extract Random unsigned extensions to URandomKt
2018-09-18 22:25:36 +03:00
Dmitry Petrov
97999a6415
Update testData for public API tests
...
Internal constructors for UIntProgression and ULongProgression are now
correctly detected as non-public API (because of proper metadata).
2018-09-17 17:28:52 +03:00
Ilya Gorbunov
aac96c476a
Rename sequence and iterator builder functions and their scope class
...
This introduces new functions instead of the existing sequence builders:
- `sequence` instead of `buildSequence`
- `iterator` instead of `buildIterator`
- `SequenceScope` instead of `SequenceBuilder`
The old functions were deprecated with error and made inline-only, and `SequenceBuilder` has been
made a deprecated typealias to `SequenceScope`.
Move sequence builders to `SequencesKt` facade class.
Replace sequence builder usages in stdlib and samples.
#KT-26678
2018-09-16 23:30:35 +03:00
Roman Elizarov
4d3d376db8
InlineOnly Result.getOrNull method
2018-09-16 23:27:46 +03:00
Ilya Gorbunov
7e0a658de7
Change nextInt/Long with range parameters from members to extensions
...
We'd like to fix the implementation of these methods, so we could intrinsify them later
or perform other optimizations that are not possible when these methods are open.
2018-09-14 15:15:52 +03:00
Ilya Gorbunov
2d356b89b5
Specialize contentDeepEquals/HashCode/ToString for arrays of unsigned types
...
#KT-26388
2018-09-13 06:10:10 +03:00
Ilmir Usmanov
273889d1a9
Add our own primitive boxing methods to stdlib
...
These methods are very thin wrappers around primitive wrapper classes
constructors.
They are used by coroutines code which returns primitives and this way
HotSpot is able to throw the allocations away completely.
#KT-26591 Fixed
2018-09-12 15:36:11 +03:00
victor.petukhov
50d9dbbfc1
Fix inheritance in stdlib contracts code (KT-26409)
2018-09-12 12:34:15 +03:00
Roman Elizarov
e2713501ce
Rename SuccessOrFailure to Result and hide Failure from ABI
...
* The members of Result are isSuccess, isFailure, exceptionOrNull, getOrNull
* The rest of API is implemented via inline-only extensions
* There are two internal functions to hide detailed mechanics of an internal
Result.Failure class: createFailure and throwOnFailure
* Result.toString is explicit: either Success(v) or Failure(x)
See KT-26538
2018-09-09 11:34:31 +03:00
Ilya Gorbunov
df9f77909b
Make experimental COROUTINE_SUSPENDED refer to corresponding release one
...
Partially reverts commit 20c7a97 .
Apply workaround for KT-25003 once again for the new COROUTINE_SUSPENDED
2018-09-07 01:03:53 +03:00
Ilya Gorbunov
7f8863bfd0
Update public API after inline class generation schema was changed
2018-09-06 03:56:01 +03:00
Roman Elizarov
0401b4e0bb
Coroutine context shall perform structural equality comparison on keys
...
Fixes KT-26398
2018-09-05 01:29:19 +03:00
Ilya Gorbunov
2091601fe8
Advance bootstrap to 1.3.0-dev-25
...
Update public API of specialized unsigned iterators.
2018-08-31 04:17:42 +03:00
Roman Elizarov
319c16c885
CoroutineStackFrame: public API dump updated
2018-08-30 16:21:49 +03:00
Ilya Gorbunov
ea2c33a532
Extension random() to select random element from a collection
...
Fixes #KT-15539
2018-08-30 16:21:27 +03:00
Ilya Gorbunov
ea37a65178
copyInto: copying elements between two arrays
...
#KT-25874 Fixed
2018-08-30 16:21:20 +03:00
Ilya Gorbunov
58e6f910bc
Update public API after stopping SuccessOrFailure mangling in signatures
2018-08-30 16:21:17 +03:00
Kerooker
f9dec5e794
Implement extension functions for Random: nextUInt, nextULong and nextUBytes
...
Given there's a Random API in the stdlib, that generates all random primitives, this commit adds the possibility to generate random unsigned integers.
It uses the same implementation from Random.nextInt, nextLong and nextBytes, but uses the appropriate conversions from a signed type to an unsigned type.
The use of the same API guarantees that the distribution is uniform, but this commit adds some unit test to enforce that necessity.
Fixes #KT-25570
2018-08-30 16:20:58 +03:00
Ilya Gorbunov
3607ed85ab
Update public API dump with mangled signatures
2018-08-30 16:20:45 +03:00
Ilya Gorbunov
e670318cf0
ifEmpty and isBlank extensions
...
- Introduce ifEmpty extension for Collections, Maps, Arrays, Sequences
- Introduce ifEmpty and isBlank for CharSequences
#KT-15695 Fixed
2018-08-30 16:20:42 +03:00
Dmitry Savvinov
accbd07b2e
Publish ContractsDsl
...
- Mark @ContractsDsl as @Experimental
- Move Contracts DSL out from 'internal' package
- Change visibility of ContractsDsl from 'internal' to 'public'
^KT-25274 Fixed
^KT-25495 Fixed
2018-08-30 16:19:51 +03:00
Ilya Gorbunov
2530a8e98c
Provide unsigned string to number conversion in arbitrary base
...
#KT-26161
2018-08-30 14:58:35 +03:00
Ilya Gorbunov
c1d1a7108f
Provide unsigned number to string conversion in arbitrary base
...
#KT-26161
2018-08-30 14:58:33 +03:00