FIC: support suspend conversions in jvm codegen

This commit is contained in:
Mikhail Zarechenskiy
2019-12-17 16:27:44 +03:00
parent b98d8bd7c1
commit 70094884ca
8 changed files with 55 additions and 4 deletions
@@ -65,10 +65,13 @@ val KotlinType.isFunctionOrSuspendFunctionType: Boolean
get() = isFunctionType || isSuspendFunctionType
val KotlinType.isBuiltinFunctionalType: Boolean
get() = constructor.declarationDescriptor?.isBuiltinFunctionalClassDescriptor == true
val DeclarationDescriptor.isBuiltinFunctionalClassDescriptor: Boolean
get() {
val kind = constructor.declarationDescriptor?.getFunctionalClassKind()
return kind == FunctionClassDescriptor.Kind.Function ||
kind == FunctionClassDescriptor.Kind.SuspendFunction
val functionalClassKind = getFunctionalClassKind()
return functionalClassKind == FunctionClassDescriptor.Kind.Function ||
functionalClassKind == FunctionClassDescriptor.Kind.SuspendFunction
}
fun isBuiltinFunctionClass(classId: ClassId): Boolean {