Cleanup modules descriptors.jvm, descriptors.runtime

Fix warnings and inspections
This commit is contained in:
Alexander Udalov
2019-03-15 15:38:30 +01:00
parent b89d7029b2
commit 29d32b213e
39 changed files with 93 additions and 105 deletions
@@ -19,7 +19,6 @@ package kotlin.reflect.jvm.internal.components
import org.jetbrains.kotlin.load.java.JavaClassFinder
import org.jetbrains.kotlin.load.java.structure.JavaClass
import org.jetbrains.kotlin.load.java.structure.JavaPackage
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName
import kotlin.reflect.jvm.internal.structure.ReflectJavaClass
import kotlin.reflect.jvm.internal.structure.ReflectJavaPackage
@@ -22,7 +22,6 @@ import org.jetbrains.kotlin.load.kotlin.KotlinJvmBinaryClass
import org.jetbrains.kotlin.load.kotlin.header.KotlinClassHeader
import org.jetbrains.kotlin.load.kotlin.header.ReadKotlinClassHeaderAnnotationVisitor
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.resolve.constants.ClassLiteralValue
import org.jetbrains.kotlin.resolve.jvm.JvmPrimitiveType
@@ -234,17 +233,17 @@ private object ReflectClassStructure {
clazz.isArray -> {
val v = visitor.visitArray(name) ?: return
val componentType = clazz.componentType
if (componentType.isEnum) {
val enumClassId = componentType.classId
for (element in value as Array<*>) {
v.visitEnum(enumClassId, Name.identifier((element as Enum<*>).name))
when {
componentType.isEnum -> {
val enumClassId = componentType.classId
for (element in value as Array<*>) {
v.visitEnum(enumClassId, Name.identifier((element as Enum<*>).name))
}
}
} else if (componentType == Class::class.java) {
for (element in value as Array<*>) {
componentType == Class::class.java -> for (element in value as Array<*>) {
v.visitClassLiteral((element as Class<*>).classLiteralValue())
}
} else {
for (element in value as Array<*>) {
else -> for (element in value as Array<*>) {
v.visit(element)
}
}
@@ -45,7 +45,7 @@ class ReflectJavaArrayAnnotationArgument(
name: Name?,
private val values: Array<*>
) : ReflectJavaAnnotationArgument(name), JavaArrayAnnotationArgument {
override fun getElements() = values.map { ReflectJavaAnnotationArgument.create(it!!, null) }
override fun getElements() = values.map { create(it!!, null) }
}
class ReflectJavaEnumValueAnnotationArgument(
@@ -23,8 +23,8 @@ import java.lang.reflect.Type
class ReflectJavaArrayType(override val reflectType: Type) : ReflectJavaType(), JavaArrayType {
override val componentType: ReflectJavaType = with(reflectType) {
when {
this is GenericArrayType -> ReflectJavaType.create(genericComponentType)
this is Class<*> && isArray() -> ReflectJavaType.create(getComponentType())
this is GenericArrayType -> create(genericComponentType)
this is Class<*> && isArray() -> create(getComponentType())
else -> throw IllegalArgumentException("Not an array type (${reflectType::class.java}): $reflectType")
}
}
@@ -21,6 +21,7 @@ import org.jetbrains.kotlin.load.java.structure.JavaClassifierType
import org.jetbrains.kotlin.load.java.structure.LightClassOriginKind
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import java.lang.reflect.Member
import java.lang.reflect.Method
import java.util.*
@@ -84,14 +85,14 @@ class ReflectJavaClass(
override val fields: List<ReflectJavaField>
get() = klass.declaredFields
.asSequence()
.filter { field -> !field.isSynthetic }
.filterNot(Member::isSynthetic)
.map(::ReflectJavaField)
.toList()
override val constructors: List<ReflectJavaConstructor>
get() = klass.declaredConstructors
.asSequence()
.filter { constructor -> !constructor.isSynthetic }
.filterNot(Member::isSynthetic)
.map(::ReflectJavaConstructor)
.toList()
@@ -47,7 +47,7 @@ class ReflectJavaClassifierType(public override val reflectType: Type) : Reflect
get() = with(reflectType) { this is Class<*> && getTypeParameters().isNotEmpty() }
override val typeArguments: List<JavaType>
get() = reflectType.parameterizedTypeArguments.map(ReflectJavaType.Factory::create)
get() = reflectType.parameterizedTypeArguments.map(Factory::create)
override val annotations: Collection<JavaAnnotation>
get() {
@@ -26,6 +26,6 @@ class ReflectJavaField(override val member: Field) : ReflectJavaMember(), JavaFi
override val type: ReflectJavaType
get() = ReflectJavaType.create(member.genericType)
override val initializerValue get() = null
override val initializerValue: Any? get() = null
override val hasConstantNotNullInitializer get() = false
}
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.load.java.structure.JavaModifierListOwner
import java.lang.reflect.Modifier
interface ReflectJavaModifierListOwner : JavaModifierListOwner {
/* protected // KT-3029 */ val modifiers: Int
val modifiers: Int
override val isAbstract: Boolean
get() = Modifier.isAbstract(modifiers)
@@ -37,7 +37,7 @@ class ReflectJavaPackage(override val fqName: FqName) : ReflectJavaElement(), Ja
// TODO: support it if possible
override val annotations get() = emptyList<JavaAnnotation>()
override fun findAnnotation(fqName: FqName) = null
override fun findAnnotation(fqName: FqName): JavaAnnotation? = null
override val isDeprecatedInJavaDoc: Boolean
get() = false
@@ -28,8 +28,8 @@ class ReflectJavaWildcardType(override val reflectType: WildcardType) : ReflectJ
throw UnsupportedOperationException("Wildcard types with many bounds are not yet supported: $reflectType")
}
return when {
lowerBounds.size == 1 -> ReflectJavaType.create(lowerBounds.single())
upperBounds.size == 1 -> upperBounds.single().let { ub -> if (ub != Any::class.java) ReflectJavaType.create(ub) else null }
lowerBounds.size == 1 -> create(lowerBounds.single())
upperBounds.size == 1 -> upperBounds.single().let { ub -> if (ub != Any::class.java) create(ub) else null }
else -> null
}
}
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.generators.tests.generator.testGroup
import org.jetbrains.kotlin.jvm.runtime.AbstractJvm8RuntimeDescriptorLoaderTest
import org.jetbrains.kotlin.jvm.runtime.AbstractJvmRuntimeDescriptorLoaderTest
fun main(args: Array<String>) {
fun main() {
System.setProperty("java.awt.headless", "true")
testGroup("core/descriptors.runtime/tests", "compiler/testData") {
@@ -127,7 +127,7 @@ abstract class AbstractJvmRuntimeDescriptorLoaderTest : TestCaseWithTmpdir() {
myTestRootDisposable, ConfigurationKind.ALL, jdkKind
)
for (root in environment.configuration.getList(CLIConfigurationKeys.CONTENT_ROOTS)) {
LOG.info("root: " + root.toString())
LOG.info("root: $root")
}
val ktFile = KotlinTestUtils.createFile(file.path, text, environment.project)
GenerationUtils.compileFileTo(ktFile, environment, tmpdir)
@@ -176,7 +176,7 @@ abstract class AbstractJvmRuntimeDescriptorLoaderTest : TestCaseWithTmpdir() {
private fun adaptJavaSource(text: String): String {
val typeAnnotations = arrayOf("NotNull", "Nullable", "ReadOnly", "Mutable")
val adaptedSource = typeAnnotations.fold(text) { text, annotation -> text.replace("@$annotation", "") }
val adaptedSource = typeAnnotations.fold(text) { result, annotation -> result.replace("@$annotation", "") }
if ("@Retention" !in adaptedSource) {
return adaptedSource.replace(
"@interface",
@@ -213,7 +213,7 @@ abstract class AbstractJvmRuntimeDescriptorLoaderTest : TestCaseWithTmpdir() {
override fun <R, D> accept(visitor: DeclarationDescriptorVisitor<R, D>, data: D): R =
visitor.visitPackageViewDescriptor(this, data)
override fun getContainingDeclaration() = null
override fun getContainingDeclaration(): PackageViewDescriptor? = null
override fun getOriginal() = throw UnsupportedOperationException()
override fun acceptVoid(visitor: DeclarationDescriptorVisitor<Void, Void>?) = throw UnsupportedOperationException()
override fun getName() = throw UnsupportedOperationException()