Abduqodiri Qurbonzoda
c1b523ddef
Fix UArray.containsAll(Collection<Any?>)
2019-02-25 21:58:53 +03:00
Abduqodiri Qurbonzoda
60e83383ad
Add containsAll(Any?) check to CollectionBehaviors
2019-02-25 21:58:53 +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
56672c2564
Ensure stable sorting in MutableList.sort/sortWith
...
MutableList.sortWith now works correctly in JS_IR backend too
#KT-12473
2019-01-17 18:38:23 +03:00
Ilya Gorbunov
51eb21d44b
Provide stable sorting when JS engine sorting doesn't look stable
...
#KT-12473
2019-01-11 20:53:29 +03:00
Ilya Gorbunov
de1d15aa9a
Improve test coverage for contentEquals and minOf/maxOf
2019-01-11 17:41:52 +03:00
Ilya Gorbunov
30c769c19a
Avoid hitting max argument limit in String(chars)
...
Rewrite CharArray to String conversions to appending chars one by one.
Refine parameter checking in String(chars, offset, length) to adhere to
the common exception contract and document it.
#KT-29003
2019-01-10 23:35:52 +03:00
Ilya Gorbunov
673844a059
Move coroutine tests to other stdlib-jvm tests
2018-11-28 06:05:02 +03:00
Ilya Gorbunov
5f4e8bf4fb
Correct abstract mutable collections declarations in kotlin-stdlib-common
...
Add SinceKotlin(1.3) to the new and substantially changed common declarations
#KT-28091
2018-11-09 13:39:44 +03:00
Ilya Gorbunov
2b699f8f07
Add a test for CharSequence/String.regionMatches
2018-11-01 17:51:24 +03:00
Pavel Punegov
f543170998
Increase tolerance for Float asin test
2018-10-10 19:05:44 +03:00
Sergey Bogolepov
2f1f32bbf4
Replace random val in companion object with top level val
2018-10-10 19:04:55 +03:00
Alexander Udalov
55c8b35eee
Remove unneeded default imports in stdlib and tests
2018-10-01 13:39:02 +02:00
Ilya Gorbunov
974837654e
Remove workaround for complex default value in Array.copyInto
...
#KT-22818
2018-09-22 18:24:00 +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
Ilya Gorbunov
6bfb5c59a3
Make ResultTest common
...
Use custom exception type to avoid platform differences in toString implementation.
2018-09-14 15:32:25 +03:00
Ilya Gorbunov
b1c2daf1fe
Stdlib: fix name shadowing and names of overridden method parameters
2018-09-14 15:32:25 +03:00
Ilya Gorbunov
bf4be12239
Stdlib: review and suppress warnings
2018-09-14 15:32:25 +03:00
Ilya Gorbunov
6786b9ece2
Stdlib tests: cleanup warnings
2018-09-14 15:32:08 +03:00
Ilya Gorbunov
928fe19801
Rename Random.next* parameters: remaining renames
...
- Correct docs after parameter renaming
- Rename parameters in Random inheritors
- Rename local variables
#KT-26596
2018-09-14 15:15:52 +03:00
kenji tomita
ffb83bbdf0
Rename Random.next* parameters from "origin, bound" to "from, until"
...
Rename Random test methods
#KT-26596
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
Ilya Gorbunov
1a8b258d86
Raise deprecation level for map delegation accessor according to #KT-18789
...
#KT-21703
2018-09-11 18:15:03 +03:00
Ilya Gorbunov
1eda3805ec
Introduce overloads to check for T? element contained in iterable range in a constant time
...
#KT-18483
2018-09-11 17:06:42 +03:00
Ilya Gorbunov
48add96e79
Deprecate mixed Int/FP contains operator for ranges
...
#KT-22423
2018-09-11 05:40:15 +03:00
Ilya Gorbunov
68c5c0f639
Introduce ConcurrentModificationException typealias in stdlib/jvm
...
This is required to provide the corresponding expect exception in stdlib/common.
Raise deprecation level for constructors declared in common but unsupported in JVM.
#KT-26598
2018-09-11 04:59:56 +03:00
Ilya Gorbunov
48fd8a63ee
Introduce Any?.hashCode() extension #KT-25039
2018-09-10 06:41:49 +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
2821c357a1
Switch coroutine tests to release coroutines
2018-09-07 01:03:53 +03:00
Ilya Gorbunov
64996618b3
Suppress signed literals used as unsigned values in stdlib tests
2018-09-04 17:39:51 +03:00
Ilya Gorbunov
009980944b
Refine the exception type of EmptyRange.random()
...
Make it the same type as in case of an empty collection, so that
`emptyRange.random()` throws the same exception as `emptyRange.toList().random()`.
#KT-15539
2018-08-30 16:21:36 +03:00
Ilya Gorbunov
9c412ba436
Fix incorrect range transform in nextUInt/nextULong with range parameter
...
#KT-25570
2018-08-30 16:21:33 +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
9c4a74ce5b
Improve stability of nextBoolean test
...
Increase number of tosses (according to the Law of Large Numbers).
2018-08-30 16:21:05 +03:00
Ilya Gorbunov
d035c2690a
Random extensions for unsigned: fixes after review
...
#KT-25570
2018-08-30 16:21:01 +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
d99f97ad96
Support '+' in front of parsed unsigned string values
...
#KT-26161
2018-08-30 14:58:37 +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
Ilya Gorbunov
abdd971d92
More contentHashCode tests for arrays
2018-08-30 14:58:28 +03:00
Ilya Gorbunov
4df665bc78
Generate extensions for unsigned arrays and provide tests for them
...
- contentEquals, contentToString, contentHashCode
- as[Signed]Array, as[Unsigned]Array
- to[Signed]Array, to[Unsigned]Array
- toTypedArray
- copyOf(), copyOf(newSize), copyOfRange(...)
2018-08-30 14:58:26 +03:00
Ilya Gorbunov
3d2eb36486
Generate until, downTo, step, reversed functions for unsigned ranges/progressions
2018-08-30 14:58:20 +03:00
Ilya Gorbunov
f367322084
Introduce associateWith and associateWithTo functions
...
#KT-13814
2018-08-30 14:58:14 +03:00
Ilya Gorbunov
c44f62a3d4
Allow dropping and taking a lot of elements in very long sequences
...
For example allow dropping and taking Int.MAX_VALUE elements from
a sequence that is a result of another Int.MAX_VALUE dropping.
2018-08-30 14:57:03 +03:00
Ilya Gorbunov
2df78fc81a
Introduce common ArithmeticException
...
Make divisionByZero test still fail in JS after introducing ArithmeticException
2018-08-30 14:56:59 +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
5412227380
Unify Regex.split behavior in JVM, JS regarding empty match delimiters
...
Rewrite split implementation for JVM
#KT-21049
2018-08-30 14:56:31 +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
58a3b64baf
Add argument validation in copyOf(newSize) in JS
...
#KT-19489
2018-08-30 14:56:27 +03:00