[AA LC] Fix computation of const initializers of fields
This commit is contained in:
+1
-1
@@ -40,7 +40,7 @@ import org.jetbrains.kotlin.utils.addToStdlib.ifTrue
|
||||
import org.jetbrains.kotlin.utils.addToStdlib.safeAs
|
||||
|
||||
context(KtAnalysisSession)
|
||||
internal abstract class SymbolLightClassForClassOrObject(
|
||||
abstract class SymbolLightClassForClassOrObject(
|
||||
private val classOrObjectSymbol: KtNamedClassOrObjectSymbol,
|
||||
manager: PsiManager
|
||||
) : SymbolLightClassBase(manager),
|
||||
|
||||
-2
@@ -117,8 +117,6 @@ internal class SymbolLightFieldForProperty(
|
||||
|
||||
private val _initializer by lazyPub {
|
||||
if (propertySymbol !is KtKotlinPropertySymbol) return@lazyPub null
|
||||
if (!propertySymbol.isConst) return@lazyPub null
|
||||
if (!propertySymbol.isVal) return@lazyPub null
|
||||
val constInitializer = propertySymbol.initializer as? KtConstantInitializerValue ?: return@lazyPub null
|
||||
(constInitializer.constant as? KtConstantValue)?.createPsiLiteral(this)
|
||||
}
|
||||
|
||||
+1
@@ -265,6 +265,7 @@ private fun KtKClassAnnotationValue.KtNonLocalKClassAnnotationValue.toAnnotation
|
||||
|
||||
private fun KtConstantValue.asStringForPsiLiteral(): String =
|
||||
when (val value = value) {
|
||||
is Char -> "'$value'"
|
||||
is String -> "\"${escapeString(value)}\""
|
||||
is Long -> "${value}L"
|
||||
is Float -> "${value}f"
|
||||
|
||||
Reference in New Issue
Block a user