FIR IDE: API to indicate delegated property

This commit is contained in:
Jinseong Jeon
2021-10-18 14:59:14 -07:00
committed by Ilya Kirillov
parent 96fbbb6f69
commit b52912162f
20 changed files with 281 additions and 2 deletions
@@ -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<KtKotlinPropertySymbol> = withValidityAssertion {
return KtPsiBasedSymbolPointer.createForSymbolFromSource(this) ?: KtFe10NeverRestoringSymbolPointer()
}
}
}
@@ -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<KtKotlinPropertySymbol> = withValidityAssertion {
return KtPsiBasedSymbolPointer.createForSymbolFromSource(this) ?: KtFe10NeverRestoringSymbolPointer()
}
}
}