[Analysis API FIR] fix KDoc reference resolve for aliased imports
This commit is contained in:
+16
@@ -1049,6 +1049,22 @@ public class Fe10IdeNormalAnalysisSourceModuleReferenceResolveTestGenerated exte
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/imports")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
public class Imports {
|
||||
@Test
|
||||
public void testAllFilesPresentInImports() throws Exception {
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc/imports"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("TypeAliasedImport.kt")
|
||||
public void testTypeAliasedImport() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/referenceResolve/kDoc/imports/TypeAliasedImport.kt");
|
||||
}
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/localContext")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
|
||||
@@ -20,6 +20,7 @@ internal class NonStarImport(
|
||||
override val relativeClassName: FqName?,
|
||||
override val resolvedClassId: ClassId?,
|
||||
val callableName: Name?,
|
||||
val aliasName: Name?,
|
||||
) : Import()
|
||||
|
||||
internal class StarImport(
|
||||
|
||||
+4
-3
@@ -38,7 +38,8 @@ internal class KtFirNonStarImportingScope(
|
||||
import.packageFqName,
|
||||
importedClassId?.relativeClassName,
|
||||
importedClassId,
|
||||
import.importedName
|
||||
import.importedName,
|
||||
import.aliasName,
|
||||
).let(::add)
|
||||
}
|
||||
}
|
||||
@@ -60,10 +61,10 @@ internal class KtFirNonStarImportingScope(
|
||||
override fun getConstructors(): Sequence<KtConstructorSymbol> = withValidityAssertion { emptySequence() }
|
||||
|
||||
override fun getPossibleCallableNames(): Set<Name> = withValidityAssertion {
|
||||
imports.mapNotNullTo(hashSetOf()) { it.callableName }
|
||||
imports.flatMapTo(hashSetOf()) { listOfNotNull(it.callableName, it.aliasName) }
|
||||
}
|
||||
|
||||
override fun getPossibleClassifierNames(): Set<Name> = withValidityAssertion {
|
||||
imports.mapNotNullTo((hashSetOf())) { it.relativeClassName?.shortName() }
|
||||
imports.flatMapTo((hashSetOf())) { listOfNotNull(it.relativeClassName?.shortName(), it.aliasName) }
|
||||
}
|
||||
}
|
||||
|
||||
+16
@@ -1049,6 +1049,22 @@ public class FirIdeDependentAnalysisSourceModuleReferenceResolveTestGenerated ex
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/imports")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
public class Imports {
|
||||
@Test
|
||||
public void testAllFilesPresentInImports() throws Exception {
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc/imports"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("TypeAliasedImport.kt")
|
||||
public void testTypeAliasedImport() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/referenceResolve/kDoc/imports/TypeAliasedImport.kt");
|
||||
}
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/localContext")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
|
||||
+16
@@ -939,6 +939,22 @@ public class FirIdeNormalAnalysisLibrarySourceModuleReferenceResolveTestGenerate
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc"), Pattern.compile("^([^.]+)\\.kt$"), null, true, "withErrors");
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/imports")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
public class Imports {
|
||||
@Test
|
||||
public void testAllFilesPresentInImports() throws Exception {
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc/imports"), Pattern.compile("^([^.]+)\\.kt$"), null, true, "withErrors");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("TypeAliasedImport.kt")
|
||||
public void testTypeAliasedImport() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/referenceResolve/kDoc/imports/TypeAliasedImport.kt");
|
||||
}
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/localContext")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
|
||||
+16
@@ -1049,6 +1049,22 @@ public class FirIdeNormalAnalysisSourceModuleReferenceResolveTestGenerated exten
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/imports")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
public class Imports {
|
||||
@Test
|
||||
public void testAllFilesPresentInImports() throws Exception {
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc/imports"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("TypeAliasedImport.kt")
|
||||
public void testTypeAliasedImport() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/referenceResolve/kDoc/imports/TypeAliasedImport.kt");
|
||||
}
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/localContext")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
|
||||
+16
@@ -1049,6 +1049,22 @@ public class FirStandaloneNormalAnalysisSourceModuleReferenceResolveTestGenerate
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/imports")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
public class Imports {
|
||||
@Test
|
||||
public void testAllFilesPresentInImports() throws Exception {
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/kDoc/imports"), Pattern.compile("^([^.]+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("TypeAliasedImport.kt")
|
||||
public void testTypeAliasedImport() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/referenceResolve/kDoc/imports/TypeAliasedImport.kt");
|
||||
}
|
||||
}
|
||||
|
||||
@Nested
|
||||
@TestMetadata("analysis/analysis-api/testData/referenceResolve/kDoc/localContext")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
import kotlin.collections.listOf as lst
|
||||
|
||||
/**
|
||||
* [ls<caret>t]
|
||||
*/
|
||||
fun x() {
|
||||
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
Resolved to:
|
||||
0: (in kotlin.collections) fun <T> listOf(element: T): kotlin.collections.List<T>
|
||||
1: (in kotlin.collections) fun <T> listOf(vararg elements: T): kotlin.collections.List<T>
|
||||
2: (in kotlin.collections) inline fun <T> listOf(): kotlin.collections.List<T>
|
||||
Reference in New Issue
Block a user