Generate get/set for local delegated properties as accessor calls.

This commit is contained in:
Dmitry Petrov
2016-09-02 14:42:40 +03:00
committed by Dmitry Petrov
parent f2e778d2d0
commit 8b95992af1
8 changed files with 104 additions and 6 deletions
@@ -72,6 +72,7 @@ interface IrOperator {
object DESTRUCTURING_DECLARATION : IrOperatorImpl("DESTRUCTURING_DECLARATION")
object GET_PROPERTY : IrOperatorImpl("GET_PROPERTY")
object GET_LOCAL_PROPERTY : IrOperatorImpl("GET_LOCAL_PROPERTY")
object IF : IrOperatorImpl("IF")
object WHEN : IrOperatorImpl("WHEN")
@@ -69,6 +69,12 @@ class RenderIrElementVisitor : IrElementVisitor<String, Nothing?> {
override fun visitAnonymousInitializer(declaration: IrAnonymousInitializer, data: Nothing?): String =
"ANONYMOUS_INITIALIZER ${declaration.descriptor.name}"
override fun visitLocalDelegatedProperty(declaration: IrLocalDelegatedProperty, data: Nothing?): String =
"LOCAL_DELEGATED_PROPERTY ${declaration.descriptor.render()}"
override fun visitLocalPropertyAccessor(declaration: IrLocalPropertyAccessor, data: Nothing?): String =
"LOCAL_PROPERTY_ACCESSOR ${declaration.descriptor.name}" // can't render, see nullability for modality
override fun visitExpressionBody(body: IrExpressionBody, data: Nothing?): String =
"EXPRESSION_BODY"