fixup! [Analysis API] implement an API to get a substitution based on a inheritance relationship between classes
This commit is contained in:
committed by
Space Team
parent
8f6b3d37b9
commit
9dcd142f0d
+6
@@ -58,6 +58,12 @@ public class FirIdeDependentAnalysisSourceModuleCreateInheritanceTypeSubstitutor
|
||||
runTest("analysis/analysis-api/testData/components/substitutorProvider/createInheritanceTypeSubstitutor/cycle.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("diamond.kt")
|
||||
public void testDiamond() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/substitutorProvider/createInheritanceTypeSubstitutor/diamond.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("directComplexSubstitution.kt")
|
||||
public void testDirectComplexSubstitution() throws Exception {
|
||||
|
||||
+6
@@ -58,6 +58,12 @@ public class FirIdeNormalAnalysisSourceModuleCreateInheritanceTypeSubstitutorTes
|
||||
runTest("analysis/analysis-api/testData/components/substitutorProvider/createInheritanceTypeSubstitutor/cycle.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("diamond.kt")
|
||||
public void testDiamond() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/substitutorProvider/createInheritanceTypeSubstitutor/diamond.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("directComplexSubstitution.kt")
|
||||
public void testDirectComplexSubstitution() throws Exception {
|
||||
|
||||
+6
@@ -58,6 +58,12 @@ public class FirStandaloneNormalAnalysisSourceModuleCreateInheritanceTypeSubstit
|
||||
runTest("analysis/analysis-api/testData/components/substitutorProvider/createInheritanceTypeSubstitutor/cycle.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("diamond.kt")
|
||||
public void testDiamond() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/substitutorProvider/createInheritanceTypeSubstitutor/diamond.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("directComplexSubstitution.kt")
|
||||
public void testDirectComplexSubstitution() throws Exception {
|
||||
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// WITH_STDLIB
|
||||
|
||||
interface A<caret_base>A<T, X> : BB<T, X>, CC<T, X>
|
||||
|
||||
interface BB<K, I> : DD<K, I>
|
||||
interface CC<E, U> : DD<E, U>
|
||||
|
||||
interface D<caret_super>D<M, N> {
|
||||
fun foo(): Pair<M, N>
|
||||
}
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Substitutor: <map substitutor: {M = K, N = I}> then <map substitutor: {K = T, I = X}>
|
||||
Substituted callables:
|
||||
foo(): Pair<T, X>
|
||||
Reference in New Issue
Block a user