Commit Graph

64 Commits

Author SHA1 Message Date
Dmitry Gridin 8e35b7a29c KotlinIntroduceVariableHandler: fix for declarations with expression body
#KT-38449 Fixed
2020-05-04 03:49:28 +00:00
Alexander Podkhalyuzin ddd25c703a SmartPointers in Introduce Variable refactoring
It's often case, when psi can die after reparse, especially after
reformatting cases, SmartPointers are opposite to it, can survive

#KT-32601 Fixed
2019-10-30 18:08:14 +03:00
Dmitriy Novozhilov b66bbdf7a6 [IDE-NI-MIGRATE] [BAD] Migrate testdata of Extraction tests
Bad tests:
- IntroduceTypeParameter.testDuplicates
- IntroduceTypeParameter.testNullableType
- IntroduceTypeParameter.testUserType
- IntroduceTypeParameter.testFunctionType
- IntroduceTypeParameter.testInClass
- ExtractFunction.TypeParameters.testNoVarianceInFun
- ExtractFunction.Parameters.CandidateTypes.testNonNullableTypes
- ExtractFunction.Parameters.CandidateTypes.testMultipleTypes
- ExtractFunction.ControlFlow.OutputValues.testGenericPair
- IntroduceVariable.ExplicateTypeArguments.testDeeperNestedCall
2019-05-06 11:36:28 +03:00
Alexey Sedunov 62f654b3d2 Introduce Variable: Avoid explicit types for expression of anonymous type
#KT-12078 Fixed
2018-04-13 20:23:07 +03:00
Mikhail Glukhikh 7118a4bf80 Fix KNPE in "introduce variable", add some name conflict introduce tests
So #KT-21530 Fixed
2017-12-05 15:29:45 +03:00
Denis Zharkov bc564af2fc Regenerate mockJDK using openJDK 7 2017-06-24 17:26:01 +03:00
Alexey Sedunov 9cadfd01ae Introduce Variable: Allow extraction to class body/file 2016-12-08 17:56:54 +03:00
Alexey Sedunov 5c2ad48375 Introduce Variable: Do not replace assignment left-hand sides
#KT-14240 Fixed
2016-10-13 19:00:58 +03:00
Alexey Sedunov 8a9a3285de Introduce Variable: Skip leading/trailing comments inside selection
#KT-13054 Fixed
2016-08-10 11:45:33 +03:00
Alexey Sedunov 892c8436f3 Introduce Variable: Do not suggest expressions without type
#KT-12922 Fixed
2016-08-10 11:45:28 +03:00
Alexey Sedunov 792d9c1ae2 Introduce Variable: Skip type in template if no resolvable/non-error types are available in the current context
#KT-10808 Fixed
2016-02-09 19:18:45 +03:00
Ilya Gorbunov 25c4453dc5 Cleanup deprecated symbol usages in testData 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 59bacd932a Minor: Add test for KT-8295 2016-01-14 13:55:08 +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 04c6ea78c7 Name Suggester: Allow any Kotlin identifier in suggested names
#KT-10332 Fixed
2015-12-15 13:31:28 +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 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
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 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
Alexey Sedunov 7a40239e64 Introduce Variable: Support destructuring declarations
#KT-6262
2015-11-26 21:22:16 +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
Alexey Sedunov 18ed3055ee Introduce Variable: Allow introduction of variables with 'dynamic' type
#KT-8483 Fixed
2015-11-02 15:15:31 +03:00
Valentin Kipyatkov dc83d5cf04 Fixed test data 2015-10-15 19:20:12 +03:00
Valentin Kipyatkov 090ea37a32 Fixed test data to use only annotation syntax with @ 2015-10-15 19:20:08 +03:00
Alexey Sedunov 1ca3c5e3b8 PSI Unifier: Use convention-based call for array access expressions when comparing elements by resolved calls
#KT-8312 Fixed
2015-09-03 22:06:17 +03:00
Alexey Sedunov d7e79e7f28 Introduce Variable: Forbid inside of type references and 'super' references
#KT-8324 Fixed
2015-09-03 22:06:15 +03:00
Alexey Sedunov fa8fcb53c5 Introduce Variable: Forbid extraction from class initializer (aside of its
body)
 #KT-8329 Fixed
2015-09-03 22:06:13 +03:00
Alexey Sedunov c005fe613f Introduce Variable: Fix extraction of expression from when-entry condition
#KT-8444 Fixed
2015-09-03 22:06:12 +03:00
Alexey Sedunov 3038e2382b Introduce Variable: Forbid in the class body and at the top level
#KT-8735 Fixed
2015-09-03 22:06:11 +03:00
Alexey Sedunov 0f5dff483a Introduce Variable: Proper occurrence search in generated block expression
#KT-7836 Fixed
 #KT-8443 Fixed
 #EA-71411 Fixed
2015-09-03 22:06:09 +03:00
Stanislav Erokhin aaebe70342 Improved logic of finding conflicts for refactoring actions 2015-08-27 12:01:08 +03:00
Valentin Kipyatkov db144a6121 Suggestions from expression itself to have higher priority + fixed incorect upper case naming 2015-06-29 19:36:49 +03:00
Valentin Kipyatkov 4a52247ab7 Name validation filters out invisible declarations 2015-06-29 19:36:48 +03:00
Valentin Kipyatkov de2378f909 Rewritten NameValidatorImpl to be both more efficient and more correct 2015-06-29 19:36:47 +03:00
Valentin Kipyatkov df5f035760 KT-7716 Introduce Variable's name suggestions often have "1" at the end for no real reason
#KT-7716 Fixed
2015-06-29 19:36:46 +03:00
Alexey Sedunov 683a8895df Introduce Variable: Do not insert unused variable references
#KT-7227 Fixed
2015-06-18 19:28:02 +03:00
Dmitry Jemerov 625096466e IDE testdata: s/trait/interface 2015-05-13 16:13:13 +02:00
Dmitry Jemerov f93eeeb563 fix tests by adding missing 'init' keywords to testdata 2015-04-29 14:07:05 +02:00
Alexey Sedunov 40799a0a43 PSI Unifier: Unify references which correspond to the same declaration
#KT-5996 Fixed
2015-03-13 23:16:59 +03:00
Alexey Sedunov c7a71827a7 Introduce Variable: Amend semicolons to updated expression
#KT-2098 Fixed
2014-12-25 17:12:16 +03:00
Alexey Sedunov 367b99a156 Extraction refactorings: Do not suggest extraction of type elements
#KT-3994 Fixed
2014-12-23 20:43:23 +03:00
Alexey Sedunov 1e5769acfd Introduce Variable: Remove braces from replaced string template entries when possible
#KT-5310 Fixed
2014-12-23 20:43:22 +03:00
Alexey Sedunov 82579f489b Introduce Variable: Convert property accessor body to block when needed 2014-12-23 20:43:20 +03:00
Alexey Sedunov e76792d4f2 Introduce Variable: Do not delete original expression if its value is used in enclosing expression 2014-12-23 20:43:18 +03:00
Alexey Sedunov 6084352d37 Introduce Variable: Properly convert function body to block when needed
#KT-5353
2014-12-23 20:43:17 +03:00
Alexey Sedunov a9a30a1b7d PSI Pattern Matching: Respect type arguments when matching calls
#KT-6496 Fixed
2014-12-23 20:43:15 +03:00
Alexey Sedunov b18b888161 PSI Pattern Matching: Fix matching of !!
#KT-6021 Fixed
2014-10-15 15:41:47 +04:00