Add dispatchReceiver and extensionReceiver to relevant KtSymbols

This commit is contained in:
Stanislav Erokhin
2020-12-30 18:39:43 +01:00
parent 96b6efd401
commit c5229291be
34 changed files with 259 additions and 5 deletions
@@ -16,7 +16,7 @@ abstract class KtFunctionLikeSymbol : KtCallableSymbol(), KtTypedSymbol, KtSymbo
abstract override fun createPointer(): KtSymbolPointer<KtFunctionLikeSymbol>
}
abstract class KtAnonymousFunctionSymbol : KtFunctionLikeSymbol() {
abstract class KtAnonymousFunctionSymbol : KtFunctionLikeSymbol(), KtPossibleExtensionSymbol {
final override val symbolKind: KtSymbolKind get() = KtSymbolKind.LOCAL
abstract override fun createPointer(): KtSymbolPointer<KtAnonymousFunctionSymbol>
@@ -25,6 +25,7 @@ abstract class KtAnonymousFunctionSymbol : KtFunctionLikeSymbol() {
abstract class KtFunctionSymbol : KtFunctionLikeSymbol(),
KtNamedSymbol,
KtPossibleExtensionSymbol,
KtPossibleMemberSymbol,
KtSymbolWithTypeParameters,
KtSymbolWithModality<KtCommonSymbolModality>,
KtSymbolWithVisibility,
@@ -43,6 +44,7 @@ abstract class KtFunctionSymbol : KtFunctionLikeSymbol(),
}
abstract class KtConstructorSymbol : KtFunctionLikeSymbol(),
KtPossibleMemberSymbol,
KtAnnotatedSymbol,
KtSymbolWithVisibility,
KtSymbolWithTypeParameters {
@@ -9,6 +9,7 @@ import org.jetbrains.kotlin.idea.frontend.api.symbols.markers.*
import org.jetbrains.kotlin.idea.frontend.api.symbols.pointers.KtSymbolPointer
sealed class KtPropertyAccessorSymbol : KtCallableSymbol(),
KtPossibleMemberSymbol,
KtSymbolWithModality<KtCommonSymbolModality>,
KtSymbolWithVisibility,
KtAnnotatedSymbol {
@@ -42,6 +42,7 @@ abstract class KtJavaFieldSymbol :
sealed class KtPropertySymbol : KtVariableSymbol(),
KtPossibleExtensionSymbol,
KtPossibleMemberSymbol,
KtSymbolWithModality<KtCommonSymbolModality>,
KtSymbolWithVisibility,
KtAnnotatedSymbol,
@@ -0,0 +1,12 @@
/*
* 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.kotlin.idea.frontend.api.symbols.markers
import org.jetbrains.kotlin.idea.frontend.api.types.KtType
interface KtPossibleMemberSymbol {
val dispatchType: KtType?
}