Commit Graph

142 Commits

Author SHA1 Message Date
Nikolay Krasko 0fa93d59c5 Get context for partial resolve if we have result for full analyze already 2015-05-07 20:14:12 +03:00
Alexander Udalov 890d18e7be Support external annotations in IDE when approximating flexible types 2015-04-29 01:09:36 +03:00
Alexander Udalov 43c11b2925 Merge CollectionClassMapping into JavaToKotlinClassMap 2015-04-24 02:09:05 +03:00
Evgeny Gerashchenko f5677d8424 Converted JetPsiUtil.getElementTextWithContext() to Kotlin extension function. 2015-04-22 14:10:00 +03:00
Mikhail Glukhikh 27625b04e1 Refactoring of JetTypeInfo / BindingContext. Loop data flow analysis corrected.
Now BindingContext includes expression type info instead of jump out possible, data flow info and expression type.
getType() was added into BindingContext, getType() and recordType() were added into BindingTrace.
JetTypeInfo now includes also jump possible flag and jump point data flow info.
Old TypeInfoWithJumpInfo deleted.
TypeInfoFactory introduced to create JetTypeInfo instances.
A pack of extra tests for break / continue in loops added.
2015-04-21 15:29:07 +03:00
Valentin Kipyatkov 3faf6cc3e8 Correct value passed as containingDeclarationOrModule to SmartCastUtils 2015-04-13 14:30:02 +03:00
Valentin Kipyatkov 723bf0ecf9 Minor 2015-04-13 14:30:02 +03:00
Alexey Sedunov da14222c4a Introduce Parameter: Do not apply to expressions of type Unit or Nothing 2015-04-10 21:57:07 +03:00
Valentin Kipyatkov 784b4a8aeb Minor code changes after code review 2015-04-02 10:17:00 +03:00
Valentin Kipyatkov c54541b269 Functions returning Nothing are indexed even when alias import is used 2015-04-02 10:16:59 +03:00
Valentin Kipyatkov 1789907740 No hardcoded nothing callables needed anymore 2015-04-02 10:16:59 +03:00
Valentin Kipyatkov 6a2cc66eb1 Got rid of isProbablyNothing in stubs + fixed exception on some files on indexing stubs 2015-04-02 10:10:31 +03:00
Valentin Kipyatkov fea57ecd2c Fixed incorrect PARTIAL resolve inside code fragments 2015-04-01 23:21:24 +03:00
Valentin Kipyatkov c99f3fd106 Refactoring code to be more Kotlin 2015-04-01 23:21:24 +03:00
Valentin Kipyatkov 3ff13ccf5d Converting ElementResolver to Kotlin (step 2) 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov 2637bf608a Converting ElementResolver to Kotlin (step 1) 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov cd18b16407 Partial body resolve: fixed for ! and parenthesis in conditions 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov f3799a0ce7 Partial body resolve correctly handles elvis operator 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov 176ba937ba Partial body resolve filter works more precisely for if-statements 2015-04-01 23:21:21 +03:00
Valentin Kipyatkov 7a414336c1 Do not run partial body resolve if full body resolve already cached 2015-04-01 23:21:21 +03:00
Valentin Kipyatkov 3b110f8ef8 KT-7194 No completion for member extension function inside itself
#KT-7194 Fixed
2015-04-01 17:46:10 +03:00
Alexey Sedunov eb594a2897 Extract Function: Approximate non-resolvable types with nearest resolvable supertype when possible
#KT-7120 Fixed
2015-04-01 13:41:26 +03:00
Denis Zharkov a4018d9eae Run "Add 'init' keyword in whole project" quickfix 2015-03-31 20:20:23 +03:00
Mikhail Glukhikh 9c1551bca9 Implementation of smart casts for public / protected immutable properties that are not open and used in the same module.
DataFlowValueFactory and its environment refactoring: containing declaration is added into factory functions
as an argument and used to determine identifier stability. A few minor fixes. #KT-5907 Fixed. #KT-4450 Fixed. #KT-4409 Fixed.

New tests for KT-4409, KT-4450, KT-5907 (public and protected value properties used from the same module or not,
open properties, variable properties, delegated properties, properties with non-default getter).
Public val test and KT-362 test changed accordingly.
2015-03-31 16:19:03 +03:00
Pavel V. Talanov ed218c473a Get rid of 'class object' usages in code and builtins
Replace some comments and library usages as well
2015-03-25 18:28:00 +03:00
Evgeny Gerashchenko 3ec6ffc906 KT-7007 Go to declaration doesn't work inside enum class
#KT-7007 fixed
2015-03-17 16:10:51 +03:00
Pavel V. Talanov 06916d98c6 default -> companion: replace all mentions of default and default object 2015-03-17 15:47:39 +03:00
Pavel V. Talanov 2a6facaef6 default -> companion: default object -> class object in project code, builtins and libs code 2015-03-17 15:46:48 +03:00
Nikolay Krasko 48ce8d5270 Add additional logging for context and element (EA-64785) 2015-03-16 20:16:26 +03:00
Denis Zharkov 50c8c6f68b Basic completion within secondary constructors
body and delegation call
2015-03-11 17:45:26 +03:00
Denis Zharkov 1555eec954 Secondary constructors delegation calls and body resolve 2015-03-11 17:45:23 +03:00
Pavel V. Talanov 9ecf95532e Replace 'class object' with default object in project code 2015-03-10 18:07:46 +03:00
Valentin Kipyatkov 793be62a81 More clear naming 2015-03-06 22:04:16 +03:00
Valentin Kipyatkov 234555bb33 Fixed KT-6890 No autocomplete for receiver methods and properties in extension property
#KT-6890 Fixed
2015-03-06 22:04:16 +03:00
Valentin Kipyatkov c5d21e1f45 Fixed KT-6673 Completion: no properties from outside class inside anonymous object
#KT-6673 Fixed
2015-03-06 22:04:15 +03:00
Andrey Breslav dcfa77c77d completeAnalysisNeeded() removed 2015-03-06 21:59:05 +03:00
Andrey Breslav bbb59773aa filesToAnalyzeCompletely removed 2015-03-06 21:59:05 +03:00
Alexey Sedunov a2a47d56fb Analyzer: Do no try to resolve anonymous initializer as declaration descriptor 2015-03-06 14:37:16 +03:00
Pavel V. Talanov 48fbce9582 Refactor: process mentions of class object
Rename usages that refer to "default object" concept now
Test data file names are left as is
2015-03-03 20:57:08 +03:00
Valentin Kipyatkov 27f5d71e4f Fixed bug in partial body resolve 2015-03-03 19:22:27 +03:00
Valentin Kipyatkov b2275ae424 Better equals in FuzzyType + do not need to treat not used parameters as free 2015-02-10 16:13:51 +03:00
Valentin Kipyatkov 6d06436c34 KT-6376 Smart completion should work after "in" and "!in"
#KT-6376 Fixed
2015-02-10 16:13:50 +03:00
Andrey Breslav fecf6f9fdf Star projection information preserved in substitutions
#KT-6700 Fixed
2015-02-02 19:52:01 +03:00
Svetlana Isakova 6511086034 Rename: PartialBodyResolveProvider -> StatementFilter 2015-01-30 13:33:37 +03:00
Alexander Udalov 5903b8c4a7 Reorder and optimize dependencies between modules and libraries
- drop 'kotlin-runtime' and other dependencies which are exported by
  other modules ('util' and 'util.runtime' in case of 'kotlin-runtime')
- make all Kotlin modules from the compiler depend on 'util' for clarity
- put 'util' and 'util.runtime' to the bottom of the list everywhere: when
  kotlin-runtime gets reflection, classes from core/ should have higher
  priority than their previous versions from kotlin-runtime.jar
2015-01-28 19:58:35 +03:00
Valentin Kipyatkov 929d6b885d Current package members to have less priority than explicit imports 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov 59f24020b2 Renames 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov 3caef82184 Big refactoring of imports resolve - preparing to change current package members priority 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov c915eb4eac KT-6566 Generate Override/Implement method does not work for locally declared classes
#KT-6566 Fixed
2015-01-14 20:59:23 +03:00
Alexander Udalov 17227bb4fe Rename org.jetbrains.kotlin.plugin -> org.jetbrains.kotlin.idea 2015-01-13 01:14:31 +03:00