Svyatoslav Kuzmich
1abb4f42ac
[JS IR BE] Add ranges to runtime, rangeTo for primitive numbers
2018-07-17 20:18:29 +03:00
Ilmir Usmanov
991b4251f3
Remove redundant RequireKotlin annotations from coroutines' stdlib.
2018-07-17 17:31:03 +03:00
Roman Elizarov
2236049341
Wrapper for suspend fun main and @Test suspend fun testXXX functions.
2018-07-17 12:15:02 +03:00
Roman Elizarov
d33d21907d
SuccessOrFailure test on JVM added
2018-07-17 12:15:01 +03:00
Roman Elizarov
0b59061bfe
Coroutines debug probes
2018-07-17 12:15:01 +03:00
Roman Elizarov
78192ea712
Fixed createCoroutineFromSuspendFunction
...
Passes an object that extends BaseContinuationImpl to the
suspend function invocation, so that it can use .intercepted on it.
This requires implementation to track its state via label variable.
2018-07-17 12:14:59 +03:00
Roman Elizarov
d3982472a4
Explanatory comment to createCoroutineFromSuspendFunction
2018-07-17 11:28:48 +03:00
Roman Elizarov
96b5bb1b31
Fixed JVM Serialization problems:
...
* EmptyCoroutineContext readResolve fixed
* CombinedContext.writeReplace serializes all context elements
2018-07-17 11:28:38 +03:00
Roman Elizarov
e0f6165f10
Updated SuccessOrFailure:
...
* Parameter names for lambda
* getOrElse takes exception parameters
* fold added
* Improved docs
2018-07-17 11:26:49 +03:00
Mikhael Bogdanov
1d283d243e
Support @JvmField on interface properties
...
#KT-15807 Fixed
2018-07-16 16:13:15 +02:00
Anton Bannykh
99ac43eb84
JS: implement release coroutines in stdlib
2018-07-12 14:18:34 +03:00
Anton Bannykh
9e9b27fe79
JS IR: bug fixes
2018-07-11 14:49:36 +03:00
Anton Bannykh
9233e6c176
JS IR: char (always boxed for now)
2018-07-11 14:49:36 +03:00
Ilmir Usmanov
6ba2baa9da
Deserialize constructors and properties with version requirement 1.3
...
if they have suspend function type in their descriptors.
Also, review fixes.
#KT-25256: Fixed
2018-07-11 14:20:46 +03:00
Ilmir Usmanov
5b7e099842
Read old suspend functions in 1.3
2018-07-11 14:20:41 +03:00
Svyatoslav Kuzmich
77ad97a39e
[JS IR BE] Bridges construction
2018-07-10 14:11:09 +03:00
Svyatoslav Kuzmich
a2f89cc711
[JS IR BE] Eqeq operator lowering. IntrinsicifyCallsLowering.kt refactoring
2018-07-10 14:11:08 +03:00
Anton Bannykh
65846d783d
JS IR: Long
2018-07-10 13:34:19 +03:00
Ilya Gorbunov
b7d3382f13
Report more diagnostics when JDK8PlatformImplementations can't be cast to base type
...
#EA-120914 - CCE: PlatformImplementationsKt.<clinit>
2018-07-09 22:13:57 +03:00
Ilya Gorbunov
be8cb94105
Add failing tests for overflow in empty progressions KT-24204
2018-07-09 22:08:01 +03:00
Dmitry Savvinov
668bd209f2
Use -Xallow-kotlin-package while compiling common sources
...
K2MetadataCompiler doesn't perform explicit check of compilation of
'kotlin' package, thus stdlib build wasn't passing '-Xallow-kotlin-package'.
However, we have special hack for compiling stdlib with contracts: if
'-Xallow-kotlin-package' is passed, then allow compiling contracts for
custom functions. We have to do it this way, because we don't want
stdlib artifacts to be marked with pre-release flag, even though
contracts for custom functions are not enabled yet
(see eae9923dbe ).
Therefore, it's crucial to pass -Xallow-kotlin-package properly for that
side-effect.
2018-07-09 18:57:58 +03:00
Roman Elizarov
3aa76c58fc
Updated SuccessOrFailure class corresponding to KEEP-127 and docs.
2018-07-09 15:27:19 +03:00
Roman Elizarov
33f4a3fcbf
Extracted BaseContinuationImpl
2018-07-09 15:27:19 +03:00
Roman Elizarov
38c17249b9
releaseInterceptedContinuation clarified and ref check in impl fixed
2018-07-09 15:27:19 +03:00
Roman Elizarov
d33409ff8a
Fixed boxing of SuccessOrFailure inside SafeContinuation impl
2018-07-09 15:27:19 +03:00
Roman Elizarov
0370fac0b6
Further design improvements for coroutines 1.3 APIs
...
* Documentation improvements and clarification
* Dropped legacy intrinsic functions
* Remove context parameter default from Continuation builder function
2018-07-09 15:27:19 +03:00
Roman Elizarov
719d45510a
Continuation builder function
2018-07-09 15:27:19 +03:00
Roman Elizarov
0b17c619bc
Fixed ContinuationImpl.intercepted
2018-07-09 15:27:19 +03:00
Roman Elizarov
7513557315
Unroll recursion in resumeWith
...
Fixes KT-18987
2018-07-09 15:27:19 +03:00
Roman Elizarov
af9743709c
Implement COROUTINE_SUSPENDED as a property with getter
2018-07-09 15:27:19 +03:00
Roman Elizarov
aaabfa6382
Missing SinceKotlin declarations added for resume extensions
2018-07-09 15:27:19 +03:00
Roman Elizarov
b06d626b21
releaseInterceptedContinuation and few other minor fixes
2018-07-09 15:27:19 +03:00
Roman Elizarov
8e2fae3322
More work on draft coroutines 1.3 ABI & API:
...
* SuspendFunction[01] interfaces removed, moved to RestrictedContinuationImpl
* validateContext introduced to check restricted coroutines
* Distinguish SuspendLambda as being lambda/coroutine and provide a separate
toString implementation (draft) in its coroutine incarnation.
2018-07-09 15:27:19 +03:00
Roman Elizarov
8bbd78ca9a
Draft Kotlin Coroutines 1.3 ABI & API:
...
* SuccessOrFailure inline class is introduced
* Continuation.resumeWith(SuccessOrFailure)
* createCoroutineUnintercepted
* [Restricted]ContinuationImpl as named suspending function base
* [Restricted]SuspendLambda as suspending lambda base
* SuspendFunction[01] interfaces for efficient createCoroutine
* Serializable coroutine classes
2018-07-09 15:27:19 +03:00
Ilya Gorbunov
b5fabf3f72
Make unsigned types experimental (with warning if not opted-in)
2018-07-04 19:12:11 +03:00
Ilya Gorbunov
cbc3480d9e
Split common builtin companion tests from JVM-only tests
...
Remove duplicated tests from NumbersJVMTest.
2018-07-03 19:58:53 +03:00
Svyatoslav Kuzmich
83f8cfaa66
[JS IR BE] hashCode, toString, number conversion support
2018-07-03 19:51:58 +03:00
Ilya Gorbunov
3349976279
Make MIN_VALUE and MAX_VALUE of unsigned types actual constants
2018-07-03 03:52:18 +03:00
Ilya Gorbunov
7a208c3e01
Simplify unsigned array constructor functions
2018-07-03 03:52:18 +03:00
Ilya Gorbunov
615f57f2fc
Compile unsigned types sourceset with 1.3 and annotate them with SinceKotlin("1.3")
2018-07-03 03:52:18 +03:00
Nico Mandery
5c16633175
fix typos in documentation of JsQualifier annotation ( #1733 )
2018-06-27 19:34:27 +03:00
Alexander Udalov
8d124eb77f
Minor, use array literal syntax in kotlin.Metadata
2018-06-27 12:20:03 +02:00
Ilya Gorbunov
6d027bbbfc
Remove state from parts of multifile classes
...
Split COROUTINE_SUSPENDED marker to expect and actual because Kotlin/JS backend
expects it to be property without getter.
Update EXPECTED_REACHABLE_NODES in JS test data.
#KT-24986 Fixed
2018-06-22 11:35:05 +03:00
Anton Bannykh
6df9919eba
JS IR: add DefaultContructorMarker to the runtime
2018-06-21 13:27:17 +03:00
Roman Artemev
02628e8de3
[JS IR BE] Support exceptions in IR BE runtime
2018-06-19 17:09:24 +03:00
Roman Artemev
17d71f1e46
[JS IR BE] Implement type check
...
* IrTypeOperator lowering
* runtime support
* refactoring
2018-06-14 18:40:06 +03:00
Ilya Gorbunov
1ee37b1772
Update ReadMe for stdlib-js
2018-06-07 14:39:48 +03:00
Ilya Gorbunov
0f972f2412
Restore default parameter values in JS collection constructors
...
Even if they now have overloads that will be selected when these parameters are omitted.
This is to preserve compatibility with the libraries compiled against the older library.
#KT-24782 Fixed
2018-06-06 15:32:34 +03:00
Roman Artemev
4b8d906e45
Add runtime for JS IR BE
2018-06-05 21:21:18 +03:00
Mikhael Bogdanov
4383335168
Update @JvmDefault documentation
2018-05-30 15:24:50 +02:00