[Analysis API] Treat inapplicable declarations safely (KTIJ-23458)
Make 'getClassOrObjectSymbol()' and 'getNamedClassOrObjectSymbol()' return 'null' for inapplicable PSI declarations.
This commit is contained in:
+4
-2
@@ -87,8 +87,10 @@ internal class KtFe10SymbolProvider(
|
||||
return KtFe10PsiAnonymousObjectSymbol(psi.objectDeclaration, analysisContext)
|
||||
}
|
||||
|
||||
override fun getClassOrObjectSymbol(psi: KtClassOrObject): KtClassOrObjectSymbol {
|
||||
return if (psi is KtObjectDeclaration && psi.isObjectLiteral()) {
|
||||
override fun getClassOrObjectSymbol(psi: KtClassOrObject): KtClassOrObjectSymbol? {
|
||||
return if (psi is KtEnumEntry) {
|
||||
null
|
||||
} else if (psi is KtObjectDeclaration && psi.isObjectLiteral()) {
|
||||
KtFe10PsiAnonymousObjectSymbol(psi, analysisContext)
|
||||
} else {
|
||||
KtFe10PsiNamedClassOrObjectSymbol(psi, analysisContext)
|
||||
|
||||
Reference in New Issue
Block a user