Reorganize TypeAttributeTranslatorExtension
This commit is contained in:
committed by
Dmitriy Novozhilov
parent
19bfc43bee
commit
374d287d08
@@ -10,7 +10,6 @@ dependencies {
|
||||
api(project(":core:util.runtime"))
|
||||
api(kotlinStdlib())
|
||||
api(project(":kotlin-annotations-jvm"))
|
||||
compileOnly(intellijCoreDep()) { includeJars("intellij-core") }
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
|
||||
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.types
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
|
||||
interface TypeAttributeTranslator {
|
||||
fun toAttributes(
|
||||
|
||||
+1
-21
@@ -5,23 +5,11 @@
|
||||
|
||||
package org.jetbrains.kotlin.types.extensions
|
||||
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.extensions.ProjectExtensionDescriptor
|
||||
import org.jetbrains.kotlin.types.*
|
||||
|
||||
interface TypeAttributeTranslatorExtension : TypeAttributeTranslator
|
||||
|
||||
class TypeAttributeTranslatorsForInjection(project: Project) {
|
||||
val translators: List<TypeAttributeTranslator> = TypeAttributeTranslators(project).translators
|
||||
}
|
||||
|
||||
class TypeAttributeTranslators private constructor(val translators: List<TypeAttributeTranslator>) {
|
||||
|
||||
constructor(project: Project) : this(getInstances(project) + DefaultTypeAttributeTranslator)
|
||||
|
||||
|
||||
class TypeAttributeTranslators(val translators: List<TypeAttributeTranslator>) {
|
||||
fun toAttributes(
|
||||
annotations: Annotations,
|
||||
typeConstructor: TypeConstructor,
|
||||
@@ -39,12 +27,4 @@ class TypeAttributeTranslators private constructor(val translators: List<TypeAtt
|
||||
}.flatten()
|
||||
return Annotations.create(translated)
|
||||
}
|
||||
|
||||
companion object :
|
||||
ProjectExtensionDescriptor<TypeAttributeTranslatorExtension>(
|
||||
"org.jetbrains.kotlin.extensions.typeAttribute",
|
||||
TypeAttributeTranslatorExtension::class.java
|
||||
) {
|
||||
val Default = TypeAttributeTranslators(listOf(DefaultTypeAttributeTranslator))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user