JVM IR: extract JvmIrDeclarationOrigin

This commit is contained in:
Alexander Udalov
2023-02-27 13:24:08 +01:00
parent b1d109e7a3
commit b1ca9a0f05
4 changed files with 29 additions and 11 deletions
@@ -3,6 +3,8 @@
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
@file:Suppress("FunctionName")
package org.jetbrains.kotlin.resolve.jvm.diagnostics
import com.intellij.psi.PsiElement
@@ -17,7 +19,7 @@ enum class MemberKind { FIELD, METHOD }
data class RawSignature(val name: String, val desc: String, val kind: MemberKind)
class JvmDeclarationOrigin(
open class JvmDeclarationOrigin(
val originKind: JvmDeclarationOriginKind,
val element: PsiElement?,
val descriptor: DeclarationDescriptor?,
@@ -80,8 +82,5 @@ val CollectionStub = JvmDeclarationOrigin(COLLECTION_STUB, null, null)
fun AugmentedBuiltInApi(descriptor: CallableDescriptor): JvmDeclarationOrigin =
JvmDeclarationOrigin(AUGMENTED_BUILTIN_API, null, descriptor)
fun ErasedInlineClassOrigin(element: PsiElement?, descriptor: ClassDescriptor): JvmDeclarationOrigin =
JvmDeclarationOrigin(ERASED_INLINE_CLASS, element, descriptor)
fun UnboxMethodOfInlineClass(descriptor: FunctionDescriptor): JvmDeclarationOrigin =
JvmDeclarationOrigin(UNBOX_METHOD_OF_INLINE_CLASS, null, descriptor)