From b52912162fd4043c3c7da1ec64317eb1166e83b8 Mon Sep 17 00:00:00 2001 From: Jinseong Jeon Date: Mon, 18 Oct 2021 14:59:14 -0700 Subject: [PATCH] FIR IDE: API to indicate delegated property --- .../KtFe10DescKotlinPropertySymbol.kt | 5 +- .../psiBased/KtFe10PsiKotlinPropertySymbol.kt | 7 +- .../fir/symbols/KtFirKotlinPropertySymbol.kt | 2 + .../symbols/FirSymbolByPsiTestGenerated.java | 6 + .../api/symbols/KtVariableLikeSymbol.kt | 2 + .../fileScopeTest/simpleFileScope.txt | 1 + .../memberScopeByFqName/MutableList.txt | 1 + .../memberScopeByFqName/java.lang.String.txt | 1 + .../symbols/symbolByPsi/anonymousObject.txt | 2 + .../symbols/symbolByPsi/backingField.txt | 1 + .../symbols/symbolByPsi/classInitializer.txt | 1 + .../symbols/symbolByPsi/classMembes.txt | 1 + .../symbols/symbolByPsi/delegateField.kt | 11 + .../symbols/symbolByPsi/delegateField.txt | 225 ++++++++++++++++++ .../symbols/symbolByPsi/deprecated.txt | 8 + .../symbols/symbolByPsi/enumValueMember.txt | 2 + .../testData/symbols/symbolByPsi/jvmName.txt | 2 + .../symbols/symbolByPsi/memberProperties.txt | 2 + .../symbolByPsi/topLevelProperties.txt | 2 + .../symbols/symbolByPsi/typeAnnotations.txt | 1 + 20 files changed, 281 insertions(+), 2 deletions(-) create mode 100644 analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.kt create mode 100644 analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.txt diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/descriptorBased/KtFe10DescKotlinPropertySymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/descriptorBased/KtFe10DescKotlinPropertySymbol.kt index f6fa55835d5..a9289906cc3 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/descriptorBased/KtFe10DescKotlinPropertySymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/descriptorBased/KtFe10DescKotlinPropertySymbol.kt @@ -96,7 +96,10 @@ internal class KtFe10DescKotlinPropertySymbol( return bindingContext[BindingContext.BACKING_FIELD_REQUIRED, descriptor] == true } + override val isDelegatedProperty: Boolean + get() = withValidityAssertion { descriptor.delegateField != null } + override fun createPointer(): KtSymbolPointer = withValidityAssertion { return KtPsiBasedSymbolPointer.createForSymbolFromSource(this) ?: KtFe10NeverRestoringSymbolPointer() } -} \ No newline at end of file +} diff --git a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt index aca19f92607..80e0bcc1134 100644 --- a/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt +++ b/analysis/analysis-api-fe10/src/org/jetbrains/kotlin/analysis/api/descriptors/symbols/psiBased/KtFe10PsiKotlinPropertySymbol.kt @@ -74,6 +74,11 @@ internal class KtFe10PsiKotlinPropertySymbol( bindingContext[BindingContext.BACKING_FIELD_REQUIRED, descriptor] == true } + override val isDelegatedProperty: Boolean + get() = withValidityAssertion { + psi.hasDelegate() + } + override val isFromPrimaryConstructor: Boolean get() = withValidityAssertion { false } @@ -131,4 +136,4 @@ internal class KtFe10PsiKotlinPropertySymbol( override fun createPointer(): KtSymbolPointer = withValidityAssertion { return KtPsiBasedSymbolPointer.createForSymbolFromSource(this) ?: KtFe10NeverRestoringSymbolPointer() } -} \ No newline at end of file +} diff --git a/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/symbols/KtFirKotlinPropertySymbol.kt b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/symbols/KtFirKotlinPropertySymbol.kt index 0c9d304531f..0d108fd2a82 100644 --- a/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/symbols/KtFirKotlinPropertySymbol.kt +++ b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/symbols/KtFirKotlinPropertySymbol.kt @@ -101,6 +101,8 @@ internal class KtFirKotlinPropertySymbol( // NB: `field` in accessors indicates the property should have a backing field. To see that, though, we need BODY_RESOLVE. override val hasBackingField: Boolean get() = firRef.withFir(FirResolvePhase.BODY_RESOLVE) { it.hasBackingField } + override val isDelegatedProperty: Boolean get() = firRef.withFir { it.delegateFieldSymbol != null } + override val isLateInit: Boolean get() = firRef.withFir { it.isLateInit } override val isConst: Boolean get() = firRef.withFir { it.isConst } diff --git a/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/symbols/FirSymbolByPsiTestGenerated.java b/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/symbols/FirSymbolByPsiTestGenerated.java index ba23eeecbc7..f4c61fd76d1 100644 --- a/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/symbols/FirSymbolByPsiTestGenerated.java +++ b/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/symbols/FirSymbolByPsiTestGenerated.java @@ -78,6 +78,12 @@ public class FirSymbolByPsiTestGenerated extends AbstractFirSymbolByPsiTest { runTest("analysis/analysis-api/testData/symbols/symbolByPsi/classWithTypeParams.kt"); } + @Test + @TestMetadata("delegateField.kt") + public void testDelegateField() throws Exception { + runTest("analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.kt"); + } + @Test @TestMetadata("deprecated.kt") public void testDeprecated() throws Exception { diff --git a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/symbols/KtVariableLikeSymbol.kt b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/symbols/KtVariableLikeSymbol.kt index abe6e01ba05..ebdf0150c85 100644 --- a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/symbols/KtVariableLikeSymbol.kt +++ b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/symbols/KtVariableLikeSymbol.kt @@ -90,6 +90,7 @@ public sealed class KtPropertySymbol : KtVariableSymbol(), public abstract val hasBackingField: Boolean + public abstract val isDelegatedProperty: Boolean public abstract val isFromPrimaryConstructor: Boolean public abstract val isOverride: Boolean public abstract val isStatic: Boolean @@ -109,6 +110,7 @@ public abstract class KtKotlinPropertySymbol : KtPropertySymbol() { public abstract class KtSyntheticJavaPropertySymbol : KtPropertySymbol() { final override val hasBackingField: Boolean get() = true + final override val isDelegatedProperty: Boolean get() = false final override val hasGetter: Boolean get() = true final override val symbolKind: KtSymbolKind get() = KtSymbolKind.CLASS_MEMBER diff --git a/analysis/analysis-api/testData/fileScopeTest/simpleFileScope.txt b/analysis/analysis-api/testData/fileScopeTest/simpleFileScope.txt index 90f3a6fcfab..8ee0ee7803d 100644 --- a/analysis/analysis-api/testData/fileScopeTest/simpleFileScope.txt +++ b/analysis/analysis-api/testData/fileScopeTest/simpleFileScope.txt @@ -46,6 +46,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 2 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/memberScopeByFqName/MutableList.txt b/analysis/analysis-api/testData/memberScopeByFqName/MutableList.txt index 3a74f2f8fef..2ca1137b6e1 100644 --- a/analysis/analysis-api/testData/memberScopeByFqName/MutableList.txt +++ b/analysis/analysis-api/testData/memberScopeByFqName/MutableList.txt @@ -546,6 +546,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: null isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/memberScopeByFqName/java.lang.String.txt b/analysis/analysis-api/testData/memberScopeByFqName/java.lang.String.txt index a725e5d1a4e..2c71efe91bb 100644 --- a/analysis/analysis-api/testData/memberScopeByFqName/java.lang.String.txt +++ b/analysis/analysis-api/testData/memberScopeByFqName/java.lang.String.txt @@ -76,6 +76,7 @@ KtSyntheticJavaPropertySymbol: hasGetter: true hasSetter: false initializer: null + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isOverride: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/anonymousObject.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/anonymousObject.txt index 50f9b3da2ec..75e13c1336b 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/anonymousObject.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/anonymousObject.txt @@ -35,6 +35,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 123 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -79,6 +80,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: KtUnsupportedConstantValue isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/backingField.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/backingField.txt index c9e173f1db0..58fe9fcfc95 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/backingField.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/backingField.txt @@ -67,6 +67,7 @@ KtKotlinPropertySymbol: hasSetter: true initializer: null isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/classInitializer.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/classInitializer.txt index 933d3f76bdf..0caa60385e1 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/classInitializer.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/classInitializer.txt @@ -10,6 +10,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: null isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/classMembes.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/classMembes.txt index 497c8ecd664..1508244cbf8 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/classMembes.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/classMembes.txt @@ -10,6 +10,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 10 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.kt b/analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.kt new file mode 100644 index 00000000000..80e7984b996 --- /dev/null +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.kt @@ -0,0 +1,11 @@ +// WITH_STDLIB + +class MyColor(val x: Int, val y: Int, val z: Int) + +class Some { + val delegate by lazy { MyColor(0x12 /* constant = 18 */, 2, 3) } + + val lambda = lazy { MyColor(1, 2, 3) } + + val nonLazy = MyColor(1, 2, 3) +} diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.txt new file mode 100644 index 00000000000..59d8c078a94 --- /dev/null +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/delegateField.txt @@ -0,0 +1,225 @@ +KtValueParameterSymbol: + annotatedType: [] kotlin/Int + annotationClassIds: [] + annotations: [] + callableIdIfNonLocal: null + hasDefaultValue: false + isExtension: false + isVararg: false + name: x + origin: SOURCE + receiverType: null + symbolKind: LOCAL + deprecationStatus: null + +KtValueParameterSymbol: + annotatedType: [] kotlin/Int + annotationClassIds: [] + annotations: [] + callableIdIfNonLocal: null + hasDefaultValue: false + isExtension: false + isVararg: false + name: y + origin: SOURCE + receiverType: null + symbolKind: LOCAL + deprecationStatus: null + +KtValueParameterSymbol: + annotatedType: [] kotlin/Int + annotationClassIds: [] + annotations: [] + callableIdIfNonLocal: null + hasDefaultValue: false + isExtension: false + isVararg: false + name: z + origin: SOURCE + receiverType: null + symbolKind: LOCAL + deprecationStatus: null + +KtConstructorSymbol: + annotatedType: [] MyColor + annotationClassIds: [] + annotations: [] + callableIdIfNonLocal: null + containingClassIdIfNonLocal: MyColor + dispatchType: null + hasStableParameterNames: true + isExtension: false + isPrimary: true + origin: SOURCE + receiverType: null + symbolKind: CLASS_MEMBER + typeParameters: [] + valueParameters: [ + KtValueParameterSymbol(x) + KtValueParameterSymbol(y) + KtValueParameterSymbol(z) + ] + visibility: Public + deprecationStatus: null + +KtNamedClassOrObjectSymbol: + annotationClassIds: [] + annotations: [] + classIdIfNonLocal: MyColor + classKind: CLASS + companionObject: null + isData: false + isExternal: false + isFun: false + isInline: false + isInner: false + modality: FINAL + name: MyColor + origin: SOURCE + superTypes: [ + [] kotlin/Any + ] + symbolKind: TOP_LEVEL + typeParameters: [] + visibility: Public + deprecationStatus: null + +KtAnonymousFunctionSymbol: + annotatedType: [] MyColor + callableIdIfNonLocal: null + hasStableParameterNames: true + isExtension: false + origin: SOURCE + receiverType: null + symbolKind: LOCAL + valueParameters: [] + deprecationStatus: null + +KtKotlinPropertySymbol: + annotatedType: [] MyColor + annotationClassIds: [] + annotations: [] + callableIdIfNonLocal: /Some.delegate + dispatchType: Some + getter: KtPropertyGetterSymbol() + hasBackingField: false + hasGetter: true + hasSetter: false + initializer: null + isConst: false + isDelegatedProperty: true + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: delegate + origin: SOURCE + receiverType: null + setter: null + symbolKind: CLASS_MEMBER + visibility: Public + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getDelegate + javaSetterName: null + setterDeprecationStatus: null + +KtAnonymousFunctionSymbol: + annotatedType: [] MyColor + callableIdIfNonLocal: null + hasStableParameterNames: true + isExtension: false + origin: SOURCE + receiverType: null + symbolKind: LOCAL + valueParameters: [] + deprecationStatus: null + +KtKotlinPropertySymbol: + annotatedType: [] kotlin/Lazy + annotationClassIds: [] + annotations: [] + callableIdIfNonLocal: /Some.lambda + dispatchType: Some + getter: KtPropertyGetterSymbol() + hasBackingField: true + hasGetter: true + hasSetter: false + initializer: null + isConst: false + isDelegatedProperty: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: lambda + origin: SOURCE + receiverType: null + setter: null + symbolKind: CLASS_MEMBER + visibility: Public + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getLambda + javaSetterName: null + setterDeprecationStatus: null + +KtKotlinPropertySymbol: + annotatedType: [] MyColor + annotationClassIds: [] + annotations: [] + callableIdIfNonLocal: /Some.nonLazy + dispatchType: Some + getter: KtPropertyGetterSymbol() + hasBackingField: true + hasGetter: true + hasSetter: false + initializer: null + isConst: false + isDelegatedProperty: false + isExtension: false + isFromPrimaryConstructor: false + isLateInit: false + isOverride: false + isStatic: false + isVal: true + modality: FINAL + name: nonLazy + origin: SOURCE + receiverType: null + setter: null + symbolKind: CLASS_MEMBER + visibility: Public + deprecationStatus: null + getterDeprecationStatus: null + javaGetterName: getNonLazy + javaSetterName: null + setterDeprecationStatus: null + +KtNamedClassOrObjectSymbol: + annotationClassIds: [] + annotations: [] + classIdIfNonLocal: Some + classKind: CLASS + companionObject: null + isData: false + isExternal: false + isFun: false + isInline: false + isInner: false + modality: FINAL + name: Some + origin: SOURCE + superTypes: [ + [] kotlin/Any + ] + symbolKind: TOP_LEVEL + typeParameters: [] + visibility: Public + deprecationStatus: null diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/deprecated.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/deprecated.txt index 63121e0f3e7..0f3d870b952 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/deprecated.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/deprecated.txt @@ -15,6 +15,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 1 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -46,6 +47,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 1 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -77,6 +79,7 @@ KtKotlinPropertySymbol: hasSetter: true initializer: 1 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -108,6 +111,7 @@ KtKotlinPropertySymbol: hasSetter: true initializer: 1 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -201,6 +205,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 1 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -289,6 +294,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 2 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -325,6 +331,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 2 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -361,6 +368,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 2 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/enumValueMember.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/enumValueMember.txt index 69a9b6e828b..46322883d6c 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/enumValueMember.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/enumValueMember.txt @@ -64,6 +64,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: null isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -106,6 +107,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: null isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/jvmName.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/jvmName.txt index 7cc3eeca160..8defd0ced77 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/jvmName.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/jvmName.txt @@ -10,6 +10,7 @@ KtKotlinPropertySymbol: hasSetter: true initializer: null isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -108,6 +109,7 @@ KtKotlinPropertySymbol: hasSetter: true initializer: null isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/memberProperties.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/memberProperties.txt index c8ee86eaaaa..a08aaf39169 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/memberProperties.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/memberProperties.txt @@ -10,6 +10,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 10 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -61,6 +62,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: null isConst: false + isDelegatedProperty: false isExtension: true isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/topLevelProperties.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/topLevelProperties.txt index 9efb0f9ec1a..c59dcce6493 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/topLevelProperties.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/topLevelProperties.txt @@ -10,6 +10,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: 10 isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false @@ -61,6 +62,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: null isConst: false + isDelegatedProperty: false isExtension: true isFromPrimaryConstructor: false isLateInit: false diff --git a/analysis/analysis-api/testData/symbols/symbolByPsi/typeAnnotations.txt b/analysis/analysis-api/testData/symbols/symbolByPsi/typeAnnotations.txt index da307a8428b..e084ad80647 100644 --- a/analysis/analysis-api/testData/symbols/symbolByPsi/typeAnnotations.txt +++ b/analysis/analysis-api/testData/symbols/symbolByPsi/typeAnnotations.txt @@ -190,6 +190,7 @@ KtKotlinPropertySymbol: hasSetter: false initializer: KtUnsupportedConstantValue isConst: false + isDelegatedProperty: false isExtension: false isFromPrimaryConstructor: false isLateInit: false