Commit Graph

4711 Commits

Author SHA1 Message Date
Valentin Kipyatkov a760ef3665 Generating "firstOrNull()?.let {...}" 2016-08-16 17:37:58 +03:00
Valentin Kipyatkov fba9b123dd More cases supported for "any" 2016-08-16 17:37:58 +03:00
Valentin Kipyatkov c0f3ab59ab Supported "lastOrNull" and "any" without break in the loop 2016-08-16 17:37:57 +03:00
Valentin Kipyatkov fcbf68617e Merging subsequent .filter()'s 2016-08-16 17:37:57 +03:00
Valentin Kipyatkov d7762778a2 Cannot transform to flatMap if old working variable used in the nested loop 2016-08-16 17:37:56 +03:00
Valentin Kipyatkov 863040700e Check for continue-statement of the inner loop! 2016-08-16 17:37:56 +03:00
Valentin Kipyatkov 8c498af3d8 Checking that smart casts will not be broken by conversion 2016-08-16 17:37:56 +03:00
Valentin Kipyatkov 12b1a99a6a Initial implementation of loop-to-call-chain intention 2016-08-16 17:37:55 +03:00
Pavel V. Talanov 10660f35d7 Add tests for script configuration machinery, namely ScriptTemplateProvider EP
Test highlighting and navigation depending on provided script definition
2016-08-16 16:45:59 +03:00
Kirill Rakhman e6d76a9b71 Allow suppressing warnings for secondary constructor (KT-12627)
(cherry picked from commit 41cf868)

 #KT-12627 Fixed
2016-08-16 13:04:42 +03:00
Nikolay Krasko 7a4d20b4cf Make quick evaluate work on receiver in qualified expressions (KT-13269)
(cherry picked from commit 970ac5a)

 #KT-13269 Fixed
2016-08-16 13:04:41 +03:00
Natalia Ukhorskaya f6bb70aad1 Debugger: allow to evaluate 'this' and fields in java files 2016-08-16 09:08:34 +03:00
Kirill Rakhman 926deebff5 Format spaces around !is and !in (KT-13314)
#KT-13314 Fixed
2016-08-15 16:21:01 +03:00
Mikhail Glukhikh b53cb91e88 Do not suggest "Replace infix with safe call" inside conditions or binary / unary expressions #KT-13328 Fixed 2016-08-15 15:42:27 +03:00
shiraji 42969271ab Fix problem with appending literal to variable omitting braces #KT-13336 Fixed 2016-08-15 15:13:40 +03:00
Kirill 223fd9fad0 Implement intentions to add/remove braces to/from when entries #KT-12043 Fixed 2016-08-15 14:13:13 +03:00
Kirill Rakhman d68a681db5 Highlight use of toString() inside string interpolation as redundant #KT-10731 Fixed 2016-08-15 13:28:47 +03:00
Mikhail Glukhikh 52dacd1d49 KT-13430 related: add non-null assertion works also for UNSAFE_INFIX_CALL 2016-08-12 17:43:31 +03:00
Mikhail Glukhikh cf2d575eec Add non-null assertion: correct handling of unary expression unsafe calls #KT-13430 Fixed 2016-08-12 17:43:26 +03:00
Mikhail Glukhikh 13975778c5 Unused symbol: handling of import as alias not only for objects / enums #KT-11933 Fixed 2016-08-12 17:42:33 +03:00
Mikhail Glukhikh e01e08402c Minor: convert to expression body is forbidden also for nested non-exhaustive whens 2016-08-12 17:41:33 +03:00
Mikhail Glukhikh 6a6c67dd5f Convert to expression body is forbidden for if without else #KT-12951 Fixed 2016-08-12 17:41:28 +03:00
shiraji 3e58283d7e Add quickfix for adding 'inline' to a function with reified generic #KT-6975 Fixed 2016-08-12 12:15:40 +03:00
Mikhail Glukhikh 6cf90cfc4e Fix for SOE in VarianceChecker #KT-13401 Fixed 2016-08-11 13:04:58 +03:00
Alexey Sedunov 4ab25bd0bb Move: Quote package name (if necessary) when moving declarations to new file
#KT-13385 Fixed
2016-08-10 11:45:39 +03:00
Alexey Sedunov b793252a5f Extract Function: Skip callable reference selectors
#KT-13218 Fixed
2016-08-10 11:45:38 +03:00
Alexey Sedunov 6e3d1d726e Create from Usage: Do not suggest creating annotations/enum classes for unresolved type parameter bounds
#KT-13364 Fixed
2016-08-10 11:45:37 +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 75573bd6a5 Quick Fixes: Use simple class name in "Change function return type" quickfix
#KT-12919 Fixed
2016-08-10 11:45:35 +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 59a714ca5c Presentation: Render function signature in RefactoringDescriptionLocation
#KT-12943 Fixed
2016-08-10 11:45:29 +03:00
Alexey Sedunov 892c8436f3 Introduce Variable: Do not suggest expressions without type
#KT-12922 Fixed
2016-08-10 11:45:28 +03:00
Nikolay Krasko 300e0acd27 Report RETURN_NOT_ALLOWED and RETURN_IN_FUNCTION_WITH_EXPRESSION_BODY only on the return with label (KT-13340)
#KT-13340 Fixed
2016-08-05 13:16:05 +03:00
Natalia Ukhorskaya 6a04cd39b2 Debugger: allow to evaluate kotlin expressions in java files
#KT-7549 Fixed

 If the context is inside PsiJavaFile, get list of all local variables available in current frame (this logic was removed in 29778311e8 01.12.2015 Drop unnecesary logic about additional context for lambda in debugger). For each variable create KtProperty inside top-level KtFunction in KtFile and set it as contextElement for KtCodeFragment. This file should have all imports from PsiJavaFile. We do not create properties on top-level because they will be highlighted as top-level vals/vars.
2016-08-03 17:51:49 +03:00
Natalia Ukhorskaya d823d6f4ab Debugger tests: mark objects using NodeDescriptorImpl.getMarkup. Primitive values cannot be marked. 2016-08-03 17:51:49 +03:00
shiraji 5fb79259f7 Intention / inspection for unnecessary lateinit #KT-13011 Fixed
(cherry picked from commit 45d82f1)
2016-08-03 09:31:03 +03:00
Mikhail Glukhikh d868410093 Single-expression string template is inspection for strings and intention otherwise #KT-13113 Fixed
(cherry picked from commit 266f9d0)
2016-08-02 15:31:16 +03:00
shiraji 9b8c55d823 KT-13113: Add inspection to detect single-expression string template
(cherry picked from squashed commits 49a3ef3 and 4c7a42a)
2016-08-02 15:30:23 +03:00
Nikolay Krasko a9ee10a8b7 Ignore intervals that has no mapping for origin line (KT-12896) 2016-08-02 01:05:08 +03:00
Nikolay Krasko 2dd7470cdc Better search for inlined strings in strata: there might me several file mappings to the same file (KT-12896)
#KT-12896 In Progress
2016-08-02 01:05:05 +03:00
Nikolay Krasko 5df7358dab Fix breakpoints in inline functions after dexing (KT-12896)
#KT-12896 In Progress
2016-08-02 01:02:07 +03:00
Nikolay Krasko 64979ae190 Allow to step into inline functions while debugging Android app (KT-12896)
#KT-12896 In Progress
2016-08-02 01:02:07 +03:00
Mikhail Glukhikh 39090113e9 KT-13262 related: surround with null check is applicable now also for qualified calls with argument type mismatch
(cherry picked from commit 8f13c84)
2016-08-01 12:24:49 +03:00
Mikhail Glukhikh b7fd41844d Wrap with safe let call handles qualified calls correctly #KT-13262 Fixed
(cherry picked from commit 7044348)
2016-08-01 12:24:38 +03:00
Mikhail Glukhikh 77b7648f10 Build fix: replace call with comparison inspection test
(cherry picked from commit 7f6be5b)
2016-08-01 12:24:27 +03:00
Mikhail Glukhikh 475dc6541b Replace call with comparison inspection introduced #KT-11425 Fixed
(cherry picked from commit 042fc0d)
2016-08-01 12:24:14 +03:00
Mikhail Glukhikh fc13b25ca4 KT-11425: convert a.compareTo(b) to binary comparison if possible
(cherry picked from commit 7219904)
2016-08-01 12:23:19 +03:00
Mikhail Glukhikh f309021c9f KT-11425: convert !a.equals(b) to a != b
(cherry picked from commit 56c7786)
2016-08-01 12:23:07 +03:00
Mikhail Glukhikh 2850a7898d KT-11425: replace call with binary operator works now also with equals() and ==
(cherry picked from commit 5d47fdf)
2016-08-01 12:22:54 +03:00