Bootstrap change to rename SuccessOrFailure to Result

This commit is contained in:
Roman Elizarov
2018-09-05 01:50:52 +03:00
parent af732d16d6
commit eac1f5f8c8
2 changed files with 3 additions and 1 deletions
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.codegen.state
import org.jetbrains.kotlin.descriptors.*
import org.jetbrains.kotlin.load.kotlin.getRepresentativeUpperBound
import org.jetbrains.kotlin.resolve.DescriptorUtils.RESULT_FQ_NAME
import org.jetbrains.kotlin.resolve.DescriptorUtils.SUCCESS_OR_FAILURE_FQ_NAME
import org.jetbrains.kotlin.resolve.InlineClassDescriptorResolver.BOX_METHOD_NAME
import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe
@@ -34,7 +35,7 @@ private fun KotlinType.isInlineClassThatRequiresMangling() =
isInlineClassType() && !isDontMangleClass(this.constructor.declarationDescriptor as ClassDescriptor)
private fun isDontMangleClass(classDescriptor: ClassDescriptor) =
classDescriptor.fqNameSafe == SUCCESS_OR_FAILURE_FQ_NAME
classDescriptor.fqNameSafe == SUCCESS_OR_FAILURE_FQ_NAME || classDescriptor.fqNameSafe == RESULT_FQ_NAME
private fun KotlinType.isTypeParameterWithUpperBoundThatRequiresMangling(): Boolean {
val descriptor = constructor.declarationDescriptor as? TypeParameterDescriptor ?: return false
@@ -47,6 +47,7 @@ public class DescriptorUtils {
public static final FqName CONTINUATION_INTERFACE_FQ_NAME_RELEASE =
COROUTINES_PACKAGE_FQ_NAME_RELEASE.child(Name.identifier("Continuation"));
public static final FqName SUCCESS_OR_FAILURE_FQ_NAME = new FqName("kotlin.SuccessOrFailure");
public static final FqName RESULT_FQ_NAME = new FqName("kotlin.Result");
// This JVM-specific class FQ name is declared here only because it's used in MainFunctionDetector which is in frontend
public static final FqName JVM_NAME = new FqName("kotlin.jvm.JvmName");