Commit Graph

678 Commits

Author SHA1 Message Date
Mikhail Glukhikh a960fa78cb Use expression body: add new line more accurately 2017-07-07 18:15:36 +03:00
Mikhail Glukhikh 523cbc6723 Convert to expression body: insert new-line after = for long lines 2017-07-07 18:15:07 +03:00
Dmitry Jemerov 5f9a33564a Implement option for wrapping method annotations 2017-07-07 16:48:31 +02:00
Alexey Sedunov 50a38df8b1 Remove Parentheses: Forbid on call inside a call without argument list
#KT-18699 Fixed
2017-06-29 17:42:17 +03:00
Alexey Sedunov 2e8b374ce8 Move: Use KtNamedDeclaration as referrer when reporting a conflict
EA-103817 Fixed
2017-06-29 17:42:15 +03:00
Denis Zharkov bc564af2fc Regenerate mockJDK using openJDK 7 2017-06-24 17:26:01 +03:00
Alexey Sedunov 895407f5e3 Rename: Do not silently rename all parameters in function hierarchy
#KT-18325 Fixed
2017-06-22 19:50:54 +03:00
Alexey Sedunov 423fb9dfb3 Move/Copy: Warn about usages of JDK when moving to non-JVM module
#KT-18135 Fixed
2017-06-22 19:50:52 +03:00
Alexey Sedunov 1d36c49537 Copy: Copy elements and process usages under the same write action
In some cases doing these operations in separate write actions
may lead to invalidation of copied elements

 #KT-18149 Fixed
2017-06-22 19:50:51 +03:00
Alexey Sedunov 6b18ff1d97 Copy/Move: Fix processing of calls used as callees
#KT-18241 Fixed
2017-06-22 19:50:50 +03:00
Dmitry Jemerov f32dc9e84e Put lambda parameters on the same line as opening curly brace 2017-06-14 14:18:58 +02:00
Alexey Sedunov 13212f06b4 Copy/Move: Fix processing of imported Java static members
#KT-18098 Fixed
2017-06-08 14:37:37 +03:00
Alexey Sedunov a0629bfc58 Rename: Fix rename of import alias referring to object member
#KT-18096 Fixed
2017-06-08 14:37:35 +03:00
Alexey Sedunov 69c315443a Rename: Disable label rename outside of reference range
#KT-17128 Fixed
2017-06-08 14:37:34 +03:00
Alexey Sedunov 566e701131 Rename: Disable Java member rename by reference to import alias
#KT-18076 Fixed
2017-06-08 14:37:32 +03:00
Alexey Sedunov 9c11c42ec2 Rename: Fix inplace refactoring for declarations with backticked names
#KT-15859 Fixed
2017-06-08 14:37:31 +03:00
Alexey Sedunov 2f88b6ef9b Copy: Rename only self-usages of the copied class
#KT-18034 Fixed
2017-06-08 14:37:30 +03:00
Mikhail Glukhikh 9c15db93d9 Inline: more accurate handling of type arguments
Partial revert of b8cc7c2ca6
Soften requirements in remove type arguments intention in this mode
So #KT-17622 Fixed
Related to KT-17623
2017-05-31 12:47:50 +03:00
Mikhail Glukhikh 38d6c597a3 Handle expected type more precisely in RemoveExplicitTypeArguments
So #KT-17623 Fixed
2017-05-31 12:46:59 +03:00
Valentin Kipyatkov c69375ebdc Remove redundant curly braces in string templates on inline 2017-05-26 16:37:37 +03:00
Valentin Kipyatkov ab1b985bac Inline Property supported for properties with setter
#KT-2638 Fixed
2017-05-26 16:37:36 +03:00
Valentin Kipyatkov e6bfa55534 Inline Property also supported for properties with getter 2017-05-26 16:37:36 +03:00
Valentin Kipyatkov 940ce27925 Inline val: more correct and simple detection of write usages
#KT-17489 Fixed
2017-05-26 16:37:35 +03:00
Valentin Kipyatkov 55979aca74 Drop result value if it's not needed 2017-05-26 16:37:35 +03:00
Dmitry Petrov c83b764c73 Update testData after changes in diagnostics 2017-05-26 13:58:46 +03:00
Alexey Sedunov 75b73ecbcb Copy: Disable CopyKotlinDeclarationsHandler on non-source files 2017-05-22 13:51:08 +03:00
Alexey Sedunov a80fb6f20f Copy: Report module accessibility conflicts 2017-05-18 14:22:39 +03:00
Alexey Sedunov 1072495001 Copy: Support top-level declarations 2017-05-16 13:10:41 +03:00
Alexey Sedunov 4c1c1a989a Copy: Support multiple classes in the same file 2017-05-16 13:10:40 +03:00
Alexey Sedunov 92446df14a Copy: Support class copying
#KT-8180 Fixed
 #KT-9054 Fixed
2017-05-16 13:10:39 +03:00
Alexey Sedunov f2bb6e4dac Rename: Support import aliases
#KT-4379 Fixed
2017-05-16 13:10:36 +03:00
Alexey Sedunov 3c94184de9 Rename: Support labeled expressions
#KT-7107 Fixed
2017-05-16 13:10:34 +03:00
Alexey Sedunov f70bac019a Change Signature: Fix TypeInfo comparison
#KT-13437 Fixed
2017-05-10 14:49:53 +03:00
Alexey Sedunov 8bbf8e185a Move: Filter out usages with visibility error before refactoring
If declaration is already invisible before move,
no visibility conflict should be reported

 #KT-17571 Fixed
2017-05-10 14:49:52 +03:00
Alexey Sedunov 0a5f9d8181 Move: Specify conflict containing declaration more precisely
Also do not render class fqname for member declarations

 #KT-17547 Fixed
2017-05-10 14:49:51 +03:00
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