From 0395294933b4a0c8467415bc4e2db6b668d4d254 Mon Sep 17 00:00:00 2001 From: Jinseong Jeon Date: Wed, 19 May 2021 15:49:50 -0700 Subject: [PATCH] UAST: split KotlinUastResolveProviderService into a separate file --- .../uast/kotlin/KotlinUastLanguagePlugin.kt | 18 ----------- .../KotlinUastResolveProviderService.kt | 30 +++++++++++++++++++ 2 files changed, 30 insertions(+), 18 deletions(-) create mode 100644 plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastResolveProviderService.kt diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastLanguagePlugin.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastLanguagePlugin.kt index 10999bcfc3d..4773d56f145 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastLanguagePlugin.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastLanguagePlugin.kt @@ -31,10 +31,7 @@ import org.jetbrains.kotlin.asJava.classes.KtLightClassForFacade import org.jetbrains.kotlin.asJava.elements.* import org.jetbrains.kotlin.asJava.findFacadeClass import org.jetbrains.kotlin.asJava.toLightClass -import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper -import org.jetbrains.kotlin.config.LanguageVersionSettings import org.jetbrains.kotlin.descriptors.ConstructorDescriptor -import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.descriptors.FunctionDescriptor import org.jetbrains.kotlin.idea.KotlinLanguage import org.jetbrains.kotlin.lexer.KtTokens @@ -53,21 +50,6 @@ import org.jetbrains.uast.kotlin.declarations.KotlinUMethodWithFakeLightDelegate import org.jetbrains.uast.kotlin.expressions.* import org.jetbrains.uast.kotlin.psi.* -interface KotlinUastResolveProviderService : BaseKotlinUastResolveProviderService { - fun getBindingContext(element: KtElement): BindingContext - fun getTypeMapper(element: KtElement): KotlinTypeMapper? - fun getLanguageVersionSettings(element: KtElement): LanguageVersionSettings - fun getReferenceVariants(ktElement: KtElement, nameHint: String): Sequence - - override fun convertParent(uElement: UElement): UElement? { - return convertParentImpl(uElement) - } - - override fun resolveToDeclaration(ktExpression: KtExpression): PsiElement? { - return resolveToDeclarationImpl(ktExpression) - } -} - var PsiElement.destructuringDeclarationInitializer: Boolean? by UserDataProperty(Key.create("kotlin.uast.destructuringDeclarationInitializer")) class KotlinUastLanguagePlugin : UastLanguagePlugin { diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastResolveProviderService.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastResolveProviderService.kt new file mode 100644 index 00000000000..e1eceb06fad --- /dev/null +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/KotlinUastResolveProviderService.kt @@ -0,0 +1,30 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.uast.kotlin + +import com.intellij.psi.PsiElement +import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper +import org.jetbrains.kotlin.config.LanguageVersionSettings +import org.jetbrains.kotlin.descriptors.DeclarationDescriptor +import org.jetbrains.kotlin.psi.KtElement +import org.jetbrains.kotlin.psi.KtExpression +import org.jetbrains.kotlin.resolve.BindingContext +import org.jetbrains.uast.UElement + +interface KotlinUastResolveProviderService : BaseKotlinUastResolveProviderService { + fun getBindingContext(element: KtElement): BindingContext + fun getTypeMapper(element: KtElement): KotlinTypeMapper? + fun getLanguageVersionSettings(element: KtElement): LanguageVersionSettings + fun getReferenceVariants(ktElement: KtElement, nameHint: String): Sequence + + override fun convertParent(uElement: UElement): UElement? { + return convertParentImpl(uElement) + } + + override fun resolveToDeclaration(ktExpression: KtExpression): PsiElement? { + return resolveToDeclarationImpl(ktExpression) + } +}