Commit Graph

399 Commits

Author SHA1 Message Date
Alexey Sedunov 238f99aa3d Override/Implement: Make return type non-nullable (platform collection case) when overriding Java method
#KT-13455 Fixed
2016-08-18 19:15:31 +03:00
Ilya Gorbunov afe1b7eab1 Allow to exclude specific types from packages imported by default. 2016-08-17 12:40:50 +03:00
Valentin Kipyatkov c50cf13611 KtExpression.analyzeInContext uses correct context when analyzing return's 2016-08-16 17:37:55 +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
Mikhail Glukhikh 6e391854a0 Data flow values refactoring: removed DataFlowValue.kind.isStable, renamed DataFlowValue.isPredictable -> DataFlowValue.isStable 2016-07-28 15:14:48 +03:00
Alexander Udalov 6baf3ae737 Minor, inline LexicalScope.Companion.empty 2016-07-22 11:05:19 +03:00
Stanislav Erokhin 6556cde329 Introduce new type checker. 2016-07-21 16:07:16 +03:00
Stanislav Erokhin 8193032ffb Refactoring. Separate KotlinTypeChecker to interface & Impl class. 2016-07-21 16:07:14 +03:00
Alexey Sedunov ae06f01c95 Create from Usage: Approximate unresolvable types
#KT-7722 Fixed
(cherry picked from commit 917cd22)
2016-07-20 16:36:12 +03:00
Alexey Sedunov 130e4fb745 Introduce Type Alias
#KT-12902 Fixed
2016-07-20 11:46:59 +03:00
Valentin Kipyatkov e05aa41bbc Completion and import popup for bound callable references 2016-07-19 20:35:31 +03:00
Dmitry Jemerov 88fe6680fa use QualifiedNameResolver for resolving links in KDoc
#KT-10398 Fixed
2016-07-07 19:27:45 +02:00
Valentin Kipyatkov 5e48b7349e KT-12803 Unused import when class is used in method reference
#KT-12803 Fixed
2016-07-04 20:49:40 +03:00
Alexey Sedunov 77b0bb9849 Rename: Implement Rename conflict analysis for properties. Qualify property references to resove rename conflicts when possible
#KT-8732 Fixed
 #KT-12543 Fixed
(cherry picked from commit e23029d)
2016-06-28 15:06:49 +03:00
Stanislav Erokhin a6da15f8e2 Minor. remove several methods from TypeUtils 2016-06-09 12:58:02 +03:00
Stanislav Erokhin 1d9ca06b96 Remake KotlinTypes. 2016-06-09 12:57:59 +03:00
Stanislav Erokhin 1eaefa7fed Refactoring. Remove type capability Flexibility. 2016-06-09 12:57:50 +03:00
Stanislav Erokhin 957bae18be Refactoring. Move flexible type creation to KotlinTypeFactory. 2016-06-09 12:57:44 +03:00
Stanislav Erokhin 3a451744c5 Introduce KotlinTypeFactory 2016-06-09 12:57:43 +03:00
Alexander Udalov ca76e4d426 Support new double colon expressions in IDE code 2016-05-26 22:22:41 +03:00
Stanislav Erokhin 4b9aac6318 Replace not debug usages of DescriptorRenderer.DEBUG_TEXT to DescriptorRenderer.FQ_NAMES_IN_TYPES. 2016-05-25 16:31:34 +03:00
Pavel V. Talanov 4ec4d6ec66 implicitReceiversUtils: Script descriptors are implicit receivers
This fixes completion in repl
2016-05-24 15:42:02 +03:00
Valentin Kipyatkov 97ad0d5c86 KT-12124 No code completion for a java property in a specific position
#KT-12124 Fixed
2016-05-14 12:19:41 +03:00
Valentin Kipyatkov f6c8ac70fc Moved method getSmartCastVariantsWithLessSpecificExcluded() into IDE 2016-05-14 12:19:41 +03:00
Mikhail Glukhikh 733f3e8025 Code cleanup: type parameters can have in / out variance 2016-05-13 17:57:02 +03:00
Dmitry Jemerov 42ba14328c move KDoc-related logic shared between IDEA and Dokka to ide-common module 2016-05-10 15:00:15 +02:00
Mikhail Zarechenskiy 69b4837830 Move part of code that related to 'Optimize imports' action to ide-common module 2016-04-26 20:46:06 +03:00
Valentin Kipyatkov 6bdf3622ed KT-11890 Completion for callable references does not propose static Java members
#KT-11890 Fixed
2016-04-19 15:22:05 +03:00
Stanislav Erokhin 516d4df834 Refactoring. Remove isSafeCall from ResolvedCall. 2016-04-06 13:55:35 +03:00
Valentin Kipyatkov f85de3aac7 Added better way to construct FuzzyType 2016-04-05 19:33:05 +03:00
Valentin Kipyatkov 24764ed865 Checking for conflicting substitutors in completion after "by" 2016-04-05 19:33:04 +03:00
Valentin Kipyatkov 7b4f26d1b5 Minor changes on code review 2016-04-05 19:33:00 +03:00
Valentin Kipyatkov 6fa230311c Show substituted type arguments for type instantiation items 2016-04-05 19:32:57 +03:00
Valentin Kipyatkov ba6accd5f9 Correct substitutions for smart completion after "by" and "in" 2016-04-05 19:32:55 +03:00
Valentin Kipyatkov 40e69318b8 Renames + parameter to receiver 2016-03-30 15:58:08 +03:00
Pavel V. Talanov c7cb596f74 Rename: NameShortness -> ClassifierNamePolicy 2016-02-26 14:45:05 +03:00
Stanislav Erokhin f130de2468 Remove scope from Qualifier 2016-02-24 19:33:10 +03:00
Stanislav Erokhin 8c5339cccf Minor. Remove class ClassifierQualifier and create special ClassValueReceiver 2016-02-24 19:33:09 +03:00
Stanislav Erokhin 1ef4a958fd Minor. removed call checked from ResolutionContext. 2016-02-24 19:33:07 +03:00
Valentin Kipyatkov ce8e2d7a65 Added better diagnostic for EA-75805 2016-02-05 16:29:58 +03:00
Ilya Gorbunov 744a7a83f7 Cleanup RC deprecations in compiler and plugin. 2016-01-27 18:34:30 +03:00
Dmitry Petrov 9db3440e72 Fix type inference issues for 'if' and 'when'.
Use 'expectedType' (when present) as an explicit type argument for a special construct call.
Unfortunately, this approach can't be used for elvis due to other elvis-related inference hacks.
Fixes KT-10807, KT-10811.
This also affects KT-6189: now we can infer proper type for 'if'.

If type inference for special call failed, and we found no type errors in sub-expressions,
report TYPE_INFERENCE_FAILED_ON_SPECIAL_CONSTRUCT error.
This (and the hack above) fixes KT-10809: code no longer compiles.
2016-01-27 17:07:20 +03:00
Stanislav Erokhin f710ba88f8 Minor. Removed TypeParameterDescriptor#getLowerBounds 2016-01-22 22:09:33 +03:00
Dmitry Petrov 55b7e4bbf0 Ignore special resolved calls for 'when' in PSI unifier. 2016-01-22 10:41:56 +03:00
Nikolay Krasko 10648f44ac Do not auto-import convention methods without 'operator' modifier (KT-10212)
#KT-10212 Fixed
2016-01-21 17:45:51 +03:00
Valentin Kipyatkov a1d760fc36 KT-10631 Consider creating a synthetic property even when the setter returns 'this'
#KT-10631 Fixed
2016-01-19 15:57:20 +03:00
Valentin Kipyatkov 5a079defc7 "Rename on import" hides importing of the same symbol by other imports with the original name 2016-01-14 17:05:28 +03:00
Alexey Sedunov 1d9bafe196 PSI Unifier: Fix matching of this-expressions
#KT-8293 Fixed
2016-01-14 13:55:10 +03:00
Mikhail Zarechenskiy 29af6586f2 Get rid of ContainerUtil usages in ide-common 2016-01-14 12:06:52 +03:00
Mikhail Zarechenskiy dd11fa9320 Move logic related to expression occurrence searching to ide-common 2016-01-14 12:06:50 +03:00