Kapt: Ignore imports for enum entries on import conversion (KT-28220)
This commit is contained in:
+3
-1
@@ -264,10 +264,12 @@ class ClassFileToSourceStubConverter(val kaptContext: KaptContextForStubGenerati
|
|||||||
}
|
}
|
||||||
|
|
||||||
val isCallableImport = importedReference is CallableDescriptor
|
val isCallableImport = importedReference is CallableDescriptor
|
||||||
|
val isEnumEntry = (importedReference as? ClassDescriptor)?.kind == ClassKind.ENUM_ENTRY
|
||||||
val isAllUnderClassifierImport = importDirective.isAllUnder && importedReference is ClassifierDescriptor
|
val isAllUnderClassifierImport = importDirective.isAllUnder && importedReference is ClassifierDescriptor
|
||||||
|
|
||||||
if (isCallableImport || isAllUnderClassifierImport)
|
if (isCallableImport || isEnumEntry || isAllUnderClassifierImport) {
|
||||||
continue@loop
|
continue@loop
|
||||||
|
}
|
||||||
|
|
||||||
val importedExpr = treeMaker.FqName(importedFqName.asString())
|
val importedExpr = treeMaker.FqName(importedFqName.asString())
|
||||||
|
|
||||||
|
|||||||
+5
@@ -89,6 +89,11 @@ public class ClassFileToSourceStubConverterTestGenerated extends AbstractClassFi
|
|||||||
runTest("plugins/kapt3/kapt3-compiler/testData/converter/defaultImpls.kt");
|
runTest("plugins/kapt3/kapt3-compiler/testData/converter/defaultImpls.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("enumImports.kt")
|
||||||
|
public void testEnumImports() throws Exception {
|
||||||
|
runTest("plugins/kapt3/kapt3-compiler/testData/converter/enumImports.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("enums.kt")
|
@TestMetadata("enums.kt")
|
||||||
public void testEnums() throws Exception {
|
public void testEnums() throws Exception {
|
||||||
runTest("plugins/kapt3/kapt3-compiler/testData/converter/enums.kt");
|
runTest("plugins/kapt3/kapt3-compiler/testData/converter/enums.kt");
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.concurrent.TimeUnit.MICROSECONDS;
|
|
||||||
import a.b.ABC;
|
import a.b.ABC;
|
||||||
|
|
||||||
@kotlin.Metadata()
|
@kotlin.Metadata()
|
||||||
@@ -90,7 +89,6 @@ public final class Test {
|
|||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.concurrent.TimeUnit.MICROSECONDS;
|
|
||||||
import a.b.ABC;
|
import a.b.ABC;
|
||||||
|
|
||||||
@kotlin.Metadata()
|
@kotlin.Metadata()
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
// CORRECT_ERROR_TYPES
|
||||||
|
|
||||||
|
package kapt
|
||||||
|
|
||||||
|
import kapt.Options.A
|
||||||
|
import kapt.Options.B
|
||||||
|
import kapt.Options.C
|
||||||
|
import kotlin.annotation.Repeatable
|
||||||
|
|
||||||
|
enum class Options {
|
||||||
|
A, B, C
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
package kapt;
|
||||||
|
|
||||||
|
import kotlin.annotation.Repeatable;
|
||||||
|
|
||||||
|
@kotlin.Metadata()
|
||||||
|
public enum Options {
|
||||||
|
/*public static final*/ A /* = new Options() */,
|
||||||
|
/*public static final*/ B /* = new Options() */,
|
||||||
|
/*public static final*/ C /* = new Options() */;
|
||||||
|
|
||||||
|
Options() {
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,7 +1,6 @@
|
|||||||
import java.util.concurrent.*;
|
import java.util.concurrent.*;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.concurrent.TimeUnit.MICROSECONDS;
|
|
||||||
|
|
||||||
@kotlin.Metadata()
|
@kotlin.Metadata()
|
||||||
public final class ImportsForErrorTypesKt {
|
public final class ImportsForErrorTypesKt {
|
||||||
|
|||||||
Reference in New Issue
Block a user