[FIR] Add specific symbols for value parameters and enum entries
Make FirVariableSymbol a sealed class
This commit is contained in:
@@ -382,7 +382,7 @@ class JavaSymbolProvider(
|
||||
javaField.isEnumEntry -> buildEnumEntry {
|
||||
source = (javaField as? JavaElementImpl<*>)?.psi?.toFirPsiSourceElement()
|
||||
moduleData = this@JavaSymbolProvider.baseModuleData
|
||||
symbol = FirVariableSymbol(fieldId)
|
||||
symbol = FirEnumEntrySymbol(fieldId)
|
||||
name = fieldName
|
||||
status = FirResolvedDeclarationStatusImpl(
|
||||
javaField.visibility,
|
||||
|
||||
+3
-3
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.fir.declarations.impl.FirResolvedDeclarationStatusIm
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
||||
import org.jetbrains.kotlin.fir.references.FirControlFlowGraphReference
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirVariableSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirValueParameterSymbol
|
||||
import org.jetbrains.kotlin.fir.types.ConeKotlinType
|
||||
import org.jetbrains.kotlin.fir.types.FirTypeRef
|
||||
import org.jetbrains.kotlin.fir.visitors.FirTransformer
|
||||
@@ -34,7 +34,7 @@ class FirJavaValueParameter @FirImplementationDetail constructor(
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
override var returnTypeRef: FirTypeRef,
|
||||
override val name: Name,
|
||||
override val symbol: FirVariableSymbol<FirValueParameter>,
|
||||
override val symbol: FirValueParameterSymbol,
|
||||
annotationBuilder: () -> List<FirAnnotationCall>,
|
||||
override var defaultValue: FirExpression?,
|
||||
override val isVararg: Boolean,
|
||||
@@ -182,7 +182,7 @@ class FirJavaValueParameterBuilder {
|
||||
attributes,
|
||||
returnTypeRef,
|
||||
name,
|
||||
symbol = FirVariableSymbol(name),
|
||||
symbol = FirValueParameterSymbol(name),
|
||||
annotationBuilder,
|
||||
defaultValue,
|
||||
isVararg,
|
||||
|
||||
+3
-2
@@ -26,7 +26,8 @@ import org.jetbrains.kotlin.fir.java.declarations.*
|
||||
import org.jetbrains.kotlin.fir.java.toConeKotlinTypeProbablyFlexible
|
||||
import org.jetbrains.kotlin.fir.scopes.jvm.computeJvmDescriptor
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.FirTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.jvm.FirJavaTypeRef
|
||||
import org.jetbrains.kotlin.load.java.AnnotationQualifierApplicabilityType
|
||||
import org.jetbrains.kotlin.load.java.typeEnhancement.*
|
||||
@@ -222,7 +223,7 @@ class FirSignatureEnhancement(
|
||||
origin = FirDeclarationOrigin.Enhancement
|
||||
returnTypeRef = enhancedReturnType
|
||||
this.name = valueParameter.name
|
||||
symbol = FirVariableSymbol(this.name)
|
||||
symbol = FirValueParameterSymbol(this.name)
|
||||
defaultValue = valueParameter.defaultValue
|
||||
isCrossinline = valueParameter.isCrossinline
|
||||
isNoinline = valueParameter.isNoinline
|
||||
|
||||
Reference in New Issue
Block a user