New J2K: Use proper tree structure in kt elements

This commit is contained in:
Simon Ogorodnik
2018-05-24 23:05:41 +03:00
committed by Ilya Kirillov
parent 13475cde01
commit 278cf82346
@@ -20,36 +20,41 @@ import org.jetbrains.kotlin.j2k.tree.*
import org.jetbrains.kotlin.j2k.tree.visitors.JKVisitor import org.jetbrains.kotlin.j2k.tree.visitors.JKVisitor
class JKKtPropertyImpl( class JKKtPropertyImpl(
override var modifierList: JKModifierList, modifierList: JKModifierList,
override var type: JKType, type: JKType,
override var name: JKNameIdentifier, name: JKNameIdentifier,
override var initializer: JKExpression, initializer: JKExpression,
override var getter: JKBlock, getter: JKBlock,
override var setter: JKBlock setter: JKBlock
) : JKElementBase(), JKKtProperty { ) : JKBranchElementBase(), JKKtProperty {
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtProperty(this, data) override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtProperty(this, data)
override fun <D> acceptChildren(visitor: JKVisitor<Unit, D>, data: D) {
modifierList.accept(visitor, data)
type.accept(visitor, data)
name.accept(visitor, data)
initializer.accept(visitor, data)
getter.accept(visitor, data)
setter.accept(visitor, data)
}
override val valid: Boolean override val valid: Boolean
get() = true get() = true
override var modifierList: JKModifierList by child(modifierList)
override var type: JKType by child(type)
override var name: JKNameIdentifier by child(name)
override val initializer: JKExpression by child(initializer)
override val getter: JKBlock by child(getter)
override val setter: JKBlock by child(setter)
} }
class JKKtFunctionImpl( class JKKtFunctionImpl(
override var returnType: JKType, returnType: JKType,
override var name: JKNameIdentifier, name: JKNameIdentifier,
override var valueArguments: List<JKValueArgument>, valueArguments: List<JKValueArgument>,
override var block: JKBlock, block: JKBlock,
override var modifierList: JKModifierList modifierList: JKModifierList
) : JKElementBase(), JKKtFunction { ) : JKBranchElementBase(), JKKtFunction {
override val valid: Boolean override val valid: Boolean
get() = true get() = true
override var returnType: JKType by child(returnType)
override var name: JKNameIdentifier by child(name)
override var valueArguments: List<JKValueArgument> by children(valueArguments)
override var block: JKBlock by child(block)
override var modifierList: JKModifierList by child(modifierList)
} }
sealed class JKKtQualifierImpl : JKQualifier, JKElementBase() { sealed class JKKtQualifierImpl : JKQualifier, JKElementBase() {