Alexey Sedunov
b0c808082f
Pull Members Up: Skip visibility checking between members to move
2016-02-01 13:18:47 +03:00
Alexey Sedunov
f9632c1ad6
Pull Members Up: Use light field if property doesnt't have light methods
...
#KT-10552 Fixed
2016-02-01 13:18:46 +03:00
Alexey Sedunov
a05a16c1e6
Move: Fix name lengthening when moving from default package
...
#KT-10696 Fixed
2016-02-01 13:18:33 +03:00
Alexey Sedunov
218dd41a08
Move: More accurate visibility analysis
...
#KT-10553 Fixed
2016-01-26 18:19:20 +03:00
Alexey Sedunov
d662b02e95
Move: Nested classes support
...
#KT-9027 In Progress
2016-01-26 18:19:09 +03:00
Ilya Gorbunov
25c4453dc5
Cleanup deprecated symbol usages in testData
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
f4822cd757
Fix testData in compiler: add collections and ranges package to fq-names.
2016-01-22 05:54:38 +03:00
Alexey Sedunov
1d9bafe196
PSI Unifier: Fix matching of this-expressions
...
#KT-8293 Fixed
2016-01-14 13:55:10 +03:00
Alexey Sedunov
ed8674c0f9
Safe Delete: Skip usages inside of overriding to-be-deleted declarations
...
#KT-7253 Fixed
2016-01-14 13:55:09 +03:00
Alexey Sedunov
59bacd932a
Minor: Add test for KT-8295
2016-01-14 13:55:08 +03:00
Dmitry Jemerov
8fdd8179b9
Workaround for KtEnumEntrySuperclassReferenceExpression which implements KtSimpleNameExpression in a weird way and can break Move refactoring (EA-75268 - assert: TextRange.<init>)
2016-01-13 20:28:39 +01:00
Denis Zharkov
e2c02f825f
Refine member scope for types with projections
...
Instead of erasing descriptors with conflicting substitution,
use invariant CapturedType(<projection>) as replacement for type parameter
within default member scope.
After substitution leave such types 'as is' everywhere except return types,
use common approximation for them.
#KT-9294 In Progress
#KT-5411 Fixed
#KT-8647 Fixed
#KT-9462 Fixed
#KT-9893 Fixed
#KT-7581 Fixed
#KT-7296 In Progress
2015-12-28 11:13:37 +03:00
Alexey Sedunov
2895e2e86f
Change Signature: Process implicit usages of data class 'componentN' functions
...
#KT-9393 Fixed
2015-12-25 18:50:48 +03:00
Alexey Sedunov
784b250de8
Change Signature: Fix rendering of unresolved types in overriding members
2015-12-18 15:05:39 +03:00
Alexey Sedunov
fd79145b73
Change Signature: Represent parameter/receiver types using KotlinTypeInfo
2015-12-18 15:05:36 +03:00
Alexey Sedunov
cfe1c44260
Introduce Variable: Add type argument to initializer if they can't be inferred from the context
...
#KT-5466 Fixed
2015-12-18 15:05:27 +03:00
Alexey Sedunov
4e36edb5d6
Inline Variable: Remove invalid imports and perform reference lengthening/shortening when inlining non-local declaration
...
#KT-8884 Fixed
2015-12-18 15:05:23 +03:00
Pavel V. Talanov
a667aa2f71
Tests: add runtime (and runtime sources) to some tests that rely on being able to resolve references to built ins
2015-12-15 20:22:09 +03:00
Alexey Sedunov
ffb382e3bc
PSI: Delete succeeding semicolon along with KtElement
...
#KT-5487 Fixed
2015-12-15 13:31:33 +03:00
Alexey Sedunov
d0b9b6a3b4
Introduce Parameter: Support conversion of local variables
...
#KT-9170 Fixed
2015-12-15 13:31:32 +03:00
Alexey Sedunov
04c6ea78c7
Name Suggester: Allow any Kotlin identifier in suggested names
...
#KT-10332 Fixed
2015-12-15 13:31:28 +03:00
Alexander Udalov
239502368a
Update test data for tower resolution algorithm
...
- locals win
- unary calls to plus/minus are not supported in favor of unaryPlus/unaryMinus
- unqualified nested classes are temporarily reported as unresolved
- function without receiver win against extension function
- explicit import win against star import
2015-12-11 17:01:02 +03:00
Alexey Sedunov
ae2fc19fe5
Introduce Parameter/Lambda Parameter: Parenthesize binary expressions if operation reference starts with a new line
2015-12-10 20:07:24 +03:00
Alexey Sedunov
354e1dc337
Extract Function: Parenthesize binary expressions if operation reference starts with a new line
2015-12-10 20:07:23 +03:00
Alexey Sedunov
1824f10f07
Introduce Variable: Parenthesize binary expressions if operation references starts with a new line
...
#KT-3933 Fixed
2015-12-10 20:07:22 +03:00
Alexey Sedunov
ffc8b6fd89
Safe Delete: Move test classes and test data to refactoring directory
2015-12-10 20:06:34 +03:00
Alexey Sedunov
76cf284b77
Introduce Variable: Do not suggest type-based names for multi-declaration entries if component function corresponds to value parameter
...
#KT-10287 Fixed
2015-12-10 20:06:24 +03:00
Alexey Sedunov
e82e4bcfc8
Inline Variable: Show error message on attempt to inline unused declaration
2015-12-08 16:21:08 +03:00
Alexey Sedunov
5c88a1c63e
Inline Variable: Parenthesize arguments of the form "e1 < e2" if the next argument has the form "e1 > e2"
...
#KT-8261 Fixed
2015-12-08 16:21:07 +03:00
Alexey Sedunov
b2bdb8ed02
Inline Variable: Inline string template entries
...
#KT-7654 Fixed
2015-12-08 16:21:05 +03:00
Alexey Sedunov
8f8acf7a83
Pull Up: Drop default parameter values in function which becomes overriding. Disable function with default values if target class is the Java one
...
#KT-9833 Fixed
2015-12-08 16:20:52 +03:00
Pavel V. Talanov
b9ce9f8576
Script, IDE: tweak extract based refactorings to behave better in scripts
...
Fix not being able to invoke introduce variable for top level script expression
Prohibit introduce parameter and introduce property for scripts on top level
Basic test for introduce function (produces red code atm)
2015-12-02 15:14:25 +03:00
Alexey Sedunov
6abf13be41
Extract Function: Consider member property with invoke() a receiver candidate
...
#KT-9774 Fixed
2015-12-02 13:54:03 +03:00
Alexey Sedunov
03e1480476
Extraction Engine: Get rid of explicit element offset manipulation and use copyable user data instead
2015-12-02 13:54:02 +03:00
Alexey Sedunov
44bc937499
Shorten References: Fix removal of explicit companion references in the position of callee expression
...
#KT-10102
2015-12-02 13:54:01 +03:00
Alexey Sedunov
bcadfd4661
Introduce Variable: Suggest choosing between single variable and
...
multi-declaration. Forbid multi-declaration for collections and arrays
#KT-10242 Fixed
2015-12-02 13:46:47 +03:00
Yan Zhulanow
9d1af5a17e
Fix tests: "infix modifier required" and "operator modifier required" errors
2015-11-27 15:51:11 +03:00
Yan Zhulanow
a3ff3ffc45
Fix tests: "Placing function type parameters after the function name" error
2015-11-27 15:51:11 +03:00
Alexey Sedunov
7a40239e64
Introduce Variable: Support destructuring declarations
...
#KT-6262
2015-11-26 21:22:16 +03:00
Alexey Sedunov
736813c76a
Introduce Lambda Parameter: Support extraction of string template fragments
2015-11-24 20:40:26 +03:00
Alexey Sedunov
1b162e0294
Introduce Parameter: Support extraction of string template fragments
2015-11-24 20:40:21 +03:00
Alexey Sedunov
6e8acc6453
Psi Unifier: Do not unify parameters with block expressions
2015-11-24 20:40:20 +03:00
Alexey Sedunov
741489f4a5
Extract Function/Introduce Property: Support extraction of string template fragments
2015-11-24 20:40:18 +03:00
Alexey Sedunov
f4b4b023a3
Introduce Variable: Support extraction of string template fragments
...
#KT-2089 Fixed
2015-11-24 20:40:15 +03:00
Alexey Sedunov
5889971d62
Introduce Variable: Allow choosing extraction scope for expressions in the lambda body
...
#KT-7720 Fixed
2015-11-24 20:40:07 +03:00
Alexey Sedunov
aeee8bafe6
Name Suggester: Suggest parameter name for the corresponding argument expression
...
#KT-8111 Fixed
2015-11-16 11:29:59 +03:00
Denis Zharkov
deea0643ad
Refine type arguments resolution and rendering
...
In case of type constructors captured parameters from outer classes
#KT-5510 Fixed
#KT-3112 Fixed
#KT-6325 Fixed
#KT-408 Fixed
#KT-6337 Fixed
2015-11-13 14:47:28 +03:00
Natalia Ukhorskaya
5fcd5396b6
Add option to extract function for wrapping member extension function with with { }
2015-11-10 18:38:11 +03:00
Alexey Sedunov
6ff955b66c
Change Signature: Implement improved call processing algorithm
...
#KT-8953 Fixed
#KT-9525 Fixed
2015-11-10 16:47:48 +03:00
Alexey Sedunov
2476393754
Change Signature: Do not move lambda out of parentheses if it neither wasn't out
...
before nor corresponds to the last parameter after the refactoring
#KT-9763 Fixed
2015-11-10 16:47:42 +03:00