[FIR] Add extracting @Exact and @NoInfer attributes from annotations

(cherry picked from commit e4c8c14e3e)
This commit is contained in:
Dmitriy Novozhilov
2020-06-04 12:57:51 +03:00
parent 7ab3dd04a0
commit de1b5cd056
3 changed files with 31 additions and 5 deletions
@@ -5,10 +5,15 @@
package org.jetbrains.kotlin.fir.types
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import kotlin.reflect.KClass
object CompilerConeAttributes {
object Exact : ConeAttribute<Exact>() {
val ANNOTATION_CLASS_ID = ClassId(FqName("kotlin.internal"), Name.identifier("Exact"))
override fun union(other: Exact?): Exact? = null
override fun intersect(other: Exact?): Exact? = null
override fun isSubtypeOf(other: Exact?): Boolean = true
@@ -17,6 +22,8 @@ object CompilerConeAttributes {
}
object NoInfer : ConeAttribute<NoInfer>() {
val ANNOTATION_CLASS_ID = ClassId(FqName("kotlin.internal"), Name.identifier("NoInfer"))
override fun union(other: NoInfer?): NoInfer? = null
override fun intersect(other: NoInfer?): NoInfer? = null
override fun isSubtypeOf(other: NoInfer?): Boolean = true