Create descriptors with Kotlin package name in decompiler/cls stub builder
(cherry picked from commit b2620d1)
This commit is contained in:
committed by
Dmitry Jemerov
parent
f93f502ebe
commit
2ed3e88561
+1
-1
@@ -89,7 +89,7 @@ class DeserializerForClassfileDecompiler(
|
||||
}
|
||||
val (nameResolver, packageProto) = JvmProtoBufUtil.readPackageDataFrom(annotationData, strings)
|
||||
val membersScope = DeserializedPackageMemberScope(
|
||||
createDummyPackageFragment(packageFqName), packageProto, nameResolver,
|
||||
createDummyPackageFragment(header.packageName?.let(::FqName) ?: facadeFqName.parent()), packageProto, nameResolver,
|
||||
JvmPackagePartSource(binaryClassForPackageClass), deserializationComponents
|
||||
) { emptyList() }
|
||||
return membersScope.getContributedDescriptors().toList()
|
||||
|
||||
+3
-1
@@ -86,7 +86,9 @@ open class KotlinClsStubBuilder : ClsStubBuilder() {
|
||||
KotlinClassHeader.Kind.FILE_FACADE -> {
|
||||
val (nameResolver, packageProto) = JvmProtoBufUtil.readPackageDataFrom(annotationData, strings)
|
||||
val context = components.createContext(nameResolver, packageFqName, TypeTable(packageProto.typeTable))
|
||||
createFileFacadeStub(packageProto, classId.asSingleFqName(), context)
|
||||
val fqName = header.packageName?.let { ClassId(FqName(it), classId.relativeClassName, classId.isLocal).asSingleFqName() }
|
||||
?: classId.asSingleFqName()
|
||||
createFileFacadeStub(packageProto, fqName, context)
|
||||
}
|
||||
else -> throw IllegalStateException("Should have processed " + file.path + " with header $header")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user