Svyatoslav Kuzmich
a5f537adc5
[JS IR BE] Implement *Array.plus(Collection<>) in typed Kotlin without dynamic helper
2019-01-24 23:05:56 +03:00
Ilya Gorbunov
0ac85ad715
Document that sorting is stable in each platform
...
#KT-12473 Fixed
2019-01-17 18:38:37 +03:00
Ilya Gorbunov
a26aa30714
Change implementations of contentEquals and minOf/maxOf for Native
...
To conform to the behavior in other platforms.
2019-01-11 21:49:19 +03:00
Ilya Gorbunov
a951805218
Refactor: introduce PrimitiveType.isFloatingPoint
2019-01-11 21:49:19 +03:00
Ilya Gorbunov
23950042f6
Clarify how elements of arrays are compared by contentEquals function
...
Add clarification only for the particular group of overloads including
arrays of object and floating point numbers.
#KT-22942 Fixed
2019-01-11 21:04:03 +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
7c3c454654
Remove specialization of toTypedArray for LongArray and BooleanArray in JS
...
The default implementation for primitive arrays returns an array of correct type.
#KT-29187 Fixed
2019-01-11 20:53:29 +03:00
Ilya Gorbunov
743d0f4917
Refactor kotlin-stdlib-gen
...
- Make targetsToGenerate Collection to accept set in addition to list
- Unify generated file name schema to '_<source name><platform suffix>.kt'
2018-12-26 19:53:11 +03:00
Ilya Gorbunov
5584b435dc
Provide implementation templates for Native platform
2018-12-26 19:52:50 +03:00
Ilya Gorbunov
f05efd58de
Support Native target platform in kotlin-stdlib-gen
...
- Allow to select target platform and target directory to generate source for
- Put copyright profile to resources to have it in the resulting jar
- Output error for missing bodies, but do not stop generation on the first error
2018-12-26 19:52:49 +03:00
Ilya Gorbunov
9289a2c573
Remove redundant clause from 'until' function docs
2018-12-26 17:54:56 +03:00
Roman Artemev
c5922bf74b
Refact stdlib generator, add support for different backends
...
[JS IR BE] Runtime fixes
* Do not generate external declarations for IR BE
* Move `arrayToString` helper function out of shared JS stdlib
* Fix arrays type check for IR BE
2018-11-29 22:04:53 +03:00
Karen Schwane
d88fd8aa6f
KT-20357 Add samples for maxBy and minBy
2018-11-04 22:34:16 +03:00
Ilya Gorbunov
c833272392
stdlib-gen, minor: rename property
2018-10-26 16:27:43 +03:00
Ilya Gorbunov
138ab13364
Remove experimental coroutines usages from stdlib generator
2018-10-26 16:27:42 +03:00
Ilya Gorbunov
7fc6f06b70
Correct parameter reference in copyInto docs
2018-10-22 17:14:44 +03:00
Ilya Gorbunov
d6beddaac5
Document the requirement for 'minus(elements)' to have stable hashCode
...
#KT-24536
2018-10-01 18:09:09 +03:00
Alexander Udalov
55c8b35eee
Remove unneeded default imports in stdlib and tests
2018-10-01 13:39:02 +02:00
Ilya Gorbunov
3a40e3f041
Move groupingByEachCount together with the new Grouping samples
2018-09-28 19:51:07 +03:00
Ilya Gorbunov
0c81e30d46
Make a more correct implementation of unsigned arrays copyInto
...
Return the destination array instead of the destination storage array
wrapped in a new unsigned array. The difference should be
indistinguishable, however in JS, where inline classes are not inlined yet,
it had resulted in an extra wrapper.
2018-09-26 22:57:14 +03:00
Ilya Gorbunov
df6ccbca49
KT-20357 Add samples for elementAtOrElse
...
Move samples to Elements nested class.
2018-09-26 20:44:40 +03:00
Takayuki Matsubara
7d5efe7f51
KT-20357 Add samples for elementAtOrNull
2018-09-26 20:44:40 +03:00
Takayuki Matsubara
ad9b700ec4
KT-20357 Add samples for elementAt
2018-09-26 20:44:40 +03:00
Mikhail Zarechenskiy
0da1b9b80f
Revert "Migration change: temporarily specify type explicitly"
...
This reverts commit bc6e091004 .
This commit was needed to avoid bootstraping, now we can revert it
2018-09-26 11:51:57 +03: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
4423ef9087
Minor: remove unused template for Map.random()
2018-09-21 18:28:44 +03:00
Mikhail Zarechenskiy
bc6e091004
Migration change: temporarily specify type explicitly
...
Because of introduction of `BuilderInference` annotation.
Change it back after bootstrap
2018-09-18 18:55:26 +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
2d356b89b5
Specialize contentDeepEquals/HashCode/ToString for arrays of unsigned types
...
#KT-26388
2018-09-13 06:10:10 +03:00
Ilya Gorbunov
010b36be1f
Raise deprecation level for kotlin.js.Math functions
...
#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
e22ca022d4
Switch sourcesets of experimental and release coroutines
...
- Move experimental coroutines out of the main source root.
- Include experimental coroutines into the coroutines source set.
- Include release coroutines into the main source set.
2018-09-07 01:03:53 +03:00
Ilya Gorbunov
3e38bbcb07
Update generator template to match manually edited _URanges.kt file
2018-09-04 17:39:51 +03:00
Ilya Gorbunov
623adbfe4a
Do not use JVM-specific annotations in pure-JS generated sources
2018-08-31 04:17:42 +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
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
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
add0894f54
Support unsigned types and array specializations in stdlib generator
2018-08-30 14:58:18 +03:00
Ilya Gorbunov
f367322084
Introduce associateWith and associateWithTo functions
...
#KT-13814
2018-08-30 14:58:14 +03:00
Ilya Gorbunov
751e844258
Support having primary type parameter other than T in generated code
...
With some limitations: the primary parameter cannot have constraints for now.
2018-08-30 14:58:11 +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
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
Ilya Gorbunov
93540e476e
stdlib-gen: tweak to build with 1.3 compiler, turn off ReleaseCoroutines
2018-08-30 14:56:25 +03:00
Ilya Gorbunov
39cad033a3
Cleanup: remove deprecated configuration property
...
Currently it's useless because we don't override compilerJarFile anymore.
2018-06-24 17:27:57 +03:00
Ilya Gorbunov
418db53ba4
Array.copyOf docs: do not use 'primitive default' term, rewrite description
...
#KT-22298
2018-05-25 21:52:36 +03:00
Valeriy Zhirnov
9239de9a02
KT-22298 Improve docs for Array.copyOf(newSize: Int)
...
Signed-off-by: Valeriy Zhirnov <neonailol@gmail.com >
2018-05-25 21:52:36 +03:00