[FIR] Render backing fields by FirRenderer

This commit is contained in:
Roman Golyshev
2021-09-14 18:06:09 +03:00
committed by Space
parent 36b02082a6
commit bb2b0107c6
15 changed files with 63 additions and 0 deletions
@@ -518,6 +518,12 @@ class FirRenderer(builder: StringBuilder, private val mode: RenderMode = RenderM
if (!mode.renderPropertyAccessors) return
println()
pushIndent()
if (property.hasExplicitBackingField) {
property.backingField?.accept(this)
println()
}
property.getter?.accept(this)
if (property.getter?.body == null) {
println()
@@ -531,6 +537,17 @@ class FirRenderer(builder: StringBuilder, private val mode: RenderMode = RenderM
popIndent()
}
override fun visitBackingField(backingField: FirBackingField) {
print(backingField.visibility.asString() + " ")
print("<explicit backing field>: ")
backingField.returnTypeRef.accept(this)
backingField.initializer?.let {
print(" = ")
it.accept(this)
}
}
override fun visitSimpleFunction(simpleFunction: FirSimpleFunction) {
visitCallableDeclaration(simpleFunction)
simpleFunction.body?.renderBody()