Commit Graph

7 Commits

Author SHA1 Message Date
Alexey Sedunov bdc908d45f Fix search of package-level function/property usages in Java code 2013-10-15 18:43:57 +04:00
Alexey Sedunov c93d35ad57 Use KotlinCallHierarchyNodeDescriptor for Kotlin declarations only 2013-09-27 19:20:46 +04:00
Alexey Sedunov 5b7881f40c Call Hierarchy: Add support of local declarations 2013-09-27 19:20:45 +04:00
Alexey Sedunov 41ea7da1e3 Implement call hierarchy 2013-09-27 19:20:44 +04:00
Natalia.Ukhorskaya 221df82c01 Build class hierarchy for classes from BuiltIns 2013-03-28 15:25:28 +04:00
Andrey Breslav 1ad0cad020 Incomplete analysis results are available for light class generation
If we have the following classes

 class A // Kotlin
 class B extends A {} // Java
 class C : B() // Kotlin

 The analysis runs into infinite recursion, because C needs all members of B (to compute overrides),
 and B needs all members of A, and A is not available from KotlinCacheManager.getDeclarationsFromProject() -- it is being computed right now,
 so the analysis runs again...

 Our workaround is:
  * when analysis starts put its trace into user data on the project
  * when a light class is about to generate a stub, it requests a trace, and if there is such an incomplete trace, it is returned
  * the logic of TopDownAnalyzer that works in descending order (down the class hierarchy) guarantees that all the superclasses are already processed
2013-03-28 11:29:53 +04:00
Natalia.Ukhorskaya 9091becbea Implement Class Hierarchy View
#KT-3419
2013-03-25 17:39:57 +04:00