diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousFunction.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousFunction.kt index 16f8c901696..b57487cffc5 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousFunction.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousFunction.kt @@ -22,14 +22,13 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirAnonymousFunction : FirFunction, FirExpression() { +abstract class FirAnonymousFunction : FirFunction, FirExpression(), FirTypeParametersOwner { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase abstract override val annotations: List abstract override val returnTypeRef: FirTypeRef abstract override val receiverTypeRef: FirTypeRef? - abstract override val typeParameters: List abstract override val controlFlowGraphReference: FirControlFlowGraphReference abstract override val valueParameters: List abstract override val body: FirBlock? @@ -38,6 +37,7 @@ abstract class FirAnonymousFunction : FirFunction, FirExpr abstract val label: FirLabel? abstract val invocationKind: InvocationKind? abstract val isLambda: Boolean + abstract override val typeParameters: List override fun accept(visitor: FirVisitor, data: D): R = visitor.visitAnonymousFunction(this, data) diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousObject.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousObject.kt index f95bce6c806..425e7a47a6c 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousObject.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirAnonymousObject.kt @@ -25,6 +25,7 @@ abstract class FirAnonymousObject : FirClass, FirExpression( abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase + abstract override val typeParameters: List abstract override val classKind: ClassKind abstract override val superTypeRefs: List abstract override val declarations: List diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirCallableMemberDeclaration.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirCallableMemberDeclaration.kt index 9262b4b3639..1ee83c651cb 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirCallableMemberDeclaration.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirCallableMemberDeclaration.kt @@ -26,7 +26,7 @@ interface FirCallableMemberDeclaration> : Fi override val returnTypeRef: FirTypeRef override val receiverTypeRef: FirTypeRef? override val symbol: FirCallableSymbol - override val typeParameters: List + override val typeParameters: List override val status: FirDeclarationStatus val containerSource: DeserializedContainerSource? diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirClass.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirClass.kt index e7d4a84c568..5dfcda4e9cf 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirClass.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirClass.kt @@ -21,10 +21,11 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -interface FirClass> : FirClassLikeDeclaration, FirStatement, FirAnnotationContainer { +interface FirClass> : FirClassLikeDeclaration, FirStatement, FirAnnotationContainer, FirTypeParameterRefsOwner { override val source: FirSourceElement? override val session: FirSession override val resolvePhase: FirResolvePhase + override val typeParameters: List override val symbol: FirClassSymbol val classKind: ClassKind val superTypeRefs: List diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirConstructor.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirConstructor.kt index 9399ecb7606..a62abdaa75f 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirConstructor.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirConstructor.kt @@ -22,13 +22,13 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirConstructor : FirPureAbstractElement(), FirFunction, FirCallableMemberDeclaration { +abstract class FirConstructor : FirPureAbstractElement(), FirFunction, FirCallableMemberDeclaration, FirTypeParameterRefsOwner { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase abstract override val returnTypeRef: FirTypeRef abstract override val receiverTypeRef: FirTypeRef? - abstract override val typeParameters: List + abstract override val typeParameters: List abstract override val controlFlowGraphReference: FirControlFlowGraphReference abstract override val valueParameters: List abstract override val status: FirDeclarationStatus diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirEnumEntry.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirEnumEntry.kt index 54e2d26833c..30fbbb26597 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirEnumEntry.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirEnumEntry.kt @@ -37,7 +37,7 @@ abstract class FirEnumEntry : FirVariable(), FirCallableMemberDecl abstract override val getter: FirPropertyAccessor? abstract override val setter: FirPropertyAccessor? abstract override val annotations: List - abstract override val typeParameters: List + abstract override val typeParameters: List abstract override val status: FirDeclarationStatus abstract override val containerSource: DeserializedContainerSource? diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirErrorFunction.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirErrorFunction.kt index e448d15fd1a..ae0c98a8af9 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirErrorFunction.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirErrorFunction.kt @@ -22,19 +22,19 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirErrorFunction : FirPureAbstractElement(), FirFunction, FirDiagnosticHolder { +abstract class FirErrorFunction : FirPureAbstractElement(), FirFunction, FirDiagnosticHolder, FirTypeParametersOwner { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase abstract override val annotations: List abstract override val returnTypeRef: FirTypeRef abstract override val receiverTypeRef: FirTypeRef? - abstract override val typeParameters: List abstract override val controlFlowGraphReference: FirControlFlowGraphReference abstract override val valueParameters: List abstract override val body: FirBlock? abstract override val diagnostic: ConeDiagnostic abstract override val symbol: FirErrorFunctionSymbol + abstract override val typeParameters: List override fun accept(visitor: FirVisitor, data: D): R = visitor.visitErrorFunction(this, data) diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirField.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirField.kt index a5b4c6861c5..f0b56f57b04 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirField.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirField.kt @@ -21,7 +21,7 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirField : FirVariable(), FirCallableMemberDeclaration { +abstract class FirField : FirVariable(), FirTypeParametersOwner, FirCallableMemberDeclaration { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirFunction.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirFunction.kt index 16f5308d096..75c55e7ca38 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirFunction.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirFunction.kt @@ -22,14 +22,14 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -interface FirFunction> : FirCallableDeclaration, FirTargetElement, FirAnnotationContainer, FirTypeParametersOwner, FirStatement { +interface FirFunction> : FirCallableDeclaration, FirTargetElement, FirAnnotationContainer, FirTypeParameterRefsOwner, FirStatement { override val source: FirSourceElement? override val session: FirSession override val resolvePhase: FirResolvePhase override val annotations: List override val returnTypeRef: FirTypeRef override val receiverTypeRef: FirTypeRef? - override val typeParameters: List + override val typeParameters: List val controlFlowGraphReference: FirControlFlowGraphReference override val symbol: FirFunctionSymbol val valueParameters: List diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirMemberDeclaration.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirMemberDeclaration.kt index 820af39f4f7..2da2ec14d8a 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirMemberDeclaration.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirMemberDeclaration.kt @@ -21,7 +21,7 @@ interface FirMemberDeclaration : FirDeclaration, FirAnnotationContainer { override val session: FirSession override val resolvePhase: FirResolvePhase override val annotations: List - val typeParameters: List + val typeParameters: List val status: FirDeclarationStatus override fun accept(visitor: FirVisitor, data: D): R = visitor.visitMemberDeclaration(this, data) diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirPropertyAccessor.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirPropertyAccessor.kt index a562248dbc1..707a0e65ffd 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirPropertyAccessor.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirPropertyAccessor.kt @@ -21,13 +21,12 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirPropertyAccessor : FirPureAbstractElement(), FirFunction, FirContractDescriptionOwner { +abstract class FirPropertyAccessor : FirPureAbstractElement(), FirFunction, FirContractDescriptionOwner, FirTypeParametersOwner { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase abstract override val returnTypeRef: FirTypeRef abstract override val receiverTypeRef: FirTypeRef? - abstract override val typeParameters: List abstract override val controlFlowGraphReference: FirControlFlowGraphReference abstract override val valueParameters: List abstract override val body: FirBlock? @@ -37,6 +36,7 @@ abstract class FirPropertyAccessor : FirPureAbstractElement(), FirFunction + abstract override val typeParameters: List override fun accept(visitor: FirVisitor, data: D): R = visitor.visitPropertyAccessor(this, data) diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirRegularClass.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirRegularClass.kt index 751785c704c..23cf7bf03c2 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirRegularClass.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirRegularClass.kt @@ -22,12 +22,12 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirRegularClass : FirPureAbstractElement(), FirMemberDeclaration, FirTypeParametersOwner, FirClass { +abstract class FirRegularClass : FirPureAbstractElement(), FirMemberDeclaration, FirTypeParameterRefsOwner, FirClass { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase abstract override val annotations: List - abstract override val typeParameters: List + abstract override val typeParameters: List abstract override val status: FirDeclarationStatus abstract override val classKind: ClassKind abstract override val declarations: List diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSealedClass.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSealedClass.kt index fe5bb0be22a..9ff9bbac52b 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSealedClass.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSealedClass.kt @@ -27,7 +27,7 @@ abstract class FirSealedClass : FirRegularClass() { abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase abstract override val annotations: List - abstract override val typeParameters: List + abstract override val typeParameters: List abstract override val status: FirDeclarationStatus abstract override val classKind: ClassKind abstract override val declarations: List diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSimpleFunction.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSimpleFunction.kt index 1ffdda24170..cfc12da4d94 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSimpleFunction.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirSimpleFunction.kt @@ -23,13 +23,12 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirSimpleFunction : FirPureAbstractElement(), FirFunction, FirCallableMemberDeclaration, FirContractDescriptionOwner { +abstract class FirSimpleFunction : FirPureAbstractElement(), FirFunction, FirCallableMemberDeclaration, FirContractDescriptionOwner, FirTypeParametersOwner { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase abstract override val returnTypeRef: FirTypeRef abstract override val receiverTypeRef: FirTypeRef? - abstract override val typeParameters: List abstract override val controlFlowGraphReference: FirControlFlowGraphReference abstract override val valueParameters: List abstract override val body: FirBlock? @@ -39,6 +38,7 @@ abstract class FirSimpleFunction : FirPureAbstractElement(), FirFunction abstract override val annotations: List + abstract override val typeParameters: List override fun accept(visitor: FirVisitor, data: D): R = visitor.visitSimpleFunction(this, data) diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeAlias.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeAlias.kt index 7422ac3363e..31cd50f63a1 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeAlias.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeAlias.kt @@ -23,8 +23,8 @@ abstract class FirTypeAlias : FirPureAbstractElement(), FirClassLikeDeclaration< abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase - abstract override val typeParameters: List abstract override val status: FirDeclarationStatus + abstract override val typeParameters: List abstract val name: Name abstract override val symbol: FirTypeAliasSymbol abstract val expandedTypeRef: FirTypeRef diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameter.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameter.kt index 7012b9cbffb..cb49aa5b23e 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameter.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameter.kt @@ -22,7 +22,7 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -abstract class FirTypeParameter : FirPureAbstractElement(), FirDeclaration, FirSymbolOwner, FirAnnotationContainer { +abstract class FirTypeParameter : FirPureAbstractElement(), FirTypeParameterRef, FirDeclaration, FirSymbolOwner, FirAnnotationContainer { abstract override val source: FirSourceElement? abstract override val session: FirSession abstract override val resolvePhase: FirResolvePhase diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameterRef.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameterRef.kt new file mode 100644 index 00000000000..9ea545e6969 --- /dev/null +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameterRef.kt @@ -0,0 +1,23 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.declarations + +import org.jetbrains.kotlin.fir.FirElement +import org.jetbrains.kotlin.fir.FirSourceElement +import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol +import org.jetbrains.kotlin.fir.visitors.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +interface FirTypeParameterRef : FirElement { + override val source: FirSourceElement? + val symbol: FirTypeParameterSymbol + + override fun accept(visitor: FirVisitor, data: D): R = visitor.visitTypeParameterRef(this, data) +} diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameterRefsOwner.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameterRefsOwner.kt new file mode 100644 index 00000000000..c50a2722783 --- /dev/null +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParameterRefsOwner.kt @@ -0,0 +1,22 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.declarations + +import org.jetbrains.kotlin.fir.FirElement +import org.jetbrains.kotlin.fir.FirSourceElement +import org.jetbrains.kotlin.fir.visitors.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +interface FirTypeParameterRefsOwner : FirElement { + override val source: FirSourceElement? + val typeParameters: List + + override fun accept(visitor: FirVisitor, data: D): R = visitor.visitTypeParameterRefsOwner(this, data) +} diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParametersOwner.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParametersOwner.kt index 39c015185bc..b931c48697e 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParametersOwner.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/FirTypeParametersOwner.kt @@ -5,7 +5,6 @@ package org.jetbrains.kotlin.fir.declarations -import org.jetbrains.kotlin.fir.FirElement import org.jetbrains.kotlin.fir.FirSourceElement import org.jetbrains.kotlin.fir.visitors.* @@ -14,9 +13,9 @@ import org.jetbrains.kotlin.fir.visitors.* * DO NOT MODIFY IT MANUALLY */ -interface FirTypeParametersOwner : FirElement { +interface FirTypeParametersOwner : FirTypeParameterRefsOwner { override val source: FirSourceElement? - val typeParameters: List + override val typeParameters: List override fun accept(visitor: FirVisitor, data: D): R = visitor.visitTypeParametersOwner(this, data) } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/AbstractFirRegularClassBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/AbstractFirRegularClassBuilder.kt index 76462c9a060..687c59691e6 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/AbstractFirRegularClassBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/AbstractFirRegularClassBuilder.kt @@ -13,9 +13,9 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirRegularClass import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.builder.FirClassBuilder -import org.jetbrains.kotlin.fir.declarations.builder.FirTypeParametersOwnerBuilder +import org.jetbrains.kotlin.fir.declarations.builder.FirTypeParameterRefsOwnerBuilder import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.references.FirControlFlowGraphReference import org.jetbrains.kotlin.fir.scopes.FirScopeProvider @@ -30,15 +30,15 @@ import org.jetbrains.kotlin.name.Name */ @FirBuilderDsl -interface AbstractFirRegularClassBuilder : FirClassBuilder, FirTypeParametersOwnerBuilder { +interface AbstractFirRegularClassBuilder : FirClassBuilder, FirTypeParameterRefsOwnerBuilder { abstract override var source: FirSourceElement? abstract override val annotations: MutableList abstract override var session: FirSession + abstract override val typeParameters: MutableList abstract override var classKind: ClassKind abstract override val superTypeRefs: MutableList abstract override val declarations: MutableList abstract override var scopeProvider: FirScopeProvider - abstract override val typeParameters: MutableList abstract var resolvePhase: FirResolvePhase abstract var status: FirDeclarationStatus abstract var name: Name diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAbstractConstructorBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAbstractConstructorBuilder.kt index 91b39be19f2..44c49eebda9 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAbstractConstructorBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAbstractConstructorBuilder.kt @@ -11,7 +11,7 @@ import org.jetbrains.kotlin.fir.builder.FirBuilderDsl import org.jetbrains.kotlin.fir.declarations.FirConstructor import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirValueParameter import org.jetbrains.kotlin.fir.declarations.builder.FirFunctionBuilder import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall @@ -34,11 +34,11 @@ interface FirAbstractConstructorBuilder : FirFunctionBuilder { abstract override val annotations: MutableList abstract override var session: FirSession abstract override var returnTypeRef: FirTypeRef - abstract override val typeParameters: MutableList abstract override val valueParameters: MutableList abstract override var body: FirBlock? abstract var resolvePhase: FirResolvePhase abstract var receiverTypeRef: FirTypeRef? + abstract val typeParameters: MutableList abstract var controlFlowGraphReference: FirControlFlowGraphReference abstract var status: FirDeclarationStatus abstract var containerSource: DeserializedContainerSource? diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousFunctionBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousFunctionBuilder.kt index 7fb44922a48..cd0a63842a1 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousFunctionBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousFunctionBuilder.kt @@ -40,7 +40,6 @@ class FirAnonymousFunctionBuilder : FirFunctionBuilder, FirAnnotationContainerBu override val annotations: MutableList = mutableListOf() override lateinit var returnTypeRef: FirTypeRef var receiverTypeRef: FirTypeRef? = null - override val typeParameters: MutableList = mutableListOf() var controlFlowGraphReference: FirControlFlowGraphReference = FirEmptyControlFlowGraphReference override val valueParameters: MutableList = mutableListOf() override var body: FirBlock? = null @@ -49,6 +48,7 @@ class FirAnonymousFunctionBuilder : FirFunctionBuilder, FirAnnotationContainerBu var label: FirLabel? = null var invocationKind: InvocationKind? = null var isLambda: Boolean by kotlin.properties.Delegates.notNull() + val typeParameters: MutableList = mutableListOf() override fun build(): FirAnonymousFunction { return FirAnonymousFunctionImpl( @@ -57,7 +57,6 @@ class FirAnonymousFunctionBuilder : FirFunctionBuilder, FirAnnotationContainerBu annotations, returnTypeRef, receiverTypeRef, - typeParameters, controlFlowGraphReference, valueParameters, body, @@ -66,6 +65,7 @@ class FirAnonymousFunctionBuilder : FirFunctionBuilder, FirAnnotationContainerBu label, invocationKind, isLambda, + typeParameters, ) } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousObjectBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousObjectBuilder.kt index 5dbb8803b04..cd811324568 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousObjectBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirAnonymousObjectBuilder.kt @@ -14,6 +14,7 @@ import org.jetbrains.kotlin.fir.builder.FirBuilderDsl import org.jetbrains.kotlin.fir.declarations.FirAnonymousObject import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirResolvePhase +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.builder.FirClassBuilder import org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousObjectImpl import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall @@ -36,6 +37,7 @@ class FirAnonymousObjectBuilder : FirClassBuilder, FirAnnotationContainerBuilder override var source: FirSourceElement? = null override lateinit var session: FirSession var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR + override val typeParameters: MutableList = mutableListOf() override lateinit var classKind: ClassKind override val superTypeRefs: MutableList = mutableListOf() override val declarations: MutableList = mutableListOf() @@ -49,6 +51,7 @@ class FirAnonymousObjectBuilder : FirClassBuilder, FirAnnotationContainerBuilder source, session, resolvePhase, + typeParameters, classKind, superTypeRefs, declarations, diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassBuilder.kt index 5dd6041b1f9..0053c07ffd2 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassBuilder.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.fir.builder.FirAnnotationContainerBuilder import org.jetbrains.kotlin.fir.builder.FirBuilderDsl import org.jetbrains.kotlin.fir.declarations.FirClass import org.jetbrains.kotlin.fir.declarations.FirDeclaration +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.scopes.FirScopeProvider import org.jetbrains.kotlin.fir.types.FirTypeRef @@ -27,6 +28,7 @@ interface FirClassBuilder : FirAnnotationContainerBuilder { abstract override var source: FirSourceElement? abstract override val annotations: MutableList abstract var session: FirSession + abstract val typeParameters: MutableList abstract var classKind: ClassKind abstract val superTypeRefs: MutableList abstract val declarations: MutableList diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassImplBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassImplBuilder.kt index 0f8d1bf832d..ac5d06689e5 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassImplBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirClassImplBuilder.kt @@ -15,7 +15,7 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirRegularClass import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.builder.AbstractFirRegularClassBuilder import org.jetbrains.kotlin.fir.declarations.impl.FirClassImpl import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall @@ -38,7 +38,7 @@ open class FirClassImplBuilder : AbstractFirRegularClassBuilder, FirAnnotationCo override lateinit var session: FirSession override var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR override val annotations: MutableList = mutableListOf() - override val typeParameters: MutableList = mutableListOf() + override val typeParameters: MutableList = mutableListOf() override lateinit var status: FirDeclarationStatus override lateinit var classKind: ClassKind override val declarations: MutableList = mutableListOf() diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirConstructedClassTypeParameterRefBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirConstructedClassTypeParameterRefBuilder.kt new file mode 100644 index 00000000000..fd538ab491c --- /dev/null +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirConstructedClassTypeParameterRefBuilder.kt @@ -0,0 +1,42 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.declarations.builder + +import kotlin.contracts.* +import org.jetbrains.kotlin.fir.FirPureAbstractElement +import org.jetbrains.kotlin.fir.FirSourceElement +import org.jetbrains.kotlin.fir.builder.FirBuilderDsl +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef +import org.jetbrains.kotlin.fir.declarations.impl.FirConstructedClassTypeParameterRef +import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol +import org.jetbrains.kotlin.fir.visitors.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +@FirBuilderDsl +class FirConstructedClassTypeParameterRefBuilder { + var source: FirSourceElement? = null + lateinit var symbol: FirTypeParameterSymbol + + fun build(): FirTypeParameterRef { + return FirConstructedClassTypeParameterRef( + source, + symbol, + ) + } + +} + +@OptIn(ExperimentalContracts::class) +inline fun buildConstructedClassTypeParameterRef(init: FirConstructedClassTypeParameterRefBuilder.() -> Unit): FirTypeParameterRef { + contract { + callsInPlace(init, kotlin.contracts.InvocationKind.EXACTLY_ONCE) + } + return FirConstructedClassTypeParameterRefBuilder().apply(init).build() +} diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirConstructorBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirConstructorBuilder.kt index ea3acba974f..9d275ba73e5 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirConstructorBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirConstructorBuilder.kt @@ -13,7 +13,7 @@ import org.jetbrains.kotlin.fir.builder.FirBuilderDsl import org.jetbrains.kotlin.fir.declarations.FirConstructor import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirValueParameter import org.jetbrains.kotlin.fir.declarations.builder.FirAbstractConstructorBuilder import org.jetbrains.kotlin.fir.declarations.impl.FirConstructorImpl @@ -39,7 +39,7 @@ open class FirConstructorBuilder : FirAbstractConstructorBuilder, FirAnnotationC override var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR override lateinit var returnTypeRef: FirTypeRef override var receiverTypeRef: FirTypeRef? = null - override val typeParameters: MutableList = mutableListOf() + override val typeParameters: MutableList = mutableListOf() override val valueParameters: MutableList = mutableListOf() override lateinit var status: FirDeclarationStatus override var containerSource: DeserializedContainerSource? = null diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirEnumEntryBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirEnumEntryBuilder.kt index d00734f02f1..cd4034447ac 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirEnumEntryBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirEnumEntryBuilder.kt @@ -14,7 +14,7 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirEnumEntry import org.jetbrains.kotlin.fir.declarations.FirPropertyAccessor import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.impl.FirEnumEntryImpl import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.expressions.FirExpression @@ -40,7 +40,7 @@ class FirEnumEntryBuilder : FirAnnotationContainerBuilder { lateinit var symbol: FirVariableSymbol var initializer: FirExpression? = null override val annotations: MutableList = mutableListOf() - val typeParameters: MutableList = mutableListOf() + val typeParameters: MutableList = mutableListOf() lateinit var status: FirDeclarationStatus var containerSource: DeserializedContainerSource? = null diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirErrorFunctionBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirErrorFunctionBuilder.kt index 3d3907856e0..796b1a4ea6e 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirErrorFunctionBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirErrorFunctionBuilder.kt @@ -36,10 +36,10 @@ class FirErrorFunctionBuilder : FirAnnotationContainerBuilder { lateinit var session: FirSession var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR override val annotations: MutableList = mutableListOf() - val typeParameters: MutableList = mutableListOf() val valueParameters: MutableList = mutableListOf() lateinit var diagnostic: ConeDiagnostic lateinit var symbol: FirErrorFunctionSymbol + val typeParameters: MutableList = mutableListOf() override fun build(): FirErrorFunction { return FirErrorFunctionImpl( @@ -47,10 +47,10 @@ class FirErrorFunctionBuilder : FirAnnotationContainerBuilder { session, resolvePhase, annotations, - typeParameters, valueParameters, diagnostic, symbol, + typeParameters, ) } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirFunctionBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirFunctionBuilder.kt index 00e96067da1..eb85c5c761c 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirFunctionBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirFunctionBuilder.kt @@ -10,7 +10,6 @@ import org.jetbrains.kotlin.fir.FirSourceElement import org.jetbrains.kotlin.fir.builder.FirAnnotationContainerBuilder import org.jetbrains.kotlin.fir.builder.FirBuilderDsl import org.jetbrains.kotlin.fir.declarations.FirFunction -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter import org.jetbrains.kotlin.fir.declarations.FirValueParameter import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.expressions.FirBlock @@ -28,7 +27,6 @@ interface FirFunctionBuilder : FirAnnotationContainerBuilder { abstract override val annotations: MutableList abstract var session: FirSession abstract var returnTypeRef: FirTypeRef - abstract val typeParameters: MutableList abstract val valueParameters: MutableList abstract var body: FirBlock? override fun build(): FirFunction<*> diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirOuterClassTypeParameterRefBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirOuterClassTypeParameterRefBuilder.kt new file mode 100644 index 00000000000..d7e752a0d03 --- /dev/null +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirOuterClassTypeParameterRefBuilder.kt @@ -0,0 +1,42 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.declarations.builder + +import kotlin.contracts.* +import org.jetbrains.kotlin.fir.FirPureAbstractElement +import org.jetbrains.kotlin.fir.FirSourceElement +import org.jetbrains.kotlin.fir.builder.FirBuilderDsl +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef +import org.jetbrains.kotlin.fir.declarations.impl.FirOuterClassTypeParameterRef +import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol +import org.jetbrains.kotlin.fir.visitors.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +@FirBuilderDsl +class FirOuterClassTypeParameterRefBuilder { + var source: FirSourceElement? = null + lateinit var symbol: FirTypeParameterSymbol + + fun build(): FirTypeParameterRef { + return FirOuterClassTypeParameterRef( + source, + symbol, + ) + } + +} + +@OptIn(ExperimentalContracts::class) +inline fun buildOuterClassTypeParameterRef(init: FirOuterClassTypeParameterRefBuilder.() -> Unit): FirTypeParameterRef { + contract { + callsInPlace(init, kotlin.contracts.InvocationKind.EXACTLY_ONCE) + } + return FirOuterClassTypeParameterRefBuilder().apply(init).build() +} diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPrimaryConstructorBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPrimaryConstructorBuilder.kt index b7e02935403..3ccaf024db3 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPrimaryConstructorBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPrimaryConstructorBuilder.kt @@ -13,7 +13,7 @@ import org.jetbrains.kotlin.fir.builder.FirBuilderDsl import org.jetbrains.kotlin.fir.declarations.FirConstructor import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirValueParameter import org.jetbrains.kotlin.fir.declarations.builder.FirAbstractConstructorBuilder import org.jetbrains.kotlin.fir.declarations.impl.FirPrimaryConstructor @@ -39,7 +39,7 @@ class FirPrimaryConstructorBuilder : FirAbstractConstructorBuilder, FirAnnotatio override var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR override lateinit var returnTypeRef: FirTypeRef override var receiverTypeRef: FirTypeRef? = null - override val typeParameters: MutableList = mutableListOf() + override val typeParameters: MutableList = mutableListOf() override val valueParameters: MutableList = mutableListOf() override lateinit var status: FirDeclarationStatus override var containerSource: DeserializedContainerSource? = null diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPropertyAccessorBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPropertyAccessorBuilder.kt index bd2e450980f..4a9dfc4bb99 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPropertyAccessorBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirPropertyAccessorBuilder.kt @@ -40,13 +40,13 @@ class FirPropertyAccessorBuilder : FirFunctionBuilder, FirAnnotationContainerBui override lateinit var session: FirSession var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR override lateinit var returnTypeRef: FirTypeRef - override val typeParameters: MutableList = mutableListOf() override val valueParameters: MutableList = mutableListOf() override var body: FirBlock? = null lateinit var symbol: FirPropertyAccessorSymbol var isGetter: Boolean by kotlin.properties.Delegates.notNull() lateinit var status: FirDeclarationStatus override val annotations: MutableList = mutableListOf() + val typeParameters: MutableList = mutableListOf() @OptIn(FirImplementationDetail::class) override fun build(): FirPropertyAccessor { @@ -55,13 +55,13 @@ class FirPropertyAccessorBuilder : FirFunctionBuilder, FirAnnotationContainerBui session, resolvePhase, returnTypeRef, - typeParameters, valueParameters, body, symbol, isGetter, status, annotations, + typeParameters, ) } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSealedClassBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSealedClassBuilder.kt index 71f7b0e7895..2e1d910e8d2 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSealedClassBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSealedClassBuilder.kt @@ -16,7 +16,7 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirRegularClass import org.jetbrains.kotlin.fir.declarations.FirResolvePhase import org.jetbrains.kotlin.fir.declarations.FirSealedClass -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.builder.AbstractFirRegularClassBuilder import org.jetbrains.kotlin.fir.declarations.impl.FirSealedClassImpl import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall @@ -40,7 +40,7 @@ class FirSealedClassBuilder : AbstractFirRegularClassBuilder, FirAnnotationConta override lateinit var session: FirSession override var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR override val annotations: MutableList = mutableListOf() - override val typeParameters: MutableList = mutableListOf() + override val typeParameters: MutableList = mutableListOf() override lateinit var status: FirDeclarationStatus override lateinit var classKind: ClassKind override val declarations: MutableList = mutableListOf() diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSimpleFunctionBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSimpleFunctionBuilder.kt index 40e83d23d54..d36ac0c2bc6 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSimpleFunctionBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirSimpleFunctionBuilder.kt @@ -43,7 +43,6 @@ open class FirSimpleFunctionBuilder : FirFunctionBuilder, FirTypeParametersOwner open var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR override lateinit var returnTypeRef: FirTypeRef open var receiverTypeRef: FirTypeRef? = null - override val typeParameters: MutableList = mutableListOf() override val valueParameters: MutableList = mutableListOf() override var body: FirBlock? = null open lateinit var status: FirDeclarationStatus @@ -51,6 +50,7 @@ open class FirSimpleFunctionBuilder : FirFunctionBuilder, FirTypeParametersOwner open lateinit var name: Name open lateinit var symbol: FirFunctionSymbol override val annotations: MutableList = mutableListOf() + override val typeParameters: MutableList = mutableListOf() @OptIn(FirImplementationDetail::class) override fun build(): FirSimpleFunction { @@ -60,7 +60,6 @@ open class FirSimpleFunctionBuilder : FirFunctionBuilder, FirTypeParametersOwner resolvePhase, returnTypeRef, receiverTypeRef, - typeParameters, valueParameters, body, status, @@ -68,6 +67,7 @@ open class FirSimpleFunctionBuilder : FirFunctionBuilder, FirTypeParametersOwner name, symbol, annotations, + typeParameters, ) } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirTypeAliasBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirTypeAliasBuilder.kt index b873e72f6e2..6623af3eed1 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirTypeAliasBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirTypeAliasBuilder.kt @@ -32,8 +32,8 @@ class FirTypeAliasBuilder : FirTypeParametersOwnerBuilder, FirAnnotationContaine override var source: FirSourceElement? = null lateinit var session: FirSession var resolvePhase: FirResolvePhase = FirResolvePhase.RAW_FIR - override val typeParameters: MutableList = mutableListOf() lateinit var status: FirDeclarationStatus + override val typeParameters: MutableList = mutableListOf() lateinit var name: Name lateinit var symbol: FirTypeAliasSymbol lateinit var expandedTypeRef: FirTypeRef @@ -44,8 +44,8 @@ class FirTypeAliasBuilder : FirTypeParametersOwnerBuilder, FirAnnotationContaine source, session, resolvePhase, - typeParameters, status, + typeParameters, name, symbol, expandedTypeRef, diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirTypeParameterRefsOwnerBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirTypeParameterRefsOwnerBuilder.kt new file mode 100644 index 00000000000..22f40034189 --- /dev/null +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/builder/FirTypeParameterRefsOwnerBuilder.kt @@ -0,0 +1,25 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.declarations.builder + +import org.jetbrains.kotlin.fir.FirSourceElement +import org.jetbrains.kotlin.fir.builder.FirBuilderDsl +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRefsOwner +import org.jetbrains.kotlin.fir.visitors.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +@FirBuilderDsl +interface FirTypeParameterRefsOwnerBuilder { + abstract var source: FirSourceElement? + abstract val typeParameters: MutableList + + fun build(): FirTypeParameterRefsOwner +} diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousFunctionImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousFunctionImpl.kt index 4a3b6dc775c..c767c2167b4 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousFunctionImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousFunctionImpl.kt @@ -31,7 +31,6 @@ internal class FirAnonymousFunctionImpl( override val annotations: MutableList, override var returnTypeRef: FirTypeRef, override var receiverTypeRef: FirTypeRef?, - override val typeParameters: MutableList, override var controlFlowGraphReference: FirControlFlowGraphReference, override val valueParameters: MutableList, override var body: FirBlock?, @@ -40,6 +39,7 @@ internal class FirAnonymousFunctionImpl( override var label: FirLabel?, override var invocationKind: InvocationKind?, override val isLambda: Boolean, + override val typeParameters: MutableList, ) : FirAnonymousFunction() { override var resolvePhase: FirResolvePhase = FirResolvePhase.DECLARATIONS @@ -51,24 +51,24 @@ internal class FirAnonymousFunctionImpl( annotations.forEach { it.accept(visitor, data) } returnTypeRef.accept(visitor, data) receiverTypeRef?.accept(visitor, data) - typeParameters.forEach { it.accept(visitor, data) } controlFlowGraphReference.accept(visitor, data) valueParameters.forEach { it.accept(visitor, data) } body?.accept(visitor, data) typeRef.accept(visitor, data) label?.accept(visitor, data) + typeParameters.forEach { it.accept(visitor, data) } } override fun transformChildren(transformer: FirTransformer, data: D): FirAnonymousFunctionImpl { transformAnnotations(transformer, data) transformReturnTypeRef(transformer, data) transformReceiverTypeRef(transformer, data) - typeParameters.transformInplace(transformer, data) transformControlFlowGraphReference(transformer, data) transformValueParameters(transformer, data) body = body?.transformSingle(transformer, data) typeRef = typeRef.transformSingle(transformer, data) label = label?.transformSingle(transformer, data) + typeParameters.transformInplace(transformer, data) return this } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousObjectImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousObjectImpl.kt index 796b91dafd8..a025374d280 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousObjectImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirAnonymousObjectImpl.kt @@ -11,6 +11,7 @@ import org.jetbrains.kotlin.fir.FirSourceElement import org.jetbrains.kotlin.fir.declarations.FirAnonymousObject import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirResolvePhase +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.references.FirControlFlowGraphReference import org.jetbrains.kotlin.fir.references.impl.FirEmptyControlFlowGraphReference @@ -28,6 +29,7 @@ internal class FirAnonymousObjectImpl( override val source: FirSourceElement?, override val session: FirSession, override var resolvePhase: FirResolvePhase, + override val typeParameters: MutableList, override val classKind: ClassKind, override val superTypeRefs: MutableList, override val declarations: MutableList, @@ -43,6 +45,7 @@ internal class FirAnonymousObjectImpl( } override fun acceptChildren(visitor: FirVisitor, data: D) { + typeParameters.forEach { it.accept(visitor, data) } superTypeRefs.forEach { it.accept(visitor, data) } declarations.forEach { it.accept(visitor, data) } annotations.forEach { it.accept(visitor, data) } @@ -51,6 +54,7 @@ internal class FirAnonymousObjectImpl( } override fun transformChildren(transformer: FirTransformer, data: D): FirAnonymousObjectImpl { + typeParameters.transformInplace(transformer, data) superTypeRefs.transformInplace(transformer, data) declarations.transformInplace(transformer, data) transformAnnotations(transformer, data) diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirClassImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirClassImpl.kt index 20f573bc5f7..2104eb1d815 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirClassImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirClassImpl.kt @@ -12,7 +12,7 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirRegularClass import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.references.FirControlFlowGraphReference import org.jetbrains.kotlin.fir.references.impl.FirEmptyControlFlowGraphReference @@ -32,7 +32,7 @@ internal class FirClassImpl( override val session: FirSession, override var resolvePhase: FirResolvePhase, override val annotations: MutableList, - override val typeParameters: MutableList, + override val typeParameters: MutableList, override var status: FirDeclarationStatus, override val classKind: ClassKind, override val declarations: MutableList, diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirConstructedClassTypeParameterRef.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirConstructedClassTypeParameterRef.kt new file mode 100644 index 00000000000..b4ec326a26c --- /dev/null +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirConstructedClassTypeParameterRef.kt @@ -0,0 +1,28 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.declarations.impl + +import org.jetbrains.kotlin.fir.FirPureAbstractElement +import org.jetbrains.kotlin.fir.FirSourceElement +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef +import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol +import org.jetbrains.kotlin.fir.visitors.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +internal class FirConstructedClassTypeParameterRef( + override val source: FirSourceElement?, + override val symbol: FirTypeParameterSymbol, +) : FirPureAbstractElement(), FirTypeParameterRef { + override fun acceptChildren(visitor: FirVisitor, data: D) {} + + override fun transformChildren(transformer: FirTransformer, data: D): FirConstructedClassTypeParameterRef { + return this + } +} diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirConstructorImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirConstructorImpl.kt index 2a32e410cfc..42dac40bff6 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirConstructorImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirConstructorImpl.kt @@ -10,7 +10,7 @@ import org.jetbrains.kotlin.fir.FirSourceElement import org.jetbrains.kotlin.fir.declarations.FirConstructor import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirValueParameter import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.expressions.FirBlock @@ -33,7 +33,7 @@ internal class FirConstructorImpl( override var resolvePhase: FirResolvePhase, override var returnTypeRef: FirTypeRef, override var receiverTypeRef: FirTypeRef?, - override val typeParameters: MutableList, + override val typeParameters: MutableList, override val valueParameters: MutableList, override var status: FirDeclarationStatus, override val containerSource: DeserializedContainerSource?, diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirEnumEntryImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirEnumEntryImpl.kt index 4de820718a2..c4fd933edbb 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirEnumEntryImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirEnumEntryImpl.kt @@ -11,7 +11,7 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirEnumEntry import org.jetbrains.kotlin.fir.declarations.FirPropertyAccessor import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.expressions.FirExpression import org.jetbrains.kotlin.fir.symbols.impl.FirDelegateFieldSymbol @@ -35,7 +35,7 @@ internal class FirEnumEntryImpl( override val symbol: FirVariableSymbol, override var initializer: FirExpression?, override val annotations: MutableList, - override val typeParameters: MutableList, + override val typeParameters: MutableList, override var status: FirDeclarationStatus, override val containerSource: DeserializedContainerSource?, ) : FirEnumEntry() { diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirErrorFunctionImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirErrorFunctionImpl.kt index 4156675d0ef..1c202bb5df1 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirErrorFunctionImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirErrorFunctionImpl.kt @@ -31,10 +31,10 @@ internal class FirErrorFunctionImpl( override val session: FirSession, override var resolvePhase: FirResolvePhase, override val annotations: MutableList, - override val typeParameters: MutableList, override val valueParameters: MutableList, override val diagnostic: ConeDiagnostic, override val symbol: FirErrorFunctionSymbol, + override val typeParameters: MutableList, ) : FirErrorFunction() { override var returnTypeRef: FirTypeRef = FirErrorTypeRefImpl(null, diagnostic) override val receiverTypeRef: FirTypeRef? get() = null @@ -48,17 +48,17 @@ internal class FirErrorFunctionImpl( override fun acceptChildren(visitor: FirVisitor, data: D) { annotations.forEach { it.accept(visitor, data) } returnTypeRef.accept(visitor, data) - typeParameters.forEach { it.accept(visitor, data) } controlFlowGraphReference.accept(visitor, data) valueParameters.forEach { it.accept(visitor, data) } + typeParameters.forEach { it.accept(visitor, data) } } override fun transformChildren(transformer: FirTransformer, data: D): FirErrorFunctionImpl { transformAnnotations(transformer, data) transformReturnTypeRef(transformer, data) - typeParameters.transformInplace(transformer, data) transformControlFlowGraphReference(transformer, data) transformValueParameters(transformer, data) + typeParameters.transformInplace(transformer, data) return this } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirOuterClassTypeParameterRef.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirOuterClassTypeParameterRef.kt new file mode 100644 index 00000000000..0f713c57bf5 --- /dev/null +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirOuterClassTypeParameterRef.kt @@ -0,0 +1,28 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.declarations.impl + +import org.jetbrains.kotlin.fir.FirPureAbstractElement +import org.jetbrains.kotlin.fir.FirSourceElement +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef +import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol +import org.jetbrains.kotlin.fir.visitors.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +internal class FirOuterClassTypeParameterRef( + override val source: FirSourceElement?, + override val symbol: FirTypeParameterSymbol, +) : FirPureAbstractElement(), FirTypeParameterRef { + override fun acceptChildren(visitor: FirVisitor, data: D) {} + + override fun transformChildren(transformer: FirTransformer, data: D): FirOuterClassTypeParameterRef { + return this + } +} diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPrimaryConstructor.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPrimaryConstructor.kt index 55802e0b5ad..d08c85324cb 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPrimaryConstructor.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPrimaryConstructor.kt @@ -10,7 +10,7 @@ import org.jetbrains.kotlin.fir.FirSourceElement import org.jetbrains.kotlin.fir.declarations.FirConstructor import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirResolvePhase -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirValueParameter import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.expressions.FirBlock @@ -33,7 +33,7 @@ internal class FirPrimaryConstructor( override var resolvePhase: FirResolvePhase, override var returnTypeRef: FirTypeRef, override var receiverTypeRef: FirTypeRef?, - override val typeParameters: MutableList, + override val typeParameters: MutableList, override val valueParameters: MutableList, override var status: FirDeclarationStatus, override val containerSource: DeserializedContainerSource?, diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPropertyAccessorImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPropertyAccessorImpl.kt index 316305dc424..5d1b3d48dae 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPropertyAccessorImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirPropertyAccessorImpl.kt @@ -34,13 +34,13 @@ open class FirPropertyAccessorImpl @FirImplementationDetail constructor( override val session: FirSession, override var resolvePhase: FirResolvePhase, override var returnTypeRef: FirTypeRef, - override val typeParameters: MutableList, override val valueParameters: MutableList, override var body: FirBlock?, override val symbol: FirPropertyAccessorSymbol, override val isGetter: Boolean, override var status: FirDeclarationStatus, override val annotations: MutableList, + override val typeParameters: MutableList, ) : FirPropertyAccessor() { override val receiverTypeRef: FirTypeRef? get() = null override var controlFlowGraphReference: FirControlFlowGraphReference = FirEmptyControlFlowGraphReference @@ -53,24 +53,24 @@ open class FirPropertyAccessorImpl @FirImplementationDetail constructor( override fun acceptChildren(visitor: FirVisitor, data: D) { returnTypeRef.accept(visitor, data) - typeParameters.forEach { it.accept(visitor, data) } controlFlowGraphReference.accept(visitor, data) valueParameters.forEach { it.accept(visitor, data) } body?.accept(visitor, data) contractDescription.accept(visitor, data) status.accept(visitor, data) annotations.forEach { it.accept(visitor, data) } + typeParameters.forEach { it.accept(visitor, data) } } override fun transformChildren(transformer: FirTransformer, data: D): FirPropertyAccessorImpl { transformReturnTypeRef(transformer, data) - typeParameters.transformInplace(transformer, data) transformControlFlowGraphReference(transformer, data) transformValueParameters(transformer, data) body = body?.transformSingle(transformer, data) transformContractDescription(transformer, data) transformStatus(transformer, data) transformAnnotations(transformer, data) + typeParameters.transformInplace(transformer, data) return this } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSealedClassImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSealedClassImpl.kt index e135618ee35..fc4a2e1c5f7 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSealedClassImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSealedClassImpl.kt @@ -13,7 +13,7 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirRegularClass import org.jetbrains.kotlin.fir.declarations.FirResolvePhase import org.jetbrains.kotlin.fir.declarations.FirSealedClass -import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall import org.jetbrains.kotlin.fir.references.FirControlFlowGraphReference import org.jetbrains.kotlin.fir.references.impl.FirEmptyControlFlowGraphReference @@ -34,7 +34,7 @@ internal class FirSealedClassImpl( override val session: FirSession, override var resolvePhase: FirResolvePhase, override val annotations: MutableList, - override val typeParameters: MutableList, + override val typeParameters: MutableList, override var status: FirDeclarationStatus, override val classKind: ClassKind, override val declarations: MutableList, diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSimpleFunctionImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSimpleFunctionImpl.kt index 3fe71828379..2d81732514c 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSimpleFunctionImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirSimpleFunctionImpl.kt @@ -36,7 +36,6 @@ open class FirSimpleFunctionImpl @FirImplementationDetail constructor( override var resolvePhase: FirResolvePhase, override var returnTypeRef: FirTypeRef, override var receiverTypeRef: FirTypeRef?, - override val typeParameters: MutableList, override val valueParameters: MutableList, override var body: FirBlock?, override var status: FirDeclarationStatus, @@ -44,6 +43,7 @@ open class FirSimpleFunctionImpl @FirImplementationDetail constructor( override val name: Name, override val symbol: FirFunctionSymbol, override val annotations: MutableList, + override val typeParameters: MutableList, ) : FirSimpleFunction() { override var controlFlowGraphReference: FirControlFlowGraphReference = FirEmptyControlFlowGraphReference override var contractDescription: FirContractDescription = FirEmptyContractDescription @@ -55,25 +55,25 @@ open class FirSimpleFunctionImpl @FirImplementationDetail constructor( override fun acceptChildren(visitor: FirVisitor, data: D) { returnTypeRef.accept(visitor, data) receiverTypeRef?.accept(visitor, data) - typeParameters.forEach { it.accept(visitor, data) } controlFlowGraphReference.accept(visitor, data) valueParameters.forEach { it.accept(visitor, data) } body?.accept(visitor, data) status.accept(visitor, data) contractDescription.accept(visitor, data) annotations.forEach { it.accept(visitor, data) } + typeParameters.forEach { it.accept(visitor, data) } } override fun transformChildren(transformer: FirTransformer, data: D): FirSimpleFunctionImpl { transformReturnTypeRef(transformer, data) transformReceiverTypeRef(transformer, data) - typeParameters.transformInplace(transformer, data) transformControlFlowGraphReference(transformer, data) transformValueParameters(transformer, data) body = body?.transformSingle(transformer, data) transformStatus(transformer, data) transformContractDescription(transformer, data) transformAnnotations(transformer, data) + typeParameters.transformInplace(transformer, data) return this } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirTypeAliasImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirTypeAliasImpl.kt index dd3dfa135be..9266b1590b0 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirTypeAliasImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/declarations/impl/FirTypeAliasImpl.kt @@ -26,8 +26,8 @@ internal class FirTypeAliasImpl( override val source: FirSourceElement?, override val session: FirSession, override var resolvePhase: FirResolvePhase, - override val typeParameters: MutableList, override var status: FirDeclarationStatus, + override val typeParameters: MutableList, override val name: Name, override val symbol: FirTypeAliasSymbol, override var expandedTypeRef: FirTypeRef, @@ -38,15 +38,15 @@ internal class FirTypeAliasImpl( } override fun acceptChildren(visitor: FirVisitor, data: D) { - typeParameters.forEach { it.accept(visitor, data) } status.accept(visitor, data) + typeParameters.forEach { it.accept(visitor, data) } expandedTypeRef.accept(visitor, data) annotations.forEach { it.accept(visitor, data) } } override fun transformChildren(transformer: FirTransformer, data: D): FirTypeAliasImpl { - typeParameters.transformInplace(transformer, data) transformStatus(transformer, data) + typeParameters.transformInplace(transformer, data) expandedTypeRef = expandedTypeRef.transformSingle(transformer, data) transformAnnotations(transformer, data) return this diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirTransformer.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirTransformer.kt index b6c26dd57ac..5400bd06114 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirTransformer.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirTransformer.kt @@ -23,7 +23,9 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRefsOwner import org.jetbrains.kotlin.fir.declarations.FirTypeParametersOwner import org.jetbrains.kotlin.fir.declarations.FirMemberDeclaration import org.jetbrains.kotlin.fir.declarations.FirCallableMemberDeclaration @@ -199,10 +201,18 @@ abstract class FirTransformer : FirVisitor { + return transformElement(typeParameterRef, data) + } + open fun transformTypeParameter(typeParameter: FirTypeParameter, data: D): CompositeTransformResult { return transformElement(typeParameter, data) } + open fun transformTypeParameterRefsOwner(typeParameterRefsOwner: FirTypeParameterRefsOwner, data: D): CompositeTransformResult { + return transformElement(typeParameterRefsOwner, data) + } + open fun transformTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: D): CompositeTransformResult { return transformElement(typeParametersOwner, data) } @@ -659,10 +669,18 @@ abstract class FirTransformer : FirVisitor { + return transformTypeParameterRef(typeParameterRef, data) + } + final override fun visitTypeParameter(typeParameter: FirTypeParameter, data: D): CompositeTransformResult { return transformTypeParameter(typeParameter, data) } + final override fun visitTypeParameterRefsOwner(typeParameterRefsOwner: FirTypeParameterRefsOwner, data: D): CompositeTransformResult { + return transformTypeParameterRefsOwner(typeParameterRefsOwner, data) + } + final override fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: D): CompositeTransformResult { return transformTypeParametersOwner(typeParametersOwner, data) } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitor.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitor.kt index 56d37dbc24c..9d41eb1c1f3 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitor.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitor.kt @@ -23,7 +23,9 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRefsOwner import org.jetbrains.kotlin.fir.declarations.FirTypeParametersOwner import org.jetbrains.kotlin.fir.declarations.FirMemberDeclaration import org.jetbrains.kotlin.fir.declarations.FirCallableMemberDeclaration @@ -163,8 +165,12 @@ abstract class FirVisitor { open fun > visitCallableDeclaration(callableDeclaration: FirCallableDeclaration, data: D): R = visitElement(callableDeclaration, data) + open fun visitTypeParameterRef(typeParameterRef: FirTypeParameterRef, data: D): R = visitElement(typeParameterRef, data) + open fun visitTypeParameter(typeParameter: FirTypeParameter, data: D): R = visitElement(typeParameter, data) + open fun visitTypeParameterRefsOwner(typeParameterRefsOwner: FirTypeParameterRefsOwner, data: D): R = visitElement(typeParameterRefsOwner, data) + open fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: D): R = visitElement(typeParametersOwner, data) open fun visitMemberDeclaration(memberDeclaration: FirMemberDeclaration, data: D): R = visitElement(memberDeclaration, data) diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitorVoid.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitorVoid.kt index 4e970eed92a..18993271cb7 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitorVoid.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/visitors/FirVisitorVoid.kt @@ -23,7 +23,9 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirAnonymousInitializer import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef import org.jetbrains.kotlin.fir.declarations.FirTypeParameter +import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRefsOwner import org.jetbrains.kotlin.fir.declarations.FirTypeParametersOwner import org.jetbrains.kotlin.fir.declarations.FirMemberDeclaration import org.jetbrains.kotlin.fir.declarations.FirCallableMemberDeclaration @@ -197,10 +199,18 @@ abstract class FirVisitorVoid : FirVisitor() { visitElement(callableDeclaration) } + open fun visitTypeParameterRef(typeParameterRef: FirTypeParameterRef) { + visitElement(typeParameterRef) + } + open fun visitTypeParameter(typeParameter: FirTypeParameter) { visitElement(typeParameter) } + open fun visitTypeParameterRefsOwner(typeParameterRefsOwner: FirTypeParameterRefsOwner) { + visitElement(typeParameterRefsOwner) + } + open fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner) { visitElement(typeParametersOwner) } @@ -657,10 +667,18 @@ abstract class FirVisitorVoid : FirVisitor() { visitCallableDeclaration(callableDeclaration) } + final override fun visitTypeParameterRef(typeParameterRef: FirTypeParameterRef, data: Nothing?) { + visitTypeParameterRef(typeParameterRef) + } + final override fun visitTypeParameter(typeParameter: FirTypeParameter, data: Nothing?) { visitTypeParameter(typeParameter) } + final override fun visitTypeParameterRefsOwner(typeParameterRefsOwner: FirTypeParameterRefsOwner, data: Nothing?) { + visitTypeParameterRefsOwner(typeParameterRefsOwner) + } + final override fun visitTypeParametersOwner(typeParametersOwner: FirTypeParametersOwner, data: Nothing?) { visitTypeParametersOwner(typeParametersOwner) } diff --git a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/BuilderConfigurator.kt b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/BuilderConfigurator.kt index 309ad923550..302a1d66533 100644 --- a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/BuilderConfigurator.kt +++ b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/BuilderConfigurator.kt @@ -26,6 +26,10 @@ object BuilderConfigurator : AbstractBuilderConfigurator(FirTree fields from typeParametersOwner } + val typeParameterRefsOwnerBuilder by builder { + fields from typeParameterRefsOwner + } + val classBuilder by builder { parents += annotationContainerBuilder fields from klass without listOf("symbol", "resolvePhase") @@ -33,7 +37,7 @@ object BuilderConfigurator : AbstractBuilderConfigurator(FirTree val regularClassBuilder by builder("AbstractFirRegularClassBuilder") { parents += classBuilder - parents += typeParametersOwnerBuilder + parents += typeParameterRefsOwnerBuilder fields from regularClass } @@ -51,7 +55,7 @@ object BuilderConfigurator : AbstractBuilderConfigurator(FirTree val functionBuilder by builder { parents += annotationContainerBuilder - fields from function without listOf("symbol", "resolvePhase", "controlFlowGraphReference", "receiverTypeRef") + fields from function without listOf("symbol", "resolvePhase", "controlFlowGraphReference", "receiverTypeRef", "typeParameters") } val loopJumpBuilder by builder { diff --git a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FieldSets.kt b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FieldSets.kt index 2887942dffa..c6c8d4751fd 100644 --- a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FieldSets.kt +++ b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FieldSets.kt @@ -13,6 +13,7 @@ import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.declarationStatus import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.expression import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.reference import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.typeParameter +import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.typeParameterRef import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.typeProjection import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.typeRef import org.jetbrains.kotlin.fir.tree.generator.FirTreeBuilder.valueParameter @@ -59,7 +60,9 @@ object FieldSets { val valueParameters = fieldList(valueParameter) - val typeParameters = fieldList(typeParameter) + val typeParameters = fieldList("typeParameters", typeParameter) + + val typeParameterRefs = fieldList("typeParameters", typeParameterRef) val name = field(nameType) diff --git a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FirTreeBuilder.kt b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FirTreeBuilder.kt index 49269d04334..f335c2601c6 100644 --- a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FirTreeBuilder.kt +++ b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/FirTreeBuilder.kt @@ -29,32 +29,34 @@ object FirTreeBuilder : AbstractFirTreeBuilder() { val anonymousInitializer = element("AnonymousInitializer", Declaration, declaration, symbolOwner) val typedDeclaration = element("TypedDeclaration", Declaration, declaration, annotationContainer) val callableDeclaration = element("CallableDeclaration", Declaration, typedDeclaration, symbolOwner) - val typeParameter = element("TypeParameter", Declaration, declaration, symbolOwner, annotationContainer) - val typeParametersOwner = element("TypeParametersOwner", Declaration) + val typeParameterRef = element("TypeParameterRef", Declaration) + val typeParameter = element("TypeParameter", Declaration, typeParameterRef, declaration, symbolOwner, annotationContainer) + val typeParameterRefsOwner = element("TypeParameterRefsOwner", Declaration) + val typeParametersOwner = element("TypeParametersOwner", Declaration, typeParameterRefsOwner) val memberDeclaration = element("MemberDeclaration", Declaration, declaration, annotationContainer) val callableMemberDeclaration = element("CallableMemberDeclaration", Declaration, callableDeclaration, memberDeclaration) val variable = element("Variable", Declaration, callableDeclaration, declaration, statement) val valueParameter = element("ValueParameter", Declaration, variable) val property = element("Property", Declaration, variable, typeParametersOwner, callableMemberDeclaration) - val field = element("Field", Declaration, variable, callableMemberDeclaration) + val field = element("Field", Declaration, variable, typeParametersOwner, callableMemberDeclaration) val enumEntry = element("EnumEntry", Declaration, variable, callableMemberDeclaration) val classLikeDeclaration = element("ClassLikeDeclaration", Declaration, declaration, statement, symbolOwner) - val klass = element("Class", Declaration, classLikeDeclaration, statement, annotationContainer) - val regularClass = element("RegularClass", Declaration, memberDeclaration, typeParametersOwner, klass) + val klass = element("Class", Declaration, classLikeDeclaration, statement, annotationContainer, typeParameterRefsOwner) + val regularClass = element("RegularClass", Declaration, memberDeclaration, typeParameterRefsOwner, klass) val sealedClass = element("SealedClass", Declaration, regularClass) val typeAlias = element("TypeAlias", Declaration, classLikeDeclaration, memberDeclaration, typeParametersOwner) - val function = element("Function", Declaration, callableDeclaration, targetElement, annotationContainer, typeParametersOwner, statement) + val function = element("Function", Declaration, callableDeclaration, targetElement, annotationContainer, typeParameterRefsOwner, statement) val contractDescriptionOwner = element("ContractDescriptionOwner", Declaration) - val simpleFunction = element("SimpleFunction", Declaration, function, callableMemberDeclaration, contractDescriptionOwner) - val propertyAccessor = element("PropertyAccessor", Declaration, function, contractDescriptionOwner) - val constructor = element("Constructor", Declaration, function, callableMemberDeclaration) + val simpleFunction = element("SimpleFunction", Declaration, function, callableMemberDeclaration, contractDescriptionOwner, typeParametersOwner) + val propertyAccessor = element("PropertyAccessor", Declaration, function, contractDescriptionOwner, typeParametersOwner) + val constructor = element("Constructor", Declaration, function, callableMemberDeclaration, typeParameterRefsOwner) val file = element("File", Declaration, annotationContainer, declaration) - val anonymousFunction = element("AnonymousFunction", Declaration, function, expression) + val anonymousFunction = element("AnonymousFunction", Declaration, function, expression, typeParametersOwner) val anonymousObject = element("AnonymousObject", Declaration, klass, expression) val diagnosticHolder = element("DiagnosticHolder", Diagnostics) @@ -92,7 +94,7 @@ object FirTreeBuilder : AbstractFirTreeBuilder() { val arraySetCall = element("AugmentedArraySetCall", Expression, statement) val classReferenceExpression = element("ClassReferenceExpression", Expression, expression) val errorExpression = element("ErrorExpression", Expression, expression, diagnosticHolder) - val errorFunction = element("ErrorFunction", Declaration, function, diagnosticHolder) + val errorFunction = element("ErrorFunction", Declaration, function, diagnosticHolder, typeParametersOwner) val qualifiedAccessExpression = element("QualifiedAccessExpression", Expression, expression, qualifiedAccess) val functionCall = element("FunctionCall", Expression, qualifiedAccessExpression, call) val delegatedConstructorCall = element("DelegatedConstructorCall", Expression, resolvable, call) diff --git a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt index cf9a34ac627..5ab8bdbfe9d 100644 --- a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt +++ b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt @@ -31,6 +31,8 @@ object ImplementationConfigurator : AbstractFirTreeImplementationConfigurator() } } + impl(typeParameterRef, "FirOuterClassTypeParameterRef") + impl(typeParameterRef, "FirConstructedClassTypeParameterRef") noImpl(declarationStatus) noImpl(resolvedDeclarationStatus) diff --git a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/NodeConfigurator.kt b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/NodeConfigurator.kt index 0d7aba10ba6..23587823420 100644 --- a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/NodeConfigurator.kt +++ b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/NodeConfigurator.kt @@ -23,6 +23,7 @@ import org.jetbrains.kotlin.fir.tree.generator.FieldSets.superTypeRefs import org.jetbrains.kotlin.fir.tree.generator.FieldSets.symbol import org.jetbrains.kotlin.fir.tree.generator.FieldSets.symbolWithPackage import org.jetbrains.kotlin.fir.tree.generator.FieldSets.typeArguments +import org.jetbrains.kotlin.fir.tree.generator.FieldSets.typeParameterRefs import org.jetbrains.kotlin.fir.tree.generator.FieldSets.typeParameters import org.jetbrains.kotlin.fir.tree.generator.FieldSets.typeRefField import org.jetbrains.kotlin.fir.tree.generator.FieldSets.valueParameters @@ -48,10 +49,18 @@ object NodeConfigurator : AbstractFieldConfigurator(FirTreeBuild +symbolWithPackage("fir.symbols", "AbstractFirBasedSymbol", "E") } + typeParameterRef.configure { + +symbol(typeParameterSymbolType.type) + } + typeParametersOwner.configure { +typeParameters } + typeParameterRefsOwner.configure { + +typeParameterRefs + } + resolvable.configure { +field("calleeReference", reference).withTransform() } @@ -94,10 +103,11 @@ object NodeConfigurator : AbstractFieldConfigurator(FirTreeBuild errorFunction.configure { parentArg(function, "F", errorFunction) +symbol("FirErrorFunctionSymbol") + +typeParameters } memberDeclaration.configure { - +typeParameters + +typeParameterRefs +status.withTransform() } @@ -245,6 +255,7 @@ object NodeConfigurator : AbstractFieldConfigurator(FirTreeBuild } typeAlias.configure { + +typeParameters parentArg(classLikeDeclaration, "F", typeAlias) +name +symbol("FirTypeAliasSymbol") @@ -260,6 +271,7 @@ object NodeConfigurator : AbstractFieldConfigurator(FirTreeBuild isMutable = true } +booleanField("isLambda") + +typeParameters } typeParameter.configure { @@ -278,6 +290,7 @@ object NodeConfigurator : AbstractFieldConfigurator(FirTreeBuild +name +symbol("FirFunctionSymbol") +annotations + +typeParameters } contractDescriptionOwner.configure { @@ -302,6 +315,7 @@ object NodeConfigurator : AbstractFieldConfigurator(FirTreeBuild +booleanField("isSetter") +status.withTransform() +annotations + +typeParameters } declarationStatus.configure { diff --git a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/printer/implementation.kt b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/printer/implementation.kt index 3173aedc702..c012b6b573e 100644 --- a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/printer/implementation.kt +++ b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/printer/implementation.kt @@ -97,10 +97,13 @@ fun SmartPrinter.printImplementation(implementation: Implementation) { } } + element.allFields.filter { it.type.contains("Symbol") && it !is FieldList } .takeIf { it.isNotEmpty() && !isInterface && !isAbstract && - !element.type.contains("Reference") && !element.type.contains("ResolvedQualifier") + !element.type.contains("Reference") + && !element.type.contains("ResolvedQualifier") + && !element.type.endsWith("Ref") } ?.let { symbolFields -> println("init {")