[FIR] Make FirDeclaration an abstract class
This commit is contained in:
@@ -452,8 +452,6 @@ class JavaSymbolProvider(
|
||||
source = (javaMethod as? JavaElementImpl<*>)?.psi?.toFirPsiSourceElement()
|
||||
symbol = methodSymbol
|
||||
name = methodName
|
||||
visibility = javaMethod.visibility
|
||||
modality = javaMethod.modality
|
||||
returnTypeRef = returnType.toFirJavaTypeRef(this@JavaSymbolProvider.session, javaTypeParameterStack)
|
||||
isStatic = javaMethod.isStatic
|
||||
typeParameters += javaMethod.typeParameters.convertTypeParameters(javaTypeParameterStack)
|
||||
|
||||
@@ -41,7 +41,7 @@ class FirJavaField @FirImplementationDetail constructor(
|
||||
override var status: FirDeclarationStatus,
|
||||
override val isVar: Boolean,
|
||||
annotationBuilder: () -> List<FirAnnotationCall>,
|
||||
override val typeParameters: MutableList<FirTypeParameter>,
|
||||
override val typeParameters: MutableList<FirTypeParameterRef>,
|
||||
override var initializer: FirExpression?,
|
||||
override val dispatchReceiverType: ConeKotlinType?,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
@@ -5,8 +5,6 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.java.declarations
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.fir.FirImplementationDetail
|
||||
import org.jetbrains.kotlin.fir.FirModuleData
|
||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||
@@ -186,22 +184,27 @@ class FirJavaMethodBuilder : FirFunctionBuilder, FirTypeParametersOwnerBuilder,
|
||||
override lateinit var returnTypeRef: FirTypeRef
|
||||
override val valueParameters: MutableList<FirValueParameter> = mutableListOf()
|
||||
override var body: FirBlock? = null
|
||||
lateinit var status: FirDeclarationStatus
|
||||
var dispatchReceiverType: ConeKotlinType? = null
|
||||
override lateinit var status: FirDeclarationStatus
|
||||
override var dispatchReceiverType: ConeKotlinType? = null
|
||||
lateinit var name: Name
|
||||
lateinit var symbol: FirNamedFunctionSymbol
|
||||
override val annotations: MutableList<FirAnnotationCall> = mutableListOf()
|
||||
override val typeParameters: MutableList<FirTypeParameter> = mutableListOf()
|
||||
lateinit var visibility: Visibility
|
||||
var modality: Modality? = null
|
||||
var isStatic: Boolean by Delegates.notNull()
|
||||
override var resolvePhase: FirResolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
lateinit var annotationBuilder: () -> List<FirAnnotationCall>
|
||||
|
||||
@Deprecated("Modification of 'containerSource' has no impact for FirJavaFunctionBuilder", level = DeprecationLevel.HIDDEN)
|
||||
override var containerSource: DeserializedContainerSource?
|
||||
get() = throw IllegalStateException()
|
||||
set(_) {
|
||||
throw IllegalStateException()
|
||||
}
|
||||
|
||||
@Deprecated("Modification of 'origin' has no impact for FirJavaFunctionBuilder", level = DeprecationLevel.HIDDEN)
|
||||
override var origin: FirDeclarationOrigin
|
||||
get() = throw IllegalStateException()
|
||||
set(@Suppress("UNUSED_PARAMETER") value) {
|
||||
set(_) {
|
||||
throw IllegalStateException()
|
||||
}
|
||||
|
||||
|
||||
+23
@@ -10,16 +10,19 @@ import org.jetbrains.kotlin.fir.FirModuleData
|
||||
import org.jetbrains.kotlin.fir.FirSourceElement
|
||||
import org.jetbrains.kotlin.fir.builder.FirBuilderDsl
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.impl.FirResolvedDeclarationStatusImpl
|
||||
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.FirDelegateFieldSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirVariableSymbol
|
||||
import org.jetbrains.kotlin.fir.types.ConeKotlinType
|
||||
import org.jetbrains.kotlin.fir.types.FirTypeRef
|
||||
import org.jetbrains.kotlin.fir.visitors.FirTransformer
|
||||
import org.jetbrains.kotlin.fir.visitors.FirVisitor
|
||||
import org.jetbrains.kotlin.fir.visitors.transformSingle
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
import kotlin.contracts.ExperimentalContracts
|
||||
import kotlin.contracts.InvocationKind
|
||||
import kotlin.contracts.contract
|
||||
@@ -79,6 +82,18 @@ class FirJavaValueParameter @FirImplementationDetail constructor(
|
||||
override val controlFlowGraphReference: FirControlFlowGraphReference?
|
||||
get() = null
|
||||
|
||||
override val typeParameters: List<FirTypeParameterRef>
|
||||
get() = emptyList()
|
||||
|
||||
override val status: FirDeclarationStatus
|
||||
get() = FirResolvedDeclarationStatusImpl.DEFAULT_STATUS_FOR_STATUSLESS_DECLARATIONS
|
||||
|
||||
override val containerSource: DeserializedContainerSource?
|
||||
get() = null
|
||||
|
||||
override val dispatchReceiverType: ConeKotlinType?
|
||||
get() = null
|
||||
|
||||
override fun <R, D> acceptChildren(visitor: FirVisitor<R, D>, data: D) {
|
||||
returnTypeRef.accept(visitor, data)
|
||||
annotations.forEach { it.accept(visitor, data) }
|
||||
@@ -125,6 +140,14 @@ class FirJavaValueParameter @FirImplementationDetail constructor(
|
||||
return this
|
||||
}
|
||||
|
||||
override fun <D> transformTypeParameters(transformer: FirTransformer<D>, data: D): FirValueParameter {
|
||||
return this
|
||||
}
|
||||
|
||||
override fun <D> transformStatus(transformer: FirTransformer<D>, data: D): FirValueParameter {
|
||||
return this
|
||||
}
|
||||
|
||||
override fun replaceResolvePhase(newResolvePhase: FirResolvePhase) {
|
||||
resolvePhase = newResolvePhase
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user