Nikolay Krasko
bc7ccbc39b
Fix stub mismatch for top level declaration with JvmPackageName (KT-21831)
...
ClassId stores jvm name and it differs from kotlin name in that case.
#KT-21831 Fixed
2018-03-14 21:16:58 +03:00
Alexander Udalov
3f3e05a9d2
Move essential metadata-related classes to 'metadata' and 'metadata.jvm'
2018-03-14 12:25:16 +01:00
Alexander Udalov
88dea9aa70
Move NameResolver to module 'metadata' and J2K
...
Also move NameResolverImpl to 'metadata' and JvmNameResolver to
'metadata.jvm'
2018-03-14 12:25:16 +01:00
Alexander Udalov
0ba42850f9
Drop ClassData and PackageData, rename ClassDataWithSource -> ClassData
...
Use pairs in JvmProtoBufUtil for simplicity
2018-03-14 12:25:15 +01:00
Alexander Udalov
b07c6086cd
Remove dependency of NameResolverImpl on FqName
...
Remove AbstractJsProtoComparisonTest.getProtoData in favor of
(apparently copy-pasted) IncrementalJsCache.getProtoData
2018-03-14 12:25:12 +01:00
Alexander Udalov
4f81e572c7
Make NameResolver.getName extension instead of member
...
To get rid of dependency of NameResolver on Name
2018-03-14 12:25:11 +01:00
Alexander Udalov
e31f286444
Make NameResolver.getClassId extension instead of member
...
To get rid of dependency of NameResolver on ClassId
2018-03-14 12:25:11 +01:00
Alexander Udalov
27ad4f7d5d
Move ProtoBuf classes to package org.jetbrains.kotlin.metadata
2018-03-14 12:25:10 +01:00
Pavel V. Talanov
32516a3f33
Refactor: split *LightClassGenerationSupport into separate files
...
Move cli binding trace implementation to top level
2018-03-12 12:05:05 +01:00
Pavel V. Talanov
f421181e16
Split LightClassGenerationSupport into separate entities
...
LightClassGenerationSupport:
Includes utilities related to generating light classes
Primary client of this service are KtLight* implementation classes
KotlinAsJavaSupport:
Provides APIs to transform kotlin code into Psi* entities
Primary client of this service is JavaElementFinder
2018-03-12 12:04:59 +01:00
Alexey Sedunov
d9aa1796cd
MPP: Support multiple 'expectedBy' dependencies for single module
...
#KT-22865 Fixed
2018-03-07 18:34:03 +03:00
Dmitry Jemerov
81adbcb7e6
Support for implicit package prefixes
...
Now, if all Kotlin files directly under a source root have the same
package statement, it's used as an implicit package prefix for that
source root. It's honored by the package name/directory name mismatch
inspection and by new file creation actions;
support in refactorings is TODO.
#KT-17306 Fixed
2018-03-07 10:31:57 +01:00
Alexey Sedunov
5bff4b9f39
Rename: Allow deleting name of companion object
...
#KT-20178 Fixed
2018-03-06 15:15:42 +03:00
Alexey Sedunov
d690aedb89
References: Fix resolution of delegate reference for local variables
...
#KT-22229 Fixed
2018-03-06 15:15:40 +03:00
Pavel V. Talanov
d2b90b84f8
KotlinFileStubForIde: save full facadeFqName
...
Prefix is not necessarily same as packageFqName since JvmPackageName was introduced
2018-03-06 12:05:53 +01:00
Nikolay Krasko
9e061555af
Use anchor for element to avoid working with invalid element (KT-22631)
...
Element in constructor can be invalidated when dumb mode begins/ends.
Working with invalid elements can produce nodes without icons and bad
presentation.
#KT-22631 Fixed
2018-03-06 13:04:26 +03:00
Nikolay Krasko
bb9933a8f9
Reformat: structureView package
2018-03-06 13:04:25 +03:00
Pavel V. Talanov
6c4537accc
Create InvalidLightClassDataHolder for expect classes
...
This fixes an exception from duplicateJvmSignature reporter
Fixes "QuickFixTestGenerated$Override.testDontOfferToImplementMembersForExpectedClass" on teamcity
2018-03-05 18:07:38 +01:00
Nikolay Krasko
90802f2d7c
Refactoring: remove ModuleResolverProvider, inline createModuleResolverProvider
2018-03-05 15:20:53 +03:00
Nikolay Krasko
de68607d5f
Refactoring: move JavaResolveExtension.kt to util package
2018-03-05 15:20:53 +03:00
Alexey Sedunov
e63e48933d
Move: Add import for top-level declarations moved to the default package
...
#KT-22661 Fixed
2018-02-28 14:03:42 +03:00
Nicolay Mitropolsky
2f6fb4091b
making LambdaArgument methods nullable
...
overridden `LambdaArgument.getArgumentExpression` removed because it is already nullable in parent
#EA-117013
2018-02-28 12:13:12 +03:00
Nikolay Krasko
9026582352
Minor: rename file
2018-02-26 18:42:58 +03:00
Nikolay Krasko
c5fc195754
Refactoring: move collectAllModuleInfosFromIdeaModel function
2018-02-26 18:42:58 +03:00
Nikolay Krasko
60af145170
Refactoring: move package ../caches/resolve/lightClasses -> ../caches/lightClasses
2018-02-26 18:42:58 +03:00
Nikolay Krasko
08a46c1396
Refactoring: move idea source modules classes to caches/project package
2018-02-26 18:42:58 +03:00
Nikolay Krasko
287ad512fb
Refactoring: extract project structure caches to separate package
2018-02-26 18:42:57 +03:00
Nikolay Krasko
a67ae0bf9f
Refactoring: remove defaults values
2018-02-26 18:42:57 +03:00
Nikolay Krasko
9b8e550f3b
Refactoring: move util files
2018-02-26 18:42:57 +03:00
Nikolay Krasko
931dec9cd8
Refactoring: move MapPsiToAsmDesc.kt to lightClasses package
2018-02-26 18:42:57 +03:00
Nikolay Krasko
47f4c79204
Reformat caches package
2018-02-26 18:42:57 +03:00
Pavel V. Talanov
10f6d65e03
IdeStubIndexService: do not index annotations without name
...
Fixes NPE after changes introduced in 8f8cbfcfa5
2018-02-22 20:29:00 +01:00
Nicolay Mitropolsky
3a609a9472
Assertions to catch EA-114080
2018-02-22 12:51:50 +03:00
Natalia Selezneva
de76d75f03
Drop caches for synthetic files when dependencies changed
2018-02-22 10:00:15 +03:00
Natalia Selezneva
63aeaf9cd5
Do not highlight kts files outside source roots if not all definitions are initialized
...
^KT-20521 Fixed
^KT-21420 Fixed
2018-02-22 09:59:43 +03:00
Alexey Sedunov
17e64ebae0
Move: Fix processing of callable references to nested Java classes and static methods
...
#KT-17827 Fixed
2018-02-21 13:21:20 +03:00
Alexey Sedunov
441f88c144
Move: Fix processing of callable references to nested Kotlin classes
...
#KT-17827 In Progress
2018-02-21 13:21:19 +03:00
Alexey Sedunov
27d4593fc4
Move: Fix lengthening of qualified type references
...
KT-14519 Fixed
2018-02-21 13:21:18 +03:00
Mikhail Glukhikh
84993ec3a0
Resolution API: introduce and use KtElement.resolveToCall()
2018-02-20 20:25:42 +03:00
Mikhail Glukhikh
513376e5f0
Introduce KtNamedFunction.resolveToDescriptorIfAny()
2018-02-20 20:25:42 +03:00
Mikhail Glukhikh
5848bc9a44
Introduce KtClassOrObject.resolveToDescriptorIfAny()
2018-02-20 20:25:42 +03:00
Mikhail Glukhikh
bd0cbb716c
Rename: analyzeWithDeclarations --> analyzeWithContent()
2018-02-20 20:25:41 +03:00
Mikhail Glukhikh
f6513cd17e
Introduce resolveToParameterDescriptorIfAny(), drop reified version
2018-02-20 20:25:41 +03:00
Mikhail Glukhikh
7a1b3cd224
Introduce & use resolveToDescriptorIfAny<DescriptorType>
...
This allows to omit casts after resolveToDescriptorIfAny() call,
get different descriptors for different receivers (in future),
distinguish parameter / property situation for primary constructor
2018-02-20 20:25:41 +03:00
Mikhail Glukhikh
cd1745d354
Light classes: analyzeFully() --> analyzeWithDeclarations()
2018-02-20 20:25:41 +03:00
Mikhail Glukhikh
eabc7c9ba8
Replace some KtDeclaration.analyze() with resolveToDescriptorIfAny()
...
Also, enhance comment on KtElement.analyze()
2018-02-20 20:25:40 +03:00
Mikhail Glukhikh
88b8652ed2
J2K: convert + get rid of analyzeFully (3 files)
2018-02-20 20:25:40 +03:00
Mikhail Glukhikh
50ce8d68bf
J2K: rename *.java --> *.kt (3 files)
2018-02-20 20:25:40 +03:00
Mikhail Glukhikh
2038a5567d
ResolveElementCache: remove dead branch
2018-02-20 20:25:38 +03:00
Mikhail Glukhikh
52166646bb
Reformat: ResolveElementCache
2018-02-20 20:25:37 +03:00