Dmitry Jemerov
032d50bbbf
handle multi-declarations in "show expression type"
2016-10-04 18:23:32 +02:00
Dmitry Jemerov
fbd2c48fbd
don't offer functions with block body and functions with declared return type as candidates for "show expression type"
2016-10-04 18:23:32 +02:00
Dmitry Jemerov
7b644e2c52
support "show expression type" in variable declaration position
...
#KT-10095 Fixed
2016-10-04 18:23:32 +02:00
Dmitry Petrov
06101dba52
KT-13961 REDECLARATION not reported on private-in-file 'foo' vs public 'foo' in different file
...
Private-in-file declarations conflict with public overload-equivalent declarations
in other files in the same package.
Move functions for grouping possible redeclarations to OverloadResolver
(since they are used only there).
Refactor redeclarations / conflicting overloads reporting.
2016-10-03 11:50:29 +03:00
Denis Zharkov
0120085443
Refine expression kind definition in postfix templates
...
- Do not treat if without else as values
- Some statements aren't contained in block (see tests)
#KT-14107 Fixed
#KT-14110 Fixed
2016-10-03 10:36:48 +03:00
Denis Zharkov
3c24996073
Refine default postfix templates selector
...
There is new settings checkCanBeUsedAsValue
Also expression filtering are split into to parts:
- getNonFilteredExpressions is trivially goes until it reaches
first block body of some declarations
- all additional filtering is merged into Condition that is passed into
PostfixTemplateExpressionSelectorBase super-call
Notable changes for users:
- do not suggest try for non-top-level expressions
- do not suggest var/par/etc for loops
2016-10-03 10:36:48 +03:00
Denis Zharkov
ba2d2a036e
Suggest postfix templates on lambda expressions
2016-10-03 10:36:48 +03:00
Denis Zharkov
54d9b4bee6
Do not suggest assignment as a subject in postfix templates
...
#KT-14077 Fixed
2016-10-03 10:36:48 +03:00
Denis Zharkov
18146fafdf
Allow if/when/try postfix templates in expression position
...
#KT-14078 Fixed
2016-10-03 10:36:48 +03:00
Denis Zharkov
bff9dd4ef5
Suggest assert/return postfix templates only for statements
...
#KT-14079 Fixed
#KT-14090 Fixed
2016-10-03 10:36:48 +03:00
Denis Zharkov
ce128c5d6e
Do not suggest operation references in postfix templates
...
#KT-14087 Fixed
2016-10-03 10:36:48 +03:00
Denis Zharkov
23c0bdbd05
Add filtering of suggested expressions for postfix templates
...
Do not suggest qualified expression's selector or a part of user type
because they aren't really independent expressions
2016-09-22 18:11:22 +03:00
Nikolay Krasko
89a1389512
Make caret left move not-applicable on first function parameter
2016-09-20 15:27:01 +03:00
Denis Zharkov
189705727f
Implement a bunch of string based postfix templates
...
#KT-4710 Fixed
2016-09-20 15:26:48 +03:00
Denis Zharkov
1b391123e6
Implement for/iter postfix templates
...
#KT-4710 In Progress
2016-09-20 15:26:47 +03:00
Denis Zharkov
b702886f0d
Introduce var/val postfix templates
...
#KT-4710 In Progress
2016-09-20 15:26:45 +03:00
Denis Zharkov
4d28199cc2
Implement if/else/null/notnull/when/try postfix templates
...
#KT-4710 In Progress
2016-09-20 15:26:42 +03:00
Denis Zharkov
09266b222b
Implement 'Surround expression with if' surrounder
...
#KT-3363 Fixed
2016-09-20 15:26:41 +03:00
Denis Zharkov
f18b9cceb3
Implement 'not' postfix template
...
#KT-4710 In Progress
2016-09-20 15:26:39 +03:00
Nikolay Krasko
3d0d82b862
Fix tests for move: check applicability from changed text
...
Presentation status has stopped working after https://github.com/JetBrains/intellij-community/commit/18ce2c6070667608d9bf5a18926778187564fd19
2016-09-20 15:26:36 +03:00
Valentin Kipyatkov
fcce1e3838
KT-12852 Support breadcrumbs for Kotlin
...
#KT-12852 Fixed
2016-09-13 17:46:16 +03:00
Nikolay Krasko
52dd02fe08
Make changes in super call lambda not cause out-of-block modification (KT-13474)
...
#KT-13474 Fixed
2016-09-02 13:41:24 +03:00
Nikolay Krasko
64d511566e
Test that out-of-block behaviour conforms running the analyze of the nearest expression
...
Mark as exceptions cases with field initialize expression and body of class init for now
2016-09-02 13:41:24 +03:00
Alexey Sedunov
89c39b9762
Misc: Use TODO() consistently in implementation stubs
...
#KT-13589 Fixed
2016-08-29 16:20:55 +03:00
Alexey Sedunov
238f99aa3d
Override/Implement: Make return type non-nullable (platform collection case) when overriding Java method
...
#KT-13455 Fixed
2016-08-18 19:15:31 +03:00
Alexey Sedunov
1b546d18ff
Override/Implement Members: Do not expand type aliases in the generated members. Retain abbreviated types during flexible type approximation
...
#KT-13244 Fixed
2016-08-10 11:45:36 +03:00
Alexey Sedunov
1a4ff598e3
Override/Implement Members: Do not make return type non-nullable if base
...
return type is explicitly nullable
#KT-13383 Fixed
#KT-13379 Fixed
2016-08-10 11:45:35 +03:00
Alexey Sedunov
3ba776fffa
Code Insight: Format generated declarations
...
#KT-11176 Fixed
(cherry picked from commit 3641ad6)
2016-07-20 15:39:05 +03:00
Alexey Sedunov
a33f946c14
Override/Implement Members: Implement Members: Fix base member detection when abstract and non-abstract members with matching signatures are inherited from an interface
...
#KT-11115 Fixed
(cherry picked from commit a3a2e57)
2016-07-20 15:39:01 +03:00
Dmitry Jemerov
079d857aa2
update testdata for https://github.com/JetBrains/kotlin/pull/896/
2016-07-19 17:58:09 +02:00
Dmitry Jemerov
e224041760
show line markers for properties defined in the primary constructor (KT-12626)
2016-07-14 23:32:07 +02:00
Nikolay Krasko
eee45e91ce
Add more tests for PropertyAccessorDescriptor.isDeafult() usages
2016-06-29 16:16:31 +03:00
Alexey Sedunov
81ec18e1fc
Minor: Fix test data
2016-06-28 20:58:58 +03:00
Alexey Sedunov
f9d28bf76d
Override/Implement: Prefer not-nullable return type when overriding Java method without nullability annotation
...
#KT-12381 Fixed
(cherry picked from commit 2b87f8e)
2016-06-28 15:07:31 +03:00
Alexey Sedunov
ffe4e760d7
Override/Implement: Implement JavaDoc/KDoc copying
...
#KT-8682 Fixed
#KT-12735 Fixed
(cherry picked from commit f4486be)
2016-06-28 15:07:19 +03:00
Nikolay Krasko
b107bc401c
Formatter: Don't enforce empty line between secondary constructors without body (KT-12175)
...
#KT-12175 Fixed
2016-05-12 17:26:54 +03:00
Valentin Kipyatkov
07207949ba
Support of KT-11255 Support Move Element Left/Right actions for Kotlin (except for enum entries)
...
#KT-11255 Fixed
2016-05-10 15:48:40 +03:00
Valentin Kipyatkov
06db49bab7
Restored lost tests
2016-05-10 15:41:33 +03:00
Denis Zharkov
5bc5722051
Load additional JDK functions into built-ins member scope
...
#KT-5990 Fixed
#KT-7127 Fixed
#KT-10370 Fixed
2016-04-25 17:41:08 +03:00
Alexey Sedunov
1635018fe7
Override/Implement: Use function body template when generating functions with default body
...
#KT-11807 Fixed
2016-04-21 16:40:17 +03:00
Alexey Sedunov
38522b09ce
Code Insight: Allow properties with custom setters to be used in generated equals/hashCode/toString
...
#KT-11908 Fixed
2016-04-19 20:27:41 +03:00
Alexey Sedunov
d75edb9876
Override/Implement Action: Generate abstract overrides for Any members inside of Kotlin interfaces
...
#KT-11659 Fixed
2016-04-19 20:27:35 +03:00
Alexey Sedunov
3c79eab2fd
Line Markers: Show recursion line markers for extension function calls with different receivers
...
#KT-11495 Fixed
2016-04-19 20:27:33 +03:00
Nikolay Krasko
a642a15947
"Run Test" line markers now wrap the function names. Additional marker on abstract class.
2016-04-05 00:39:46 +03:00
Nikolay Krasko
ee9962ed70
Template for Junit4 framework doesn't have test prefix anymore
2016-04-05 00:39:46 +03:00
Alexey Sedunov
cbb6f7ed63
Generate equals()/hashCode(): Fix hashCode() implementation
...
#KT-11638 Fixed
2016-03-29 15:21:17 +03:00
Nikolay Krasko
85bc32a884
Adjust move code tests for KEEP_FIRST_COLUMN_COMMENT option
...
#KT-4175 In Progress
2016-03-16 12:38:21 +03:00
Pavel V. Talanov
a4c005fefd
Update existing test data depending on diagnostic parameter rendering
2016-02-26 14:45:11 +03:00
Alexander Udalov
f130755972
Use new built-in binary format (.kotlin_builtins files) in IDE
...
Instead of .kotlin_class and .kotlin_package files, .kotlin_builtins files are
now supported: they are decompiled to a long file consisting of all non-real
classes (those which do not also have .class files) and members in the
corresponding package.
Unlike the old files, .kotlin_builtins files have a binary version in the
beginning, which allows us to skip decompilation and stub building in case the
file has an unsupported version. This could previously lead to exceptions, see
KT-11077, EA-79339.
The change in DecompiledTextFactory is needed because without "defined in ..."
the keys for members in the long decompiled file are not unique, as there are
multiple members with exactly the same signatures in different classes (e.g.
arithmetic operations in primitive classes).
Remove testData files with the decompiled text and stubs of built-in symbols
because now that the whole package is decompiled to a single file, it would be
painful to update these files each time something in built-in sources changes
#KT-11077 Fixed
2016-02-26 11:29:10 +03:00
Dmitry Petrov
4afe98a0f6
Better diagnostics for conflicting overloads.
...
Skip declarations without sources in reporting, not when determining redeclaration groups:
this allows emitting informative diagnostics for incremental compilation.
Provide containing declaration with "kind", e.g., "package '<root>'", "class A", and so on.
2016-02-03 15:53:07 +03:00