Alexey Sedunov
a8c57f11af
Move: Implement more accurate 'protected' visibility check
...
#KT-17545 Fixed
2017-04-24 20:52:12 +03:00
Alexey Sedunov
c690761715
Move: Do not process imported references when moving entire file
...
#KT-17538 Fixed
2017-04-24 20:52:10 +03:00
Alexey Sedunov
f575e2710f
Move: Fix processing of implicit extension 'invoke' calls
...
Also fix bogus "unused import" inspection reported on such calls
#KT-17496 Fixed
2017-04-21 13:32:34 +03:00
Alexey Sedunov
b80fbe1192
Change Signature: Avoid creating parameters from scratch
...
#KT-15519 Fixed
2017-04-21 13:32:32 +03:00
Mikhail Glukhikh
8fdb611e3b
Do not try to inline properties from decompiled files
...
This removes GUI freeze for library properties #KT-17234 Fixed
2017-04-19 18:27:29 +03:00
Mikhail Glukhikh
6571a573f1
Use correct callElement for variable invoke in replacer
...
Check only 'status.isSuccess' before inlining, no descriptor check
Add two tests and fixes two other
2017-04-19 18:27:27 +03:00
Mikhail Glukhikh
4ef0096d46
Refactoring: inline val / fun now use the common inliner
...
This prevents their inconsistent work in some situations
NB: breaks three tests if used alone
2017-04-19 18:27:26 +03:00
Mikhail Glukhikh
e6fa7356e1
Inline: support compound case without containing block #KT-17296 Fixed
2017-04-19 18:27:25 +03:00
Mikhail Glukhikh
91f7f19902
ExpressionReplacementPerformer: handle string templates accurately
2017-04-19 13:12:59 +03:00
Mikhail Glukhikh
815a367978
ReplacementPerformer: always copy statement to insert #KT-17273 Fixed
2017-04-19 13:12:58 +03:00
Mikhail Glukhikh
0f6b9473e9
Inliner: don't take into account nonexistent PSI to keep parameter
...
So #KT-17272 Fixed
2017-04-19 13:12:57 +03:00
Mikhail Glukhikh
b8cc7c2ca6
Add type arguments more accurately during inlining
2017-04-19 13:12:56 +03:00
Mikhail Glukhikh
f8e1f5e613
Inliner: specify explicit lambda signature for calls with lambdas
...
So #KT-17213 Fixed
So #KT-17395 Fixed
2017-04-19 13:12:55 +03:00
Mikhail Glukhikh
6453e10d44
If necessary, add parameter types while inlining lambda
2017-04-19 13:12:52 +03:00
Alexey Sedunov
e79a7d3e94
Change Signature: Update test data
2017-04-17 23:00:20 +03:00
Alexey Sedunov
b33b06722d
Change Signature: Support header/impl declarations
2017-04-17 23:00:18 +03:00
Alexey Sedunov
d78828001d
Rename: Support header/impl declarations
2017-04-17 23:00:15 +03:00
Alexey Sedunov
b65e082425
Test Framework: Fix module creation in multi-module tests
2017-04-17 23:00:12 +03:00
Alexey Sedunov
69ef8e89a9
Move: Fix NPE on moving file to non-source directory
2017-04-17 23:00:11 +03:00
Alexey Sedunov
b229eeeb47
Move: Prevent running refactoring helpers on partial move
...
It may lead to some imports being wringly removed
due to their references being unresolved yet
Also fix NPE on package rename via directory move
2017-04-17 23:00:10 +03:00
Mikhail Zarechenskiy
b17b3f4c63
Resolve local function parameters with function inner scope
...
This allows to use type parameters and value paramters in default value expressions
#KT-7984 Fixed
#KT-7985 Fixed
2017-04-17 16:21:06 +03:00
Alexey Sedunov
9979c6e361
Move: Fix processing of callable references to Java constructors
2017-04-11 12:11:51 +03:00
Alexey Sedunov
411a8dc206
Move: Remove duplicating conflict messages from test data
2017-04-11 11:45:13 +03:00
Alexey Sedunov
cd6177534a
Move: Add conflict checking for "Move packages" case
2017-04-11 11:45:12 +03:00
Alexey Sedunov
e21ff23e26
Move: Add conflict checking for "Move directory with classes" case
2017-04-11 11:45:11 +03:00
Alexey Sedunov
87a12ee1c7
Move: Check for conflicts using entire collections of elements to move
2017-04-11 11:45:10 +03:00
Alexey Sedunov
358b5fe548
Move: Force package name change when moving Java files
...
Package statement in Java file is updated too late
when moving the entire containing directory, so we force it
with intercepting MoveFileHandler implementation
2017-04-11 11:45:08 +03:00
Alexey Sedunov
c1066b98f0
Move: Fix warning on companion used as implicit dispatch receiver
...
Do not report conflict if target class is a sublcass of
companion object's containing class
2017-04-06 18:54:02 +03:00
Alexey Sedunov
5c35061afa
Move: Make minor improvements and refactorings
2017-04-06 18:52:45 +03:00
Alexey Sedunov
4a168ff780
Move: Process internal usages after all declarations are moved
2017-04-06 18:18:33 +03:00
Alexey Sedunov
746ec48176
Move: Fix internal reference processing on moving multiple files
...
#KT-17211 Fixed
2017-04-04 14:35:10 +03:00
Alexey Sedunov
2eb912a30c
Move: Convert AbstractMoveTest to light fixture test case
...
Extract multi-module move test to a separate class
2017-03-31 18:24:16 +03:00
Alexey Sedunov
eaba215bbb
Move: Wrap individual internal usages for better preview
...
Fix unused import removal for internal usages
#KT-9158 Fixed
2017-03-31 18:24:12 +03:00
Mikhail Glukhikh
8cfcd7e5a6
Inline function: add extra tests taken from intellij-community
2017-03-30 19:42:22 +03:00
Mikhail Glukhikh
091e875551
Inline function: process usages in children-first order
2017-03-30 19:42:19 +03:00
Mikhail Glukhikh
93b624fdbe
Inline function: handle callable references through lambdas
2017-03-30 19:42:16 +03:00
Mikhail Glukhikh
75bb599991
Inline function: handle recursive calls
2017-03-30 19:42:14 +03:00
Mikhail Glukhikh
b6803af746
KT-6159: generate Unit while code inlining when needed
2017-03-30 19:42:11 +03:00
Mikhail Glukhikh
081caadec1
Fix code inlining for expression body with multiple occurrences
...
So #KT-17022 Fixed
2017-03-30 19:42:09 +03:00
Mikhail Glukhikh
77888349cd
KT-6159: rename duplicates met
2017-03-30 19:42:06 +03:00
Mikhail Glukhikh
de861066bf
KT-6159: allow local / private functions inlining
2017-03-30 19:42:03 +03:00
Mikhail Glukhikh
127b7c80df
Some inline tests that do not work
2017-03-30 19:42:02 +03:00
Dmitry Jemerov
6febe1e8a2
Convert RenameTest to light fixture test case
...
Extract multi-module rename test to a separate class.
2017-03-28 15:48:38 +02:00
Dmitry Jemerov
159c2382b4
Convert KotlinChangeSignatureTest to light test case
2017-03-27 19:45:50 +02:00
Alexey Sedunov
298ee266c3
Move: Fix conflict checking when switching between similar libraries
...
#KT-17006 Fixed
2017-03-26 12:56:26 +03:00
Alexey Sedunov
1d0162402e
Move: Fix processing of calls and callable references
...
Fix CCE on callable references to Java methods.
Fix qualification of callable references without receivers.
Fix processing of calls/callable references to object extensions
and extension members.
Do not explicate short companion references
#KT-16809 Fixed
2017-03-26 12:56:24 +03:00
Alexey Sedunov
dc04b200b6
Move: Do not shorten references unaffected by the refactoring
2017-03-26 12:56:20 +03:00
Alexey Sedunov
d71cefee8a
Move: Fix "scanEntireFile" values after the refactoring
...
#KT-17032 Fixed
2017-03-26 12:56:18 +03:00
Alexey Sedunov
56d22277b7
Move: Filter out ConflictUsageInfo instances before running the refactoring
...
#KT-16556 Fixed
2017-03-22 13:36:19 +03:00
Alexey Sedunov
2f136dae1c
Move: KT-8955
...
Fix NPE on moving directory where at least one Kotlin file
contains package directive unmatched by the containing directory
#KT-8955 Fixed
2017-03-22 13:36:18 +03:00