From acefd0d891d1734eb020091aebda73fa1897d110 Mon Sep 17 00:00:00 2001 From: Dmitry Petrov Date: Wed, 26 Apr 2017 16:32:41 +0300 Subject: [PATCH] Minor refactor and fix in Scope constructors --- .../src/org/jetbrains/kotlin/ir/builders/Scope.kt | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/builders/Scope.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/builders/Scope.kt index 88d71946b32..2a5ee5f27cc 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/builders/Scope.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/builders/Scope.kt @@ -37,9 +37,7 @@ class Scope(val scopeOwnerSymbol: IrSymbol) { val scopeOwner: DeclarationDescriptor get() = scopeOwnerSymbol.descriptor @Deprecated("Creates unbound symbol") - constructor(scopeOwner: ClassDescriptor) : this(IrClassSymbolImpl(scopeOwner)) - - @Deprecated("C") + constructor(descriptor: DeclarationDescriptor): this(createSymbolForScopeOwner(descriptor)) private var lastTemporaryIndex: Int = 0 private fun nextTemporaryIndex(): Int = lastTemporaryIndex++ @@ -60,11 +58,12 @@ class Scope(val scopeOwnerSymbol: IrSymbol) { ) } +@Suppress("DeprecatedCallableAddReplaceWith") @Deprecated("Creates unbound symbol") -fun Scope(descriptor: DeclarationDescriptor) = +fun createSymbolForScopeOwner(descriptor: DeclarationDescriptor) = when (descriptor) { - is ClassDescriptor -> Scope(IrClassSymbolImpl(descriptor)) - is FunctionDescriptor -> Scope(createFunctionSymbol(descriptor)) - is PropertyDescriptor -> Scope(IrFieldSymbolImpl(descriptor)) + is ClassDescriptor -> IrClassSymbolImpl(descriptor) + is FunctionDescriptor -> createFunctionSymbol(descriptor) + is PropertyDescriptor -> IrFieldSymbolImpl(descriptor) else -> throw AssertionError("Unexpected scopeOwner descriptor: $descriptor") }