Mikhail Glukhikh
35d104782e
Minor: primary constructor to secondary: do not specify independent property type explicitly
2016-10-25 17:57:25 +03:00
Mikhail Glukhikh
a74f010e0f
Primary constructor to secondary: always try to build constructor body #KT-14475 Fixed
2016-10-25 17:57:21 +03:00
Mikhail Glukhikh
d6eee65d72
Object literal to lambda: more precise shorten references #KT-14289 Fixed
2016-10-25 17:57:17 +03:00
Mikhail Glukhikh
dc76f2a62f
Lambda to reference: check potential reference arguments by descriptors and not by names #KT-14420 Fixed
2016-10-25 17:57:13 +03:00
Mikhail Glukhikh
97b45569fc
Lambda to reference: not-null types are now preferred for platform type receivers #KT-14394 Fixed
2016-10-25 17:57:09 +03:00
Mikhail Glukhikh
a901de5112
KT-14084 related : replaceFirstReceiver now replaces ALL calls to safe calls if necessary
...
Fixes relevant "replace let" and "if to elvis" cases
2016-10-25 17:57:06 +03:00
Mikhail Glukhikh
2117b30b76
If expression to elvis now handles call chains #KT-14084 Fixed
2016-10-25 17:57:02 +03:00
Alexander Udalov
035d6156a7
Drop Cloneable in JS, synthesize it at compile-time on JVM
...
Use the same approach that is used for creating function type classes
(Function{0,1,...}) + add Cloneable to supertypes of Array and primitive arrays
#KT-5537 Fixed
2016-10-25 15:42:33 +03:00
Nikolay Krasko
cdabef51ed
Add nullability to receiver type
2016-10-25 13:30:38 +03:00
Nikolay Krasko
22999fe67d
Set hasValueArguments in KotlinAnnotationEntryStub to 'true' only if some arguments exist
...
Currently '()' is used for resolving ambiguity in parsing when annotating function types. This way a decompiled code
will need brackets, but compile code will have annotation without parameters. This commit will allow to make both stub-trees consistent.
Tested in ClsStubBuilderTestGenerated.testAnnotationsOnNullableTypes()
2016-10-25 13:30:37 +03:00
Nikolay Krasko
a344ad0644
Fix absence of annotation for function type in cls stubs and ignore @ExtensionFunctionType
2016-10-25 13:30:35 +03:00
Nikolay Krasko
d1dfcfaca1
Fix stub-psi mismatch exception on restoring annotation for nullable types
...
(cherry picked from commit 1aa37f11258dde289a9f7cb700294a038168fbdc)
Conflicts:
compiler/frontend/src/org/jetbrains/kotlin/psi/stubs/KotlinStubVersions.kt
idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/stubBuilder/TypeClsStubBuilder.kt
2016-10-25 13:22:53 +03:00
Mikhail Glukhikh
e53940f4af
KT-8442 related: correct handling of erroneous destructuring references, fixes EA-90434
2016-10-25 13:13:15 +03:00
Valentin Kipyatkov
18f10860df
KT-14336 for to stdlib to takeWhile: propose conversion into takeWhile if break is located in else branch
...
#KT-14336 Fixed
2016-10-24 18:32:05 +03:00
Valentin Kipyatkov
5c8db294df
Fixed index variable case
2016-10-24 18:32:05 +03:00
Valentin Kipyatkov
e5fcfae969
KT-13998 Loop to call chain converter produces 'none' instead of 'all'
...
#KT-13998 Fixed
2016-10-24 18:32:04 +03:00
Valentin Kipyatkov
89099b93b1
Split or glue together checks for not null and is instance + more intelligent use of filter vs filterTo
...
#KT-14284 Fixed
#KT-14286 Fixed
#KT-14287 Fixed
#KT-14303 Fixed
2016-10-24 18:32:04 +03:00
Valentin Kipyatkov
53220b980e
More correct checking of forEach requiring asSequence()
2016-10-24 18:32:04 +03:00
Valentin Kipyatkov
a87ca8432e
KT-14341 for to stdlib to forEach: if the loop variable is not used in the last/innerest statement the conversion is not proposed
...
#KT-14341 Fixed
2016-10-24 18:32:03 +03:00
Valentin Kipyatkov
5ca7688b7c
Correct handling of explicit variable type
2016-10-24 18:32:03 +03:00
Valentin Kipyatkov
9326dfa048
Honor errors in code before when checking smart casts
2016-10-24 18:32:03 +03:00
Valentin Kipyatkov
eae23b548f
KT-14294 for to stdlib to firstOrNull/lastOrNull: intention is absent if there is additional var before for loop
...
#KT-14294 Fixed
2016-10-24 18:32:03 +03:00
Valentin Kipyatkov
a89ef54578
KT-14210 for loop to stdlib: max/min is not recognized if there is additional if
...
#KT-14210 Fixed
2016-10-24 18:32:02 +03:00
Valentin Kipyatkov
35ed689b9f
any() and other find operations to work with checks for not null and is instance
2016-10-24 18:32:02 +03:00
Valentin Kipyatkov
b28d016709
count() to merge with filterNotNull and filterIsInstance + changed test for KT-14191 to use sum()
2016-10-24 18:32:02 +03:00
Valentin Kipyatkov
afd25548a2
KT-14209 for loop to stdlib: sum is not recognized if before was check for type
...
#KT-14209 Fixed
2016-10-24 18:32:01 +03:00
Valentin Kipyatkov
f5d4b1dc8d
KT-14191 FormattingModelInconsistencyException Exception on applying intention Replace with count()
...
#KT-14191 Fixed
2016-10-24 18:32:01 +03:00
Nikolay Krasko
8865c0be34
Step into functions with local variable on first line under "Skip simple getters" (KT-14488)
...
(cherry picked from commit 9423d65)
#KT-14488 Fixed
2016-10-24 16:28:17 +03:00
Alexander Udalov
2076a31094
Improve Collection/Array/String detection logic in intentions
...
Use static methods from KotlinBuiltIns and check all supertypes, support cases
of Collection, Map and CharSequence
2016-10-24 15:30:39 +03:00
Mikhail Glukhikh
44d10672be
KT-7929 related: KtDestructuringDeclarationEntry is not resolved to descriptor in OverridingDeprecatedMemberInspection
2016-10-24 15:17:56 +03:00
Mikhail Glukhikh
6b9252a5d3
KT-7929 related: incorrect KtDestructuringDeclarationEntry is not resolved to descriptor, fixes EA-76715
2016-10-24 15:17:52 +03:00
Mikhail Glukhikh
1c8a2bb4cc
No more attempts to resolve KtDestructuringDeclaration to descriptor #KT-7929 Fixed
...
Also #KT-8442 Fixed
2016-10-24 15:17:48 +03:00
Denis Zharkov
7d89869c02
Do not suggest "Remove parameter" quick-fix on lambdas
...
Only "Rename to _" should work in the case.
The problem is that removing lambda's parameter may lead behaviour changes.
This quick-fix was not being invoked run before KT-14347 had been implemented
# Conflicts:
# idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java
2016-10-24 10:19:25 +03:00
Denis Zharkov
5e1b219784
Implement quick-fix replacing parameter name with _
...
This quick-fix is registered for UNUSED_* diagnostic in places
where it can be applied (destructured declarations/lambda parameters)
#KT-14431 Fixed
2016-10-24 10:19:25 +03:00
Denis Zharkov
4c69416f2b
Report warning on unused entities that can be renamed to _
...
Currently it's all about lambda parameters/destructuring entries
#KT-14347 In Progress
2016-10-24 10:19:25 +03:00
Denis Zharkov
a9fcee098d
Support single-underscore named variables in JVM backend
...
There are mainly two kind of changes:
- skipping 'componentX' calls for destructuring entries named _
- fixing local variable table for them
- skip entries for destructuring entries named _
- use $noName_<i> format for lambda parameters named _
#KT-3824 Fixed
#KT-2783 Fixed
2016-10-24 10:19:25 +03:00
Nikolay Krasko
355dca2a97
Add toString for KotlinStubBaseImpl
...
Try to simplify "Stub and PSI element type mismatch" exception analyze.
(cherry picked from commit 11aa71e)
2016-10-21 00:18:27 +03:00
Dmitry Neverov
3cc3ad2b9e
Fix spaces in labeled expression (KT-14131)
...
https://github.com/JetBrains/kotlin/pull/978
(cherry picked from commit fdd5ba7)
2016-10-20 19:22:00 +03:00
Dmitry Jemerov
f933cf5395
Specify test framework to use explicitly in generate test tests
2016-10-19 17:04:42 +02:00
Alexey Sedunov
8c3fcf69f2
Convert Receiver to Parameter Intention: Update function descriptor after template is finished (otherwise some references may be processed incorrectly)
2016-10-18 16:48:09 +03:00
Nikolay Krasko
74f0bb3d4e
Remove mentioning KT-11395 from the wrong test
...
(cherry picked from commit c4fb0e9)
#KT-11395 Open
2016-10-18 15:41:18 +03:00
Dmitry Neverov
c3c5805a5f
Fix indent in constructor delegate call (KT-7718)
...
(cherry picked from commit 5699b14)
#KT-7718 Fixed
2016-10-18 14:01:51 +03:00
Nikolay Krasko
6a72cebe88
Add indent before colon of super types list on new line (KT-13981, KT-5117)
...
#KT-13981 Fixed
#KT-5117 Fixed
(cherry picked from commit dfea3af)
2016-10-17 15:16:48 +03:00
Nikolay Krasko
944b9b5b6c
Evaluate overloaded toString() in watches for Kotlin classes with delegate properties (KT-14068)
...
(cherry picked from commit 7774d2c)
#KT-14068 Fixed
2016-10-17 15:16:46 +03:00
shiraji
a1f1716044
Add inspection/intention for redundant calls of conversion methods #KT-10871 Fixed
...
Also #KT-12625 Fixed
2016-10-17 12:05:18 +03:00
Nikolay Krasko
8c2e61604e
Test for "Debugger: "Step over" dives into recursive call" (KT-12924)
...
Fixed in 7992df7b93
(cherry picked from commit 78e2f05)
#KT-12924 Fixed
2016-10-14 21:06:27 +03:00
Nikolay Krasko
06b72e608e
Do an ordinal step over while stepping over inlined calls in dex
...
(cherry picked from commit d741895)
2016-10-14 18:57:38 +03:00
Kirill Rakhman
09d6e2e0c0
Add quick-fixes for lateinit-related errors #KT-14342 Fixed
2016-10-14 16:14:00 +03:00
Nikolay Krasko
fe901e9516
Use Dex suffix instead of dex prefix for better test sorting
...
(cherry picked from commit 7f3a9c1)
2016-10-14 14:52:56 +03:00
Nikolay Krasko
7510ff4864
Check current behaviour of stepping over inline 'hasNext' and 'next' in for
...
(cherry picked from commit 008e574)
#KT-14296 Open
2016-10-14 14:52:44 +03:00