IrTypeUtils: take name directly from IrDeclaration
This commit is contained in:
@@ -8,10 +8,7 @@ package org.jetbrains.kotlin.ir.util
|
|||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns.FQ_NAMES
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns.FQ_NAMES
|
||||||
import org.jetbrains.kotlin.builtins.UnsignedTypes
|
import org.jetbrains.kotlin.builtins.UnsignedTypes
|
||||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||||
import org.jetbrains.kotlin.ir.declarations.IrClass
|
import org.jetbrains.kotlin.ir.declarations.*
|
||||||
import org.jetbrains.kotlin.ir.declarations.IrDeclaration
|
|
||||||
import org.jetbrains.kotlin.ir.declarations.IrPackageFragment
|
|
||||||
import org.jetbrains.kotlin.ir.declarations.IrTypeParameter
|
|
||||||
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
|
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
|
||||||
import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol
|
import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol
|
||||||
import org.jetbrains.kotlin.ir.types.*
|
import org.jetbrains.kotlin.ir.types.*
|
||||||
@@ -33,9 +30,9 @@ fun IrType.isKSuspendFunction(): Boolean = this.isClassWithNamePrefix("KSuspendF
|
|||||||
|
|
||||||
private fun IrType.isClassWithNamePrefix(prefix: String, packageFqName: FqName): Boolean {
|
private fun IrType.isClassWithNamePrefix(prefix: String, packageFqName: FqName): Boolean {
|
||||||
val classifier = classifierOrNull ?: return false
|
val classifier = classifierOrNull ?: return false
|
||||||
val name = classifier.descriptor.name.asString()
|
val declaration = classifier.owner as IrDeclarationWithName
|
||||||
|
val name = declaration.name.asString()
|
||||||
if (!name.startsWith(prefix)) return false
|
if (!name.startsWith(prefix)) return false
|
||||||
val declaration = classifier.owner as IrDeclaration
|
|
||||||
val parent = declaration.parent as? IrPackageFragment ?: return false
|
val parent = declaration.parent as? IrPackageFragment ?: return false
|
||||||
|
|
||||||
return parent.fqName == packageFqName
|
return parent.fqName == packageFqName
|
||||||
|
|||||||
Reference in New Issue
Block a user