Get rid of FirNamedDeclaration

This commit is contained in:
Mikhail Glukhikh
2020-02-03 14:37:18 +03:00
parent 7a52cf103a
commit 677129ad20
16 changed files with 45 additions and 94 deletions
@@ -30,13 +30,12 @@ object FirTreeBuilder : AbstractFirTreeBuilder() {
val anonymousInitializer = element("AnonymousInitializer", Declaration, declaration)
val typedDeclaration = element("TypedDeclaration", Declaration, declaration, annotationContainer)
val callableDeclaration = element("CallableDeclaration", Declaration, typedDeclaration, symbolOwner)
val namedDeclaration = element("NamedDeclaration", Declaration, declaration)
val typeParameter = element("TypeParameter", Declaration, namedDeclaration, symbolOwner, annotationContainer)
val typeParameter = element("TypeParameter", Declaration, declaration, symbolOwner, annotationContainer)
val typeParametersOwner = element("TypeParametersOwner", Declaration)
val memberDeclaration = element("MemberDeclaration", Declaration, namedDeclaration, annotationContainer)
val memberDeclaration = element("MemberDeclaration", Declaration, declaration, annotationContainer)
val callableMemberDeclaration = element("CallableMemberDeclaration", Declaration, callableDeclaration, memberDeclaration)
val variable = element("Variable", Declaration, callableDeclaration, namedDeclaration, statement)
val variable = element("Variable", Declaration, callableDeclaration, declaration, statement)
val valueParameter = element("ValueParameter", Declaration, variable)
val property = element("Property", Declaration, variable, controlFlowGraphOwner, typeParametersOwner, callableMemberDeclaration)
val field = element("Field", Declaration, variable, callableMemberDeclaration)
@@ -85,10 +85,6 @@ object NodeConfigurator : AbstractFieldConfigurator<FirTreeBuilder>(FirTreeBuild
+field("containerSource", type(DeserializedContainerSource::class), nullable = true)
}
namedDeclaration.configure {
+name
}
function.configure {
withArg("F", "FirFunction<F>")
parentArg(callableDeclaration, "F", "F")
@@ -103,6 +99,7 @@ object NodeConfigurator : AbstractFieldConfigurator<FirTreeBuilder>(FirTreeBuild
}
memberDeclaration.configure {
+name
+typeParameters
+status.withTransform()
}
@@ -255,6 +252,7 @@ object NodeConfigurator : AbstractFieldConfigurator<FirTreeBuilder>(FirTreeBuild
typeParameter.configure {
parentArg(symbolOwner, "F", typeParameter)
+name
+symbol("FirTypeParameterSymbol")
+field(varianceType)
+booleanField("isReified")
@@ -333,6 +331,7 @@ object NodeConfigurator : AbstractFieldConfigurator<FirTreeBuilder>(FirTreeBuild
variable.configure {
withArg("F", variable)
parentArg(callableDeclaration, "F", "F")
+name
+symbol("FirVariableSymbol", "F")
+initializer.withTransform()
+field("delegate", expression, nullable = true)