New J2K: remove JKVisitor with type parameters
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
/*
|
||||
* Copyright 2010-2019 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.
|
||||
*/
|
||||
|
||||
import java.io.File
|
||||
|
||||
|
||||
private val JK_ROOT = File("./nj2k/src/org/jetbrains/kotlin/nj2k/tree")
|
||||
|
||||
private val JK_OUT_ROOT = File(JK_ROOT, "visitors")
|
||||
|
||||
private val JK_KT_FILE = File(JK_ROOT, "k.kt")
|
||||
private val JK_JAVA_FILE = File(JK_ROOT, "j.kt")
|
||||
private val JK_COMMON_FILE = File(JK_ROOT, "jk.kt")
|
||||
|
||||
|
||||
val interfaceRegex = "(interface|abstract class)\\s+(JK[a-zA-Z]+)\\s+?:?\\s+(JK[a-zA-Z]+)?".toRegex()
|
||||
|
||||
|
||||
data class InterfaceData(val name: String, val extends: String?)
|
||||
|
||||
fun File.interfaceNames() =
|
||||
sequenceOf(this)
|
||||
.map { it.readText() }
|
||||
.flatMap { interfaceRegex.findAll(it) }
|
||||
.map { match -> InterfaceData(match.groupValues[2], match.groupValues.getOrNull(3)) }
|
||||
.toList()
|
||||
|
||||
|
||||
fun String.safeVarName() = when (this) {
|
||||
"class" -> "klass"
|
||||
else -> this
|
||||
}
|
||||
|
||||
fun genVisitors(commonData: List<InterfaceData>, uncommonData: List<InterfaceData>, visitorName: String, transformerName: String) {
|
||||
|
||||
val interfaceData = commonData + uncommonData
|
||||
|
||||
val pkg = "package org.jetbrains.kotlin.nj2k.tree.visitors"
|
||||
|
||||
File(JK_OUT_ROOT, "$visitorName.kt").writeText(buildString {
|
||||
appendln(pkg)
|
||||
appendln()
|
||||
appendln("import org.jetbrains.kotlin.nj2k.tree.*")
|
||||
appendln()
|
||||
appendln("abstract class $visitorName {")
|
||||
interfaceData.joinTo(this, separator = "\n") { (name, ext) ->
|
||||
val nameWithoutPrefix = name.removePrefix("JK")
|
||||
val argName = nameWithoutPrefix.decapitalize().safeVarName()
|
||||
val generifyCall = if (name != "JKTreeElement") "= visit${ext!!.removePrefix("JK")}($argName)" else ""
|
||||
val modifier = if (name == "JKTreeElement") "abstract" else "open"
|
||||
"""
|
||||
| $modifier fun visit$nameWithoutPrefix($argName: $name) $generifyCall
|
||||
""".trimMargin()
|
||||
}
|
||||
appendln()
|
||||
appendln("}")
|
||||
})
|
||||
|
||||
|
||||
File(JK_OUT_ROOT, "${visitorName}WithCommentsPrinting.kt").writeText(buildString {
|
||||
appendln(pkg)
|
||||
appendln()
|
||||
appendln("import org.jetbrains.kotlin.nj2k.tree.*")
|
||||
appendln()
|
||||
|
||||
appendln("abstract class ${visitorName}WithCommentsPrinting : $visitorName() {")
|
||||
appendln(
|
||||
"""
|
||||
| abstract fun printLeftNonCodeElements(element: JKNonCodeElementsListOwner)
|
||||
| abstract fun printRightNonCodeElements(element: JKNonCodeElementsListOwner)
|
||||
|
|
||||
""".trimMargin()
|
||||
)
|
||||
|
||||
interfaceData.joinTo(this, separator = "\n\n") { (name, ext) ->
|
||||
val nameWithoutPrefix = name.removePrefix("JK")
|
||||
val argName = nameWithoutPrefix.decapitalize().safeVarName()
|
||||
val arg = "$argName: $name"
|
||||
val rawVisitSuffix = "Raw"
|
||||
val generifyCall = if (name != "JKTreeElement") "= visit${ext!!.removePrefix("JK")}$rawVisitSuffix($argName)" else ""
|
||||
val modifier = if (name == "JKTreeElement") "abstract" else "open"
|
||||
"""
|
||||
| override fun visit$nameWithoutPrefix($arg) {
|
||||
| printLeftNonCodeElements($argName)
|
||||
| visit$nameWithoutPrefix$rawVisitSuffix($argName)
|
||||
| printRightNonCodeElements($argName)
|
||||
| }
|
||||
|
|
||||
| $modifier fun visit$nameWithoutPrefix$rawVisitSuffix($arg) $generifyCall
|
||||
""".trimMargin()
|
||||
}
|
||||
appendln()
|
||||
appendln("}")
|
||||
})
|
||||
}
|
||||
|
||||
genVisitors(JK_COMMON_FILE.interfaceNames(), JK_JAVA_FILE.interfaceNames() + JK_KT_FILE.interfaceNames(), "JKVisitor", "JKTransformer")
|
||||
@@ -40,7 +40,7 @@ class NewCodeBuilder(context: NewJ2kConverterContext) {
|
||||
JKClass.ClassKind.COMPANION -> "companion object"
|
||||
}
|
||||
|
||||
inner class Visitor : JKVisitorWithCommentsPrinting {
|
||||
inner class Visitor : JKVisitorWithCommentsPrinting() {
|
||||
private val printedTokens = mutableSetOf<JKNonCodeElement>()
|
||||
|
||||
//TODO move to ast transformation phase
|
||||
|
||||
@@ -69,9 +69,9 @@ abstract class JKElementBase : JKTreeElement, Cloneable {
|
||||
|
||||
}
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitTreeElement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitTreeElement(this)
|
||||
|
||||
override fun <D> acceptChildren(visitor: JKVisitor<Unit, D>, data: D) {}
|
||||
override fun acceptChildren(visitor: JKVisitor) {}
|
||||
|
||||
override fun copy(): JKTreeElement =
|
||||
clone() as JKTreeElement
|
||||
@@ -96,8 +96,8 @@ abstract class JKBranchElementBase : JKElementBase(), JKBranchElement {
|
||||
return JKListChild(childNum++)
|
||||
}
|
||||
|
||||
override fun <D> acceptChildren(visitor: JKVisitor<Unit, D>, data: D) {
|
||||
forEachChild { it.accept(visitor, data) }
|
||||
override fun acceptChildren(visitor: JKVisitor) {
|
||||
forEachChild { it.accept(visitor) }
|
||||
}
|
||||
|
||||
protected inline fun forEachChild(block: (JKTreeElement) -> Unit) {
|
||||
|
||||
@@ -36,7 +36,7 @@ class JKJavaFieldImpl(
|
||||
modalityElement: JKModalityModifierElement,
|
||||
mutabilityElement: JKMutabilityModifierElement
|
||||
) : JKJavaField(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaField(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaField(this)
|
||||
|
||||
override var annotationList: JKAnnotationList by child(annotationList)
|
||||
override var initializer: JKExpression by child(initializer)
|
||||
@@ -61,7 +61,7 @@ class JKJavaMethodImpl(
|
||||
visibilityElement: JKVisibilityModifierElement,
|
||||
modalityElement: JKModalityModifierElement
|
||||
) : JKJavaMethod(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaMethod(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaMethod(this)
|
||||
|
||||
override var returnType: JKTypeElement by child(returnType)
|
||||
override var name: JKNameIdentifier by child(name)
|
||||
@@ -80,7 +80,7 @@ class JKJavaLiteralExpressionImpl(
|
||||
override val literal: String,
|
||||
override val type: JKLiteralExpression.LiteralType
|
||||
) : JKJavaLiteralExpression, JKElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaLiteralExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaLiteralExpression(this)
|
||||
|
||||
init {
|
||||
require(type in setOf(STRING, CHAR, INT, LONG, FLOAT, DOUBLE))
|
||||
@@ -217,7 +217,7 @@ class JKJavaMethodCallExpressionImpl(
|
||||
arguments: JKArgumentList,
|
||||
typeArgumentList: JKTypeArgumentList = JKTypeArgumentListImpl()
|
||||
) : JKJavaMethodCallExpression, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaMethodCallExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaMethodCallExpression(this)
|
||||
|
||||
override var arguments: JKArgumentList by child(arguments)
|
||||
override var typeArgumentList: JKTypeArgumentList by child(typeArgumentList)
|
||||
@@ -225,13 +225,13 @@ class JKJavaMethodCallExpressionImpl(
|
||||
|
||||
class JKClassBodyImpl(declarations: List<JKDeclaration> = emptyList()) : JKClassBody() {
|
||||
override var declarations: List<JKDeclaration> by children(declarations)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitClassBody(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitClassBody(this)
|
||||
}
|
||||
|
||||
class JKEmptyClassBodyImpl : JKEmptyClassBody() {
|
||||
override var declarations: List<JKDeclaration> by children(emptyList())
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitEmptyClassBody(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitEmptyClassBody(this)
|
||||
}
|
||||
|
||||
class JKJavaNewExpressionImpl(
|
||||
@@ -244,21 +244,21 @@ class JKJavaNewExpressionImpl(
|
||||
override var typeArgumentList: JKTypeArgumentList by child(typeArgumentList)
|
||||
override var classBody: JKClassBody by child(classBody)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaNewExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaNewExpression(this)
|
||||
}
|
||||
|
||||
class JKJavaNewEmptyArrayImpl(initializer: List<JKExpression>, type: JKTypeElement) : JKJavaNewEmptyArray, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override val type by child(type)
|
||||
override var initializer by children(initializer)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaNewEmptyArray(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaNewEmptyArray(this)
|
||||
}
|
||||
|
||||
class JKJavaNewArrayImpl(initializer: List<JKExpression>, type: JKTypeElement) : JKJavaNewArray, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override val type by child(type)
|
||||
override var initializer by children(initializer)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaNewArray(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaNewArray(this)
|
||||
}
|
||||
|
||||
class JKJavaPrimitiveTypeImpl(override val jvmPrimitiveType: JvmPrimitiveType) : JKJavaPrimitiveType {
|
||||
@@ -298,7 +298,7 @@ class JKReturnStatementImpl(
|
||||
expression: JKExpression,
|
||||
label: JKLabel = JKLabelEmptyImpl()
|
||||
) : JKReturnStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitReturnStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitReturnStatement(this)
|
||||
|
||||
override val expression by child(expression)
|
||||
override var label by child(label)
|
||||
@@ -309,7 +309,7 @@ class JKJavaAssertStatementImpl(condition: JKExpression, description: JKExpressi
|
||||
override val description by child(description)
|
||||
override val condition by child(condition)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaAssertStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaAssertStatement(this)
|
||||
}
|
||||
|
||||
class JKJavaForLoopStatementImpl(initializer: JKStatement, condition: JKExpression, updaters: List<JKStatement>, body: JKStatement) :
|
||||
@@ -319,7 +319,7 @@ class JKJavaForLoopStatementImpl(initializer: JKStatement, condition: JKExpressi
|
||||
override var condition by child(condition)
|
||||
override var initializer by child(initializer)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaForLoopStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaForLoopStatement(this)
|
||||
}
|
||||
|
||||
|
||||
@@ -332,7 +332,7 @@ class JKJavaPolyadicExpressionImpl(operands: List<JKExpression>, override var to
|
||||
return if (index < 1 || index > tokens.size) null else tokens[index - 1]
|
||||
}
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaPolyadicExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaPolyadicExpression(this)
|
||||
}
|
||||
|
||||
class JKJavaAssignmentExpressionImpl(
|
||||
@@ -340,7 +340,7 @@ class JKJavaAssignmentExpressionImpl(
|
||||
expression: JKExpression,
|
||||
override var operator: JKOperator
|
||||
) : JKBranchElementBase(), JKJavaAssignmentExpression, PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaAssignmentExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaAssignmentExpression(this)
|
||||
override var field: JKAssignableExpression by child(field)
|
||||
override var expression: JKExpression by child(expression)
|
||||
}
|
||||
@@ -351,13 +351,13 @@ class JKJavaSwitchStatementImpl(
|
||||
) : JKJavaSwitchStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override var expression: JKExpression by child(expression)
|
||||
override var cases: List<JKJavaSwitchCase> by children(cases)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaSwitchStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaSwitchStatement(this)
|
||||
}
|
||||
|
||||
class JKJavaDefaultSwitchCaseImpl(statements: List<JKStatement>) : JKJavaDefaultSwitchCase, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override var statements: List<JKStatement> by children(statements)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaDefaultSwitchCase(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaDefaultSwitchCase(this)
|
||||
}
|
||||
|
||||
class JKJavaLabelSwitchCaseImpl(
|
||||
@@ -366,12 +366,12 @@ class JKJavaLabelSwitchCaseImpl(
|
||||
) : JKJavaLabelSwitchCase, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override var statements: List<JKStatement> by children(statements)
|
||||
override var label: JKExpression by child(label)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaLabelSwitchCase(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaLabelSwitchCase(this)
|
||||
}
|
||||
|
||||
class JKJavaThrowStatementImpl(exception: JKExpression) : JKJavaThrowStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override var exception: JKExpression by child(exception)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaThrowStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaThrowStatement(this)
|
||||
}
|
||||
|
||||
class JKJavaTryStatementImpl(
|
||||
@@ -384,7 +384,7 @@ class JKJavaTryStatementImpl(
|
||||
override var tryBlock: JKBlock by child(tryBlock)
|
||||
override var finallyBlock: JKBlock by child(finallyBlock)
|
||||
override var catchSections: List<JKJavaTryCatchSection> by children(catchSections)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaTryStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaTryStatement(this)
|
||||
}
|
||||
|
||||
class JKJavaTryCatchSectionImpl(
|
||||
@@ -393,7 +393,7 @@ class JKJavaTryCatchSectionImpl(
|
||||
) : JKJavaTryCatchSection, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override var parameter: JKParameter by child(parameter)
|
||||
override var block: JKBlock by child(block)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaTryCatchSection(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaTryCatchSection(this)
|
||||
}
|
||||
|
||||
class JKJavaSynchronizedStatementImpl(
|
||||
@@ -402,7 +402,7 @@ class JKJavaSynchronizedStatementImpl(
|
||||
) : JKJavaSynchronizedStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override val lockExpression: JKExpression by child(lockExpression)
|
||||
override val body: JKBlock by child(body)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaSynchronizedStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaSynchronizedStatement(this)
|
||||
}
|
||||
|
||||
class JKJavaAnnotationMethodImpl(
|
||||
@@ -418,7 +418,7 @@ class JKJavaAnnotationMethodImpl(
|
||||
override var typeParameterList: JKTypeParameterList by child(JKTypeParameterListImpl())
|
||||
override var annotationList: JKAnnotationList by child(JKAnnotationListImpl())
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaAnnotationMethod(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaAnnotationMethod(this)
|
||||
}
|
||||
|
||||
class JKKtAnnotationArrayInitializerExpressionImpl(initializers: List<JKAnnotationMemberValue>) : JKKtAnnotationArrayInitializerExpression,
|
||||
@@ -427,10 +427,10 @@ class JKKtAnnotationArrayInitializerExpressionImpl(initializers: List<JKAnnotati
|
||||
|
||||
override val initializers: List<JKAnnotationMemberValue> by children(initializers)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtAnnotationArrayInitializerExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtAnnotationArrayInitializerExpression(this)
|
||||
}
|
||||
|
||||
class JKJavaStaticInitDeclarationImpl(block: JKBlock) : JKJavaStaticInitDeclaration() {
|
||||
override var block: JKBlock by child(block)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitJavaStaticInitDeclaration(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitJavaStaticInitDeclaration(this)
|
||||
}
|
||||
@@ -31,7 +31,7 @@ import org.jetbrains.kotlin.psi.KtClass
|
||||
|
||||
class JKTreeRootImpl(element: JKTreeElement) : JKTreeRoot, JKBranchElementBase() {
|
||||
override var element by child(element)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitTreeRoot(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitTreeRoot(this)
|
||||
}
|
||||
|
||||
class JKFileImpl(
|
||||
@@ -40,7 +40,7 @@ class JKFileImpl(
|
||||
declarationList: List<JKDeclaration>
|
||||
) : JKFile, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitFile(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitFile(this)
|
||||
|
||||
override var packageDeclaration: JKPackageDeclaration by child(packageDeclaration)
|
||||
override var importList: JKImportList by child(importList)
|
||||
@@ -58,7 +58,7 @@ class JKClassImpl(
|
||||
visibilityElement: JKVisibilityModifierElement,
|
||||
modalityElement: JKModalityModifierElement
|
||||
) : JKClass(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitClass(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitClass(this)
|
||||
|
||||
override var name by child(name)
|
||||
override val inheritance by child(inheritance)
|
||||
@@ -72,7 +72,7 @@ class JKClassImpl(
|
||||
}
|
||||
|
||||
class JKNameIdentifierImpl(override val value: String) : JKNameIdentifier, JKElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitNameIdentifier(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitNameIdentifier(this)
|
||||
}
|
||||
|
||||
class JKForLoopVariableImpl(
|
||||
@@ -86,7 +86,7 @@ class JKForLoopVariableImpl(
|
||||
override var type by child(type)
|
||||
override var annotationList by child(annotationList)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitForLoopVariable(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitForLoopVariable(this)
|
||||
}
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ class JKParameterImpl(
|
||||
initializer: JKExpression = JKStubExpressionImpl(),
|
||||
annotationList: JKAnnotationList = JKAnnotationListImpl()
|
||||
) : JKParameter(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitParameter(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitParameter(this)
|
||||
|
||||
override var initializer by child(initializer)
|
||||
override var name by child(name)
|
||||
@@ -108,7 +108,7 @@ class JKParameterImpl(
|
||||
class JKBlockImpl(statements: List<JKStatement> = emptyList()) : JKBlock(), PsiOwner by PsiOwnerImpl() {
|
||||
constructor(vararg statements: JKStatement) : this(statements.toList())
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitBlock(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitBlock(this)
|
||||
|
||||
override var statements by children(statements)
|
||||
}
|
||||
@@ -118,7 +118,7 @@ class JKBinaryExpressionImpl(
|
||||
right: JKExpression,
|
||||
override var operator: JKOperator
|
||||
) : JKBinaryExpression, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitBinaryExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitBinaryExpression(this)
|
||||
override var right by child(right)
|
||||
override var left by child(left)
|
||||
}
|
||||
@@ -126,14 +126,14 @@ class JKBinaryExpressionImpl(
|
||||
|
||||
class JKPrefixExpressionImpl(expression: JKExpression, override var operator: JKOperator) : JKPrefixExpression, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitPrefixExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitPrefixExpression(this)
|
||||
|
||||
override var expression by child(expression)
|
||||
}
|
||||
|
||||
class JKPostfixExpressionImpl(expression: JKExpression, override var operator: JKOperator) : JKPostfixExpression, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitPostfixExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitPostfixExpression(this)
|
||||
|
||||
override var expression by child(expression)
|
||||
}
|
||||
@@ -142,7 +142,7 @@ class JKExpressionListImpl(expressions: List<JKExpression> = emptyList()) : JKEx
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
constructor(vararg expresions: JKExpression) : this(expresions.asList())
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitExpressionList(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitExpressionList(this)
|
||||
|
||||
override var expressions by children(expressions)
|
||||
}
|
||||
@@ -152,14 +152,14 @@ class JKQualifiedExpressionImpl(
|
||||
override var operator: JKQualifier,
|
||||
selector: JKExpression
|
||||
) : JKQualifiedExpression, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitQualifiedExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitQualifiedExpression(this)
|
||||
|
||||
override var receiver: JKExpression by child(receiver)
|
||||
override var selector: JKExpression by child(selector)
|
||||
}
|
||||
|
||||
class JKExpressionStatementImpl(expression: JKExpression) : JKExpressionStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitExpressionStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitExpressionStatement(this)
|
||||
|
||||
override val expression: JKExpression by child(expression)
|
||||
}
|
||||
@@ -168,7 +168,7 @@ class JKDeclarationStatementImpl(declaredStatements: List<JKDeclaration>) : JKDe
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override val declaredStatements by children(declaredStatements)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitDeclarationStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitDeclarationStatement(this)
|
||||
|
||||
override var rightNonCodeElements: List<JKNonCodeElement> = listOf(JKSpaceElementImpl("\n"))
|
||||
}
|
||||
@@ -177,7 +177,7 @@ class JKArrayAccessExpressionImpl(
|
||||
expression: JKExpression,
|
||||
indexExpression: JKExpression
|
||||
) : JKArrayAccessExpression, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitArrayAccessExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitArrayAccessExpression(this)
|
||||
|
||||
override var expression: JKExpression by child(expression)
|
||||
override var indexExpression: JKExpression by child(indexExpression)
|
||||
@@ -185,21 +185,21 @@ class JKArrayAccessExpressionImpl(
|
||||
|
||||
class JKParenthesizedExpressionImpl(expression: JKExpression) : JKParenthesizedExpression, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitParenthesizedExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitParenthesizedExpression(this)
|
||||
|
||||
override var expression: JKExpression by child(expression)
|
||||
}
|
||||
|
||||
class JKTypeCastExpressionImpl(expression: JKExpression, type: JKTypeElement) : JKTypeCastExpression, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitTypeCastExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitTypeCastExpression(this)
|
||||
|
||||
override var expression by child(expression)
|
||||
override var type by child(type)
|
||||
}
|
||||
|
||||
class JKTypeElementImpl(override var type: JKType) : JKTypeElement, JKElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitTypeElement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitTypeElement(this)
|
||||
}
|
||||
|
||||
data class JKClassTypeImpl(
|
||||
@@ -233,7 +233,7 @@ class JKNullLiteral : JKLiteralExpression, JKElementBase(), PsiOwner by PsiOwner
|
||||
override val type: LiteralType
|
||||
get() = NULL
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitLiteralExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitLiteralExpression(this)
|
||||
}
|
||||
|
||||
class JKBooleanLiteral(val value: Boolean) : JKLiteralExpression, JKElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
@@ -242,7 +242,7 @@ class JKBooleanLiteral(val value: Boolean) : JKLiteralExpression, JKElementBase(
|
||||
override val type: LiteralType
|
||||
get() = BOOLEAN
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitLiteralExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitLiteralExpression(this)
|
||||
}
|
||||
|
||||
fun JKLiteralExpression.LiteralType.toJkType(symbolProvider: JKSymbolProvider): JKType {
|
||||
@@ -279,11 +279,11 @@ class JKLocalVariableImpl(
|
||||
|
||||
override var mutabilityElement by child(mutabilityElement)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitLocalVariable(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitLocalVariable(this)
|
||||
}
|
||||
|
||||
class JKStubExpressionImpl : JKStubExpression, JKElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitStubExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitStubExpression(this)
|
||||
}
|
||||
|
||||
object JKBodyStubImpl : JKBodyStub() {
|
||||
@@ -296,13 +296,13 @@ object JKBodyStubImpl : JKBodyStub() {
|
||||
get() = emptyList()
|
||||
set(value) {}
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitBodyStub(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitBodyStub(this)
|
||||
|
||||
override fun <D> acceptChildren(visitor: JKVisitor<Unit, D>, data: D) {}
|
||||
override fun acceptChildren(visitor: JKVisitor) {}
|
||||
|
||||
override var parent: JKElement?
|
||||
get() = null
|
||||
set (it) {}
|
||||
set(it) {}
|
||||
|
||||
override fun detach(from: JKElement) {
|
||||
}
|
||||
@@ -314,48 +314,48 @@ object JKBodyStubImpl : JKBodyStub() {
|
||||
class JKBlockStatementImpl(block: JKBlock) : JKBlockStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override var block by child(block)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitBlockStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitBlockStatement(this)
|
||||
}
|
||||
|
||||
class JKBlockStatementWithoutBracketsImpl(statements: List<JKStatement>) : JKBlockStatementWithoutBrackets(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override var statements by children(statements)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitBlockStatementWithoutBrackets(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitBlockStatementWithoutBrackets(this)
|
||||
}
|
||||
|
||||
class JKThisExpressionImpl(qualifierLabel: JKLabel) : JKThisExpression, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override var qualifierLabel: JKLabel by child(qualifierLabel)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitThisExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitThisExpression(this)
|
||||
}
|
||||
|
||||
class JKSuperExpressionImpl(qualifierLabel: JKLabel = JKLabelEmptyImpl()) : JKSuperExpression, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override var qualifierLabel: JKLabel by child(qualifierLabel)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitSuperExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitSuperExpression(this)
|
||||
}
|
||||
|
||||
class JKWhileStatementImpl(condition: JKExpression, body: JKStatement) : JKWhileStatement(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override var condition by child(condition)
|
||||
override var body by child(body)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitWhileStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitWhileStatement(this)
|
||||
}
|
||||
|
||||
class JKDoWhileStatementImpl(body: JKStatement, condition: JKExpression) : JKDoWhileStatement(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override var condition by child(condition)
|
||||
override var body by child(body)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitDoWhileStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitDoWhileStatement(this)
|
||||
}
|
||||
|
||||
class JKBreakStatementImpl : JKBreakStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitBreakStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitBreakStatement(this)
|
||||
}
|
||||
|
||||
class JKBreakWithLabelStatementImpl(override var label: JKNameIdentifier) : JKBreakWithLabelStatement(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitBreakWithLabelStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitBreakWithLabelStatement(this)
|
||||
}
|
||||
|
||||
class JKIfStatementImpl(condition: JKExpression, thenBranch: JKStatement) : JKIfStatement(),
|
||||
@@ -363,7 +363,7 @@ class JKIfStatementImpl(condition: JKExpression, thenBranch: JKStatement) : JKIf
|
||||
override var thenBranch by child(thenBranch)
|
||||
override var condition by child(condition)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitIfStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitIfStatement(this)
|
||||
}
|
||||
|
||||
class JKIfElseStatementImpl(condition: JKExpression, thenBranch: JKStatement, elseBranch: JKStatement) : JKIfElseStatement(),
|
||||
@@ -372,7 +372,7 @@ class JKIfElseStatementImpl(condition: JKExpression, thenBranch: JKStatement, el
|
||||
override var thenBranch by child(thenBranch)
|
||||
override var condition by child(condition)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitIfElseStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitIfElseStatement(this)
|
||||
}
|
||||
|
||||
class JKIfElseExpressionImpl(condition: JKExpression, thenBranch: JKExpression, elseBranch: JKExpression) : JKIfElseExpression,
|
||||
@@ -381,12 +381,12 @@ class JKIfElseExpressionImpl(condition: JKExpression, thenBranch: JKExpression,
|
||||
override var thenBranch by child(thenBranch)
|
||||
override var condition by child(condition)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitIfElseExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitIfElseExpression(this)
|
||||
}
|
||||
|
||||
class JKClassAccessExpressionImpl(override var identifier: JKClassSymbol) : JKClassAccessExpression, JKElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitClassAccessExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitClassAccessExpression(this)
|
||||
}
|
||||
|
||||
class JKLambdaExpressionImpl(
|
||||
@@ -400,7 +400,7 @@ class JKLambdaExpressionImpl(
|
||||
override var parameters by children(parameters)
|
||||
override var functionalType by child(functionalType)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitLambdaExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitLambdaExpression(this)
|
||||
}
|
||||
|
||||
class JKInheritanceInfoImpl(
|
||||
@@ -410,7 +410,7 @@ class JKInheritanceInfoImpl(
|
||||
override var extends: List<JKTypeElement> by children(extends)
|
||||
override var implements: List<JKTypeElement> by children(implements)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitInheritanceInfo(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitInheritanceInfo(this)
|
||||
}
|
||||
|
||||
|
||||
@@ -423,17 +423,17 @@ class JKDelegationConstructorCallImpl(
|
||||
override val expression: JKExpression by child(expression)
|
||||
override var arguments: JKArgumentList by child(arguments)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitDelegationConstructorCall(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitDelegationConstructorCall(this)
|
||||
}
|
||||
|
||||
class JKFieldAccessExpressionImpl(override var identifier: JKFieldSymbol) : JKFieldAccessExpression, JKElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitFieldAccessExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitFieldAccessExpression(this)
|
||||
}
|
||||
|
||||
class JKPackageAccessExpressionImpl(override var identifier: JKPackageSymbol) : JKPackageAccessExpression, JKElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitPackageAccessExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitPackageAccessExpression(this)
|
||||
}
|
||||
|
||||
|
||||
@@ -445,28 +445,28 @@ val JKStatement.statements: List<JKStatement>
|
||||
}
|
||||
|
||||
class JKLabelEmptyImpl : JKLabelEmpty, JKElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitLabelEmpty(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitLabelEmpty(this)
|
||||
}
|
||||
|
||||
class JKLabelTextImpl(label: JKNameIdentifier) : JKLabelText, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override val label: JKNameIdentifier by child(label)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitLabelText(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitLabelText(this)
|
||||
}
|
||||
|
||||
class JKContinueStatementImpl(label: JKLabel) : JKContinueStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override var label: JKLabel by child(label)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitContinueStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitContinueStatement(this)
|
||||
}
|
||||
|
||||
class JKLabeledStatementImpl(statement: JKStatement, labels: List<JKNameIdentifier>) : JKLabeledStatement, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override var statement: JKStatement by child(statement)
|
||||
override val labels: List<JKNameIdentifier> by children(labels)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitLabeledStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitLabeledStatement(this)
|
||||
}
|
||||
|
||||
class JKEmptyStatementImpl : JKEmptyStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitEmptyStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitEmptyStatement(this)
|
||||
}
|
||||
|
||||
class PsiOwnerImpl(override var psi: PsiElement? = null) : PsiOwner
|
||||
@@ -478,13 +478,13 @@ inline fun <reified Elem : PsiElement> JKElement.psi(): Elem? = (this as? PsiOwn
|
||||
|
||||
class JKTypeParameterListImpl(typeParameters: List<JKTypeParameter> = emptyList()) : JKTypeParameterList, JKBranchElementBase() {
|
||||
override var typeParameters by children(typeParameters)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitTypeParameterList(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitTypeParameterList(this)
|
||||
}
|
||||
|
||||
class JKTypeParameterImpl(name: JKNameIdentifier, upperBounds: List<JKTypeElement>) : JKTypeParameter, JKBranchElementBase() {
|
||||
override var name: JKNameIdentifier by child(name)
|
||||
override var upperBounds: List<JKTypeElement> by children(upperBounds)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitTypeParameter(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitTypeParameter(this)
|
||||
}
|
||||
|
||||
data class JKVarianceTypeParameterTypeImpl(
|
||||
@@ -511,7 +511,7 @@ class JKEnumConstantImpl(
|
||||
override var initializer: JKExpression by child(JKStubExpressionImpl())
|
||||
override var annotationList by child(annotationList)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitEnumConstant(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitEnumConstant(this)
|
||||
}
|
||||
|
||||
fun JKTypeElement.present(): Boolean =
|
||||
@@ -522,7 +522,7 @@ class JKForInStatementImpl(declaration: JKDeclaration, iterationExpression: JKEx
|
||||
override var declaration: JKDeclaration by child(declaration)
|
||||
override var iterationExpression: JKExpression by child(iterationExpression)
|
||||
override var body: JKStatement by child(body)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitForInStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitForInStatement(this)
|
||||
}
|
||||
|
||||
fun JKStatement.isEmpty(): Boolean =
|
||||
@@ -535,12 +535,12 @@ fun JKStatement.isEmpty(): Boolean =
|
||||
|
||||
class JKPackageDeclarationImpl(packageName: JKNameIdentifier) : JKPackageDeclaration() {
|
||||
override var packageName: JKNameIdentifier by child(packageName)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitPackageDeclaration(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitPackageDeclaration(this)
|
||||
}
|
||||
|
||||
class JKAnnotationListImpl(annotations: List<JKAnnotation> = emptyList()) : JKAnnotationList, JKBranchElementBase() {
|
||||
override var annotations: List<JKAnnotation> by children(annotations)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitAnnotationList(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitAnnotationList(this)
|
||||
}
|
||||
|
||||
class JKAnnotationImpl(
|
||||
@@ -548,7 +548,7 @@ class JKAnnotationImpl(
|
||||
arguments: List<JKAnnotationParameter> = emptyList()
|
||||
) : JKAnnotation, JKBranchElementBase() {
|
||||
override var arguments: List<JKAnnotationParameter> by children(arguments)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitAnnotation(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitAnnotation(this)
|
||||
|
||||
override var rightNonCodeElements: List<JKNonCodeElement> = listOf(JKSpaceElementImpl("\n"))
|
||||
}
|
||||
@@ -556,7 +556,7 @@ class JKAnnotationImpl(
|
||||
class JKTypeArgumentListImpl(typeArguments: List<JKTypeElement> = emptyList()) : JKTypeArgumentList, JKBranchElementBase(),
|
||||
PsiOwner by PsiOwnerImpl() {
|
||||
override val typeArguments: List<JKTypeElement> by children(typeArguments)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitTypeArgumentList(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitTypeArgumentList(this)
|
||||
|
||||
}
|
||||
|
||||
@@ -566,27 +566,27 @@ class JKClassLiteralExpressionImpl(
|
||||
) : JKClassLiteralExpression, JKBranchElementBase(), PsiOwner by PsiOwnerImpl() {
|
||||
override val classType: JKTypeElement by child(classType)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitClassLiteralExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitClassLiteralExpression(this)
|
||||
}
|
||||
|
||||
class JKImportStatementImpl(name: JKNameIdentifier) : JKImportStatement, JKBranchElementBase() {
|
||||
override val name: JKNameIdentifier by child(name)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitImportStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitImportStatement(this)
|
||||
|
||||
override var rightNonCodeElements: List<JKNonCodeElement> = listOf(JKSpaceElementImpl("\n"))
|
||||
}
|
||||
|
||||
class JKImportListImpl(imports: List<JKImportStatement>) : JKImportList, JKBranchElementBase() {
|
||||
override var imports by children(imports)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitImportList(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitImportList(this)
|
||||
}
|
||||
|
||||
|
||||
class JKAnnotationParameterImpl(value: JKAnnotationMemberValue) : JKAnnotationParameter, JKBranchElementBase() {
|
||||
override var value: JKAnnotationMemberValue by child(value)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitAnnotationParameter(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitAnnotationParameter(this)
|
||||
}
|
||||
|
||||
class JKAnnotationNameParameterImpl(
|
||||
@@ -596,7 +596,7 @@ class JKAnnotationNameParameterImpl(
|
||||
override var value: JKAnnotationMemberValue by child(value)
|
||||
override val name: JKNameIdentifier by child(name)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitAnnotationNameParameter(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitAnnotationNameParameter(this)
|
||||
}
|
||||
|
||||
class JKNamedArgumentImpl(
|
||||
@@ -606,12 +606,12 @@ class JKNamedArgumentImpl(
|
||||
override var value by child(value)
|
||||
override val name by child(name)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitNamedArgument(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitNamedArgument(this)
|
||||
}
|
||||
|
||||
class JKArgumentImpl(value: JKExpression) : JKArgument, JKBranchElementBase() {
|
||||
override var value by child(value)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitArgument(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitArgument(this)
|
||||
}
|
||||
|
||||
class JKArgumentListImpl(arguments: List<JKArgument> = emptyList()) : JKArgumentList, JKBranchElementBase() {
|
||||
@@ -620,24 +620,24 @@ class JKArgumentListImpl(arguments: List<JKArgument> = emptyList()) : JKArgument
|
||||
|
||||
override var arguments by children(arguments)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitArgumentList(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitArgumentList(this)
|
||||
}
|
||||
|
||||
|
||||
class JKMutabilityModifierElementImpl(override var mutability: Mutability) : JKMutabilityModifierElement() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitMutabilityModifierElement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitMutabilityModifierElement(this)
|
||||
}
|
||||
|
||||
class JKModalityModifierElementImpl(override var modality: Modality) : JKModalityModifierElement() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitModalityModifierElement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitModalityModifierElement(this)
|
||||
}
|
||||
|
||||
class JKVisibilityModifierElementImpl(override var visibility: Visibility) : JKVisibilityModifierElement() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitVisibilityModifierElement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitVisibilityModifierElement(this)
|
||||
}
|
||||
|
||||
class JKOtherModifierElementImpl(override var otherModifier: OtherModifier) : JKOtherModifierElement() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitExtraModifierElement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitOtherModifierElement(this)
|
||||
}
|
||||
|
||||
class JKMethodReferenceExpressionImpl(
|
||||
@@ -650,5 +650,5 @@ class JKMethodReferenceExpressionImpl(
|
||||
override val functionalType by child(functionalType)
|
||||
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitMethodReferenceExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitMethodReferenceExpression(this)
|
||||
}
|
||||
@@ -35,7 +35,7 @@ class JKKtPropertyImpl(
|
||||
modalityElement: JKModalityModifierElement,
|
||||
mutabilityElement: JKMutabilityModifierElement
|
||||
) : JKKtProperty(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtProperty(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtProperty(this)
|
||||
|
||||
override var annotationList: JKAnnotationList by child(annotationList)
|
||||
override var type by child(type)
|
||||
@@ -63,7 +63,7 @@ class JKKtFunctionImpl(
|
||||
visibilityElement: JKVisibilityModifierElement,
|
||||
modalityElement: JKModalityModifierElement
|
||||
) : JKKtFunction(), PsiOwner by PsiOwnerImpl() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtFunction(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtFunction(this)
|
||||
|
||||
override var returnType: JKTypeElement by child(returnType)
|
||||
override var name: JKNameIdentifier by child(name)
|
||||
@@ -88,7 +88,7 @@ class JKKtCallExpressionImpl(
|
||||
arguments: JKArgumentList,
|
||||
typeArgumentList: JKTypeArgumentList = JKTypeArgumentListImpl()
|
||||
) : JKKtMethodCallExpression, JKBranchElementBase() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtMethodCallExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtMethodCallExpression(this)
|
||||
|
||||
override var arguments: JKArgumentList by child(arguments)
|
||||
override var typeArgumentList: JKTypeArgumentList by child(typeArgumentList)
|
||||
@@ -99,7 +99,7 @@ class JKKtLiteralExpressionImpl(
|
||||
override val type: JKLiteralExpression.LiteralType
|
||||
) : JKKtLiteralExpression,
|
||||
JKElementBase() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtLiteralExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtLiteralExpression(this)
|
||||
}
|
||||
|
||||
class JKKtSingleValueOperatorToken(val psiToken: KtSingleValueToken) : JKKtOperatorToken {
|
||||
@@ -141,7 +141,7 @@ class JKKtAlsoCallExpressionImpl(
|
||||
override val identifier: JKMethodSymbol,
|
||||
typeArgumentList: JKTypeArgumentList = JKTypeArgumentListImpl()
|
||||
) : JKKtAlsoCallExpression, JKBranchElementBase() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtAlsoCallExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtAlsoCallExpression(this)
|
||||
override var statement
|
||||
get() = arguments.arguments.first().value.cast<JKLambdaExpressionImpl>().statement
|
||||
set(it) {
|
||||
@@ -162,7 +162,7 @@ class JKKtAssignmentStatementImpl(
|
||||
) : JKKtAssignmentStatement() {
|
||||
override var field: JKAssignableExpression by child(field)
|
||||
override var expression by child(expression)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtAssignmentStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtAssignmentStatement(this)
|
||||
|
||||
override var rightNonCodeElements: List<JKNonCodeElement> = listOf(JKSpaceElementImpl("\n"))
|
||||
}
|
||||
@@ -195,7 +195,7 @@ class JKKtConstructorImpl(
|
||||
override var visibilityElement by child(visibilityElement)
|
||||
override var modalityElement by child(modalityElement)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtConstructor(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtConstructor(this)
|
||||
}
|
||||
|
||||
class JKKtPrimaryConstructorImpl(
|
||||
@@ -220,7 +220,7 @@ class JKKtPrimaryConstructorImpl(
|
||||
override var visibilityElement by child(visibilityElement)
|
||||
override var modalityElement by child(modalityElement)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtPrimaryConstructor(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtPrimaryConstructor(this)
|
||||
}
|
||||
|
||||
class JKKtWhenStatementImpl(
|
||||
@@ -229,23 +229,23 @@ class JKKtWhenStatementImpl(
|
||||
) : JKKtWhenStatement() {
|
||||
override var expression: JKExpression by child(expression)
|
||||
override var cases: List<JKKtWhenCase> by children(cases)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtWhenStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtWhenStatement(this)
|
||||
}
|
||||
|
||||
class JKKtWhenCaseImpl(labels: List<JKKtWhenLabel>, statement: JKStatement) : JKKtWhenCase, JKBranchElementBase() {
|
||||
override var labels: List<JKKtWhenLabel> by children(labels)
|
||||
override var statement: JKStatement by child(statement)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtWhenCase(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtWhenCase(this)
|
||||
|
||||
}
|
||||
|
||||
class JKKtElseWhenLabelImpl : JKKtElseWhenLabel, JKElementBase() {
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtElseWhenLabel(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtElseWhenLabel(this)
|
||||
}
|
||||
|
||||
class JKKtValueWhenLabelImpl(expression: JKExpression) : JKKtValueWhenLabel, JKBranchElementBase() {
|
||||
override var expression: JKExpression by child(expression)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtValueWhenLabel(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtValueWhenLabel(this)
|
||||
}
|
||||
|
||||
|
||||
@@ -254,12 +254,12 @@ class JKKtIsExpressionImpl(expression: JKExpression, type: JKTypeElement) : JKKt
|
||||
override var type by child(type)
|
||||
override var expression by child(expression)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtIsExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtIsExpression(this)
|
||||
}
|
||||
|
||||
class JKKtInitDeclarationImpl(block: JKBlock) : JKKtInitDeclaration() {
|
||||
override var block: JKBlock by child(block)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtInitDeclaration(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtInitDeclaration(this)
|
||||
}
|
||||
|
||||
|
||||
@@ -269,13 +269,13 @@ class JKKtConvertedFromForLoopSyntheticWhileStatementImpl(
|
||||
) : JKKtConvertedFromForLoopSyntheticWhileStatement(), PsiOwner by PsiOwnerImpl() {
|
||||
override var variableDeclaration: JKStatement by child(variableDeclaration)
|
||||
override var whileStatement: JKWhileStatement by child(whileStatement)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R =
|
||||
visitor.visitKtConvertedFromForLoopSyntheticWhileStatement(this, data)
|
||||
override fun accept(visitor: JKVisitor) =
|
||||
visitor.visitKtConvertedFromForLoopSyntheticWhileStatement(this)
|
||||
}
|
||||
|
||||
class JKKtThrowExpressionImpl(exception: JKExpression) : JKKtThrowExpression, JKBranchElementBase() {
|
||||
override var exception: JKExpression by child(exception)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtThrowExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtThrowExpression(this)
|
||||
}
|
||||
|
||||
class JKKtTryExpressionImpl(
|
||||
@@ -286,7 +286,7 @@ class JKKtTryExpressionImpl(
|
||||
override var tryBlock: JKBlock by child(tryBlock)
|
||||
override var finallyBlock: JKBlock by child(finallyBlock)
|
||||
override var catchSections: List<JKKtTryCatchSection> by children(catchSections)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtTryExpression(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtTryExpression(this)
|
||||
}
|
||||
|
||||
class JKKtTryCatchSectionImpl(
|
||||
@@ -295,7 +295,7 @@ class JKKtTryCatchSectionImpl(
|
||||
) : JKKtTryCatchSection, JKBranchElementBase() {
|
||||
override var parameter: JKParameter by child(parameter)
|
||||
override var block: JKBlock by child(block)
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtTryCatchSection(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtTryCatchSection(this)
|
||||
}
|
||||
|
||||
class JKKtGetterOrSetterImpl(
|
||||
@@ -307,7 +307,7 @@ class JKKtGetterOrSetterImpl(
|
||||
|
||||
override var visibilityElement by child(visibilityElement)
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtGetterOrSetter(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtGetterOrSetter(this)
|
||||
}
|
||||
|
||||
class JKKtEmptyGetterOrSetterImpl : JKKtEmptyGetterOrSetter, JKBranchElementBase() {
|
||||
@@ -317,5 +317,5 @@ class JKKtEmptyGetterOrSetterImpl : JKKtEmptyGetterOrSetter, JKBranchElementBase
|
||||
|
||||
override var visibilityElement by child(JKVisibilityModifierElementImpl(Visibility.PUBLIC))
|
||||
|
||||
override fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R = visitor.visitKtEmptyGetterOrSetter(this, data)
|
||||
override fun accept(visitor: JKVisitor) = visitor.visitKtEmptyGetterOrSetter(this)
|
||||
}
|
||||
@@ -21,14 +21,8 @@ import org.jetbrains.kotlin.nj2k.tree.impl.*
|
||||
import org.jetbrains.kotlin.nj2k.tree.visitors.JKVisitor
|
||||
|
||||
interface JKTreeElement : JKElement, JKNonCodeElementsListOwner {
|
||||
fun <R, D> accept(visitor: JKVisitor<R, D>, data: D): R
|
||||
|
||||
fun <R> accept(visitor: JKVisitor<R, Nothing?>): R = accept(visitor, null)
|
||||
|
||||
fun <D> acceptChildren(visitor: JKVisitor<Unit, D>, data: D)
|
||||
|
||||
fun acceptChildren(visitor: JKVisitor<Unit, Nothing?>) = acceptChildren(visitor, null)
|
||||
|
||||
fun accept(visitor: JKVisitor)
|
||||
fun acceptChildren(visitor: JKVisitor)
|
||||
fun copy(): JKTreeElement
|
||||
}
|
||||
|
||||
|
||||
-220
@@ -1,220 +0,0 @@
|
||||
/*
|
||||
* Copyright 2010-2017 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright 2010-2017 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright 2010-2017 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import java.io.File
|
||||
|
||||
|
||||
val JK_ROOT = File("./nj2k/src/org/jetbrains/kotlin/nj2k/tree")
|
||||
|
||||
val JK_OUT_ROOT = File(JK_ROOT, "visitors")
|
||||
|
||||
val JK_KT_FILE = File(JK_ROOT, "k.kt")
|
||||
val JK_JAVA_FILE = File(JK_ROOT, "j.kt")
|
||||
val JK_COMMON_FILE = File(JK_ROOT, "jk.kt")
|
||||
|
||||
|
||||
val interfaceRegex = "(interface|abstract class)\\s+(JK[a-zA-Z]+)\\s+?:?\\s+(JK[a-zA-Z]+)?".toRegex()
|
||||
|
||||
|
||||
data class InterfaceData(val name: String, val extends: String?)
|
||||
|
||||
fun File.interfaceNames() =
|
||||
sequenceOf(this)
|
||||
.map { it.readText() }
|
||||
.flatMap { interfaceRegex.findAll(it) }
|
||||
.map { match -> InterfaceData(match.groupValues[2], match.groupValues.getOrNull(3)) }
|
||||
.toList()
|
||||
|
||||
|
||||
fun String.safeVarName() = when (this) {
|
||||
"class" -> "klass"
|
||||
else -> this
|
||||
}
|
||||
|
||||
fun genVisitors(commonData: List<InterfaceData>, uncommonData: List<InterfaceData>, visitorName: String, transformerName: String) {
|
||||
|
||||
val interfaceData = commonData + uncommonData
|
||||
|
||||
val pkg = "package org.jetbrains.kotlin.nj2k.tree.visitors"
|
||||
|
||||
fun String.firstCommonInterfaceName(): String {
|
||||
val data = interfaceData.find { it.name == this }!!
|
||||
if (commonData.contains(data))
|
||||
return this
|
||||
return data.extends!!.firstCommonInterfaceName()
|
||||
}
|
||||
|
||||
File(JK_OUT_ROOT, "$visitorName.kt").writeText(buildString {
|
||||
appendln(pkg)
|
||||
appendln()
|
||||
appendln("import org.jetbrains.kotlin.nj2k.tree.*")
|
||||
appendln()
|
||||
appendln("interface $visitorName<out R, in D> {")
|
||||
interfaceData.joinTo(this, separator = "\n") { (name, ext) ->
|
||||
val nameWithoutPrefix = name.removePrefix("JK")
|
||||
val argName = nameWithoutPrefix.decapitalize().safeVarName()
|
||||
val generifyCall = if (name != "JKTreeElement") "= visit${ext!!.removePrefix("JK")}($argName, data)" else ""
|
||||
"""
|
||||
| fun visit$nameWithoutPrefix($argName: $name, data: D): R $generifyCall
|
||||
""".trimMargin()
|
||||
}
|
||||
appendln()
|
||||
appendln("}")
|
||||
})
|
||||
|
||||
|
||||
File(JK_OUT_ROOT, "${visitorName}Void.kt").writeText(buildString {
|
||||
appendln(pkg)
|
||||
appendln()
|
||||
appendln("import org.jetbrains.kotlin.nj2k.tree.*")
|
||||
appendln()
|
||||
|
||||
appendln("interface ${visitorName}Void : $visitorName<Unit, Nothing?> {")
|
||||
interfaceData.joinTo(this, separator = "\n") { (name, ext) ->
|
||||
val nameWithoutPrefix = name.removePrefix("JK")
|
||||
val argName = nameWithoutPrefix.decapitalize().safeVarName()
|
||||
val arg = "$argName: $name"
|
||||
val generifyCall = if (name != "JKTreeElement") "= visit${ext!!.removePrefix("JK")}($argName, null)" else ""
|
||||
"""
|
||||
| fun visit$nameWithoutPrefix($arg) $generifyCall
|
||||
| override fun visit$nameWithoutPrefix($arg, data: Nothing?) = visit$nameWithoutPrefix($argName)
|
||||
""".trimMargin()
|
||||
}
|
||||
appendln()
|
||||
appendln("}")
|
||||
})
|
||||
|
||||
File(JK_OUT_ROOT, "${visitorName}WithCommentsPrinting.kt").writeText(buildString {
|
||||
appendln(pkg)
|
||||
appendln()
|
||||
appendln("import org.jetbrains.kotlin.nj2k.tree.*")
|
||||
appendln()
|
||||
|
||||
appendln("interface ${visitorName}WithCommentsPrinting : ${visitorName}Void {")
|
||||
appendln(
|
||||
"""
|
||||
| fun printLeftNonCodeElements(element: JKNonCodeElementsListOwner)
|
||||
| fun printRightNonCodeElements(element: JKNonCodeElementsListOwner)
|
||||
|
|
||||
""".trimMargin()
|
||||
)
|
||||
|
||||
interfaceData.joinTo(this, separator = "\n\n") { (name, ext) ->
|
||||
val nameWithoutPrefix = name.removePrefix("JK")
|
||||
val argName = nameWithoutPrefix.decapitalize().safeVarName()
|
||||
val arg = "$argName: $name"
|
||||
val rawVisitSuffix = "Raw"
|
||||
val generifyCall = if (name != "JKTreeElement") "= visit${ext!!.removePrefix("JK")}$rawVisitSuffix($argName)" else ""
|
||||
"""
|
||||
| override fun visit$nameWithoutPrefix($arg) {
|
||||
| printLeftNonCodeElements($argName)
|
||||
| visit$nameWithoutPrefix$rawVisitSuffix($argName)
|
||||
| printRightNonCodeElements($argName)
|
||||
| }
|
||||
|
|
||||
| fun visit$nameWithoutPrefix$rawVisitSuffix($arg) $generifyCall
|
||||
""".trimMargin()
|
||||
}
|
||||
appendln()
|
||||
appendln("}")
|
||||
})
|
||||
|
||||
/*File(JK_OUT_ROOT, "$transformerName.kt").writeText(buildString {
|
||||
appendln(pkg)
|
||||
appendln()
|
||||
appendln("import org.jetbrains.kotlin.nj2k.tree.*")
|
||||
appendln()
|
||||
|
||||
appendln("interface $transformerName<in D> : JKVisitor<JKTreeElement, D> {")
|
||||
|
||||
interfaceData.joinTo(this, separator = "\n") { (name, ext) ->
|
||||
val nameWithoutPrefix = name.removePrefix("JK")
|
||||
val argName = nameWithoutPrefix.decapitalize().safeVarName()
|
||||
|
||||
val leastCommonName = name.firstCommonInterfaceName()
|
||||
val cast = "as $leastCommonName".takeIf { leastCommonName == name } ?: ""
|
||||
|
||||
val generifyCall = if (name != "JKTreeElement") "= visit${ext!!.removePrefix("JK")}($argName, data) $cast" else ""
|
||||
|
||||
"""
|
||||
| override fun visit$nameWithoutPrefix($argName: $name, data: D): $leastCommonName $generifyCall
|
||||
""".trimMargin()
|
||||
}
|
||||
appendln()
|
||||
appendln("}")
|
||||
})
|
||||
|
||||
|
||||
File(JK_OUT_ROOT, "${transformerName}Void.kt").writeText(buildString {
|
||||
appendln(pkg)
|
||||
appendln()
|
||||
appendln("import org.jetbrains.kotlin.nj2k.tree.*")
|
||||
appendln()
|
||||
|
||||
|
||||
appendln("interface ${transformerName}Void : $transformerName<Nothing?> {")
|
||||
interfaceData.joinTo(this, separator = "\n") { (name, ext) ->
|
||||
val nameWithoutPrefix = name.removePrefix("JK")
|
||||
val argName = nameWithoutPrefix.decapitalize().safeVarName()
|
||||
val arg = "$argName: $name"
|
||||
|
||||
val leastCommonName = name.firstCommonInterfaceName()
|
||||
val cast = "as $leastCommonName".takeIf { leastCommonName == name } ?: ""
|
||||
val generifyCall = if (name != "JKTreeElement") "= visit${ext!!.removePrefix("JK")}($argName) $cast" else ""
|
||||
|
||||
"""
|
||||
| fun visit$nameWithoutPrefix($arg): $leastCommonName $generifyCall
|
||||
| override fun visit$nameWithoutPrefix($arg, data: Nothing?): $leastCommonName = visit$nameWithoutPrefix($argName)
|
||||
""".trimMargin()
|
||||
}
|
||||
appendln()
|
||||
appendln("}")
|
||||
})*/
|
||||
}
|
||||
|
||||
genVisitors(JK_COMMON_FILE.interfaceNames(), JK_JAVA_FILE.interfaceNames() + JK_KT_FILE.interfaceNames(), "JKVisitor", "JKTransformer")
|
||||
@@ -2,213 +2,144 @@ package org.jetbrains.kotlin.nj2k.tree.visitors
|
||||
|
||||
import org.jetbrains.kotlin.nj2k.tree.*
|
||||
|
||||
interface JKVisitor<out R, in D> {
|
||||
fun visitTreeElement(treeElement: JKTreeElement, data: D): R
|
||||
fun visitTreeRoot(treeRoot: JKTreeRoot, data: D): R = visitTreeElement(treeRoot, data)
|
||||
fun visitDeclaration(declaration: JKDeclaration, data: D): R = visitTreeElement(declaration, data)
|
||||
fun visitImportStatement(importStatement: JKImportStatement, data: D): R = visitTreeElement(importStatement, data)
|
||||
fun visitImportList(importList: JKImportList, data: D): R = visitTreeElement(importList, data)
|
||||
fun visitFile(file: JKFile, data: D): R = visitTreeElement(file, data)
|
||||
fun visitClass(klass: JKClass, data: D): R = visitDeclaration(klass, data)
|
||||
fun visitInheritanceInfo(inheritanceInfo: JKInheritanceInfo, data: D): R = visitTreeElement(inheritanceInfo, data)
|
||||
fun visitAnnotationList(annotationList: JKAnnotationList, data: D): R = visitTreeElement(annotationList, data)
|
||||
fun visitAnnotation(annotation: JKAnnotation, data: D): R = visitAnnotationMemberValue(annotation, data)
|
||||
fun visitAnnotationParameter(annotationParameter: JKAnnotationParameter, data: D): R = visitTreeElement(annotationParameter, data)
|
||||
fun visitAnnotationNameParameter(annotationNameParameter: JKAnnotationNameParameter, data: D): R =
|
||||
visitAnnotationParameter(annotationNameParameter, data)
|
||||
|
||||
fun visitAnnotationListOwner(annotationListOwner: JKAnnotationListOwner, data: D): R = visitTreeElement(annotationListOwner, data)
|
||||
fun visitMethod(method: JKMethod, data: D): R = visitDeclaration(method, data)
|
||||
fun visitVariable(variable: JKVariable, data: D): R = visitDeclaration(variable, data)
|
||||
fun visitForLoopVariable(forLoopVariable: JKForLoopVariable, data: D): R = visitVariable(forLoopVariable, data)
|
||||
fun visitLocalVariable(localVariable: JKLocalVariable, data: D): R = visitVariable(localVariable, data)
|
||||
fun visitModifierElement(modifierElement: JKModifierElement, data: D): R = visitTreeElement(modifierElement, data)
|
||||
fun visitMutabilityModifierElement(mutabilityModifierElement: JKMutabilityModifierElement, data: D): R =
|
||||
visitModifierElement(mutabilityModifierElement, data)
|
||||
|
||||
fun visitModalityModifierElement(modalityModifierElement: JKModalityModifierElement, data: D): R =
|
||||
visitModifierElement(modalityModifierElement, data)
|
||||
|
||||
fun visitVisibilityModifierElement(visibilityModifierElement: JKVisibilityModifierElement, data: D): R =
|
||||
visitModifierElement(visibilityModifierElement, data)
|
||||
|
||||
fun visitExtraModifierElement(otherModifierElement: JKOtherModifierElement, data: D): R =
|
||||
visitModifierElement(otherModifierElement, data)
|
||||
|
||||
fun visitExtraModifiersOwner(otherModifiersOwner: JKOtherModifiersOwner, data: D): R =
|
||||
visitModifiersListOwner(otherModifiersOwner, data)
|
||||
|
||||
fun visitVisibilityOwner(visibilityOwner: JKVisibilityOwner, data: D): R = visitModifiersListOwner(visibilityOwner, data)
|
||||
fun visitModalityOwner(modalityOwner: JKModalityOwner, data: D): R = visitModifiersListOwner(modalityOwner, data)
|
||||
fun visitMutabilityOwner(mutabilityOwner: JKMutabilityOwner, data: D): R = visitModifiersListOwner(mutabilityOwner, data)
|
||||
fun visitModifiersListOwner(modifiersListOwner: JKModifiersListOwner, data: D): R = visitTreeElement(modifiersListOwner, data)
|
||||
fun visitTypeElement(typeElement: JKTypeElement, data: D): R = visitTreeElement(typeElement, data)
|
||||
fun visitStatement(statement: JKStatement, data: D): R = visitTreeElement(statement, data)
|
||||
fun visitBlock(block: JKBlock, data: D): R = visitTreeElement(block, data)
|
||||
fun visitBodyStub(bodyStub: JKBodyStub, data: D): R = visitBlock(bodyStub, data)
|
||||
fun visitIdentifier(identifier: JKIdentifier, data: D): R = visitTreeElement(identifier, data)
|
||||
fun visitNameIdentifier(nameIdentifier: JKNameIdentifier, data: D): R = visitIdentifier(nameIdentifier, data)
|
||||
fun visitExpression(expression: JKExpression, data: D): R = visitTreeElement(expression, data)
|
||||
fun visitMethodReferenceExpression(methodReferenceExpression: JKMethodReferenceExpression, data: D): R =
|
||||
visitExpression(methodReferenceExpression, data)
|
||||
|
||||
fun visitExpressionStatement(expressionStatement: JKExpressionStatement, data: D): R = visitStatement(expressionStatement, data)
|
||||
fun visitDeclarationStatement(declarationStatement: JKDeclarationStatement, data: D): R = visitStatement(declarationStatement, data)
|
||||
fun visitOperatorExpression(operatorExpression: JKOperatorExpression, data: D): R = visitExpression(operatorExpression, data)
|
||||
fun visitBinaryExpression(binaryExpression: JKBinaryExpression, data: D): R = visitOperatorExpression(binaryExpression, data)
|
||||
fun visitUnaryExpression(unaryExpression: JKUnaryExpression, data: D): R = visitOperatorExpression(unaryExpression, data)
|
||||
fun visitPrefixExpression(prefixExpression: JKPrefixExpression, data: D): R = visitUnaryExpression(prefixExpression, data)
|
||||
fun visitPostfixExpression(postfixExpression: JKPostfixExpression, data: D): R = visitUnaryExpression(postfixExpression, data)
|
||||
fun visitQualifiedExpression(qualifiedExpression: JKQualifiedExpression, data: D): R = visitExpression(qualifiedExpression, data)
|
||||
fun visitTypeArgumentList(typeArgumentList: JKTypeArgumentList, data: D): R = visitTreeElement(typeArgumentList, data)
|
||||
fun visitTypeArgumentListOwner(typeArgumentListOwner: JKTypeArgumentListOwner, data: D): R =
|
||||
visitTreeElement(typeArgumentListOwner, data)
|
||||
|
||||
fun visitMethodCallExpression(methodCallExpression: JKMethodCallExpression, data: D): R = visitExpression(methodCallExpression, data)
|
||||
fun visitFieldAccessExpression(fieldAccessExpression: JKFieldAccessExpression, data: D): R =
|
||||
visitAssignableExpression(fieldAccessExpression, data)
|
||||
|
||||
fun visitPackageAccessExpression(packageAccessExpression: JKPackageAccessExpression, data: D): R =
|
||||
visitAssignableExpression(packageAccessExpression, data)
|
||||
|
||||
fun visitClassAccessExpression(classAccessExpression: JKClassAccessExpression, data: D): R =
|
||||
visitExpression(classAccessExpression, data)
|
||||
|
||||
fun visitArrayAccessExpression(arrayAccessExpression: JKArrayAccessExpression, data: D): R =
|
||||
visitAssignableExpression(arrayAccessExpression, data)
|
||||
|
||||
fun visitParenthesizedExpression(parenthesizedExpression: JKParenthesizedExpression, data: D): R =
|
||||
visitExpression(parenthesizedExpression, data)
|
||||
|
||||
fun visitTypeCastExpression(typeCastExpression: JKTypeCastExpression, data: D): R = visitExpression(typeCastExpression, data)
|
||||
fun visitExpressionList(expressionList: JKExpressionList, data: D): R = visitTreeElement(expressionList, data)
|
||||
fun visitArgument(argument: JKArgument, data: D): R = visitTreeElement(argument, data)
|
||||
fun visitNamedArgument(namedArgument: JKNamedArgument, data: D): R = visitArgument(namedArgument, data)
|
||||
fun visitArgumentList(argumentList: JKArgumentList, data: D): R = visitTreeElement(argumentList, data)
|
||||
fun visitLiteralExpression(literalExpression: JKLiteralExpression, data: D): R = visitExpression(literalExpression, data)
|
||||
fun visitParameter(parameter: JKParameter, data: D): R = visitVariable(parameter, data)
|
||||
fun visitStringLiteralExpression(stringLiteralExpression: JKStringLiteralExpression, data: D): R =
|
||||
visitLiteralExpression(stringLiteralExpression, data)
|
||||
|
||||
fun visitStubExpression(stubExpression: JKStubExpression, data: D): R = visitExpression(stubExpression, data)
|
||||
fun visitLoopStatement(loopStatement: JKLoopStatement, data: D): R = visitStatement(loopStatement, data)
|
||||
fun visitBlockStatement(blockStatement: JKBlockStatement, data: D): R = visitStatement(blockStatement, data)
|
||||
fun visitBlockStatementWithoutBrackets(blockStatementWithoutBrackets: JKBlockStatementWithoutBrackets, data: D): R =
|
||||
visitStatement(blockStatementWithoutBrackets, data)
|
||||
|
||||
fun visitThisExpression(thisExpression: JKThisExpression, data: D): R = visitExpression(thisExpression, data)
|
||||
fun visitSuperExpression(superExpression: JKSuperExpression, data: D): R = visitExpression(superExpression, data)
|
||||
fun visitWhileStatement(whileStatement: JKWhileStatement, data: D): R = visitLoopStatement(whileStatement, data)
|
||||
fun visitDoWhileStatement(doWhileStatement: JKDoWhileStatement, data: D): R = visitLoopStatement(doWhileStatement, data)
|
||||
fun visitBreakStatement(breakStatement: JKBreakStatement, data: D): R = visitStatement(breakStatement, data)
|
||||
fun visitBreakWithLabelStatement(breakWithLabelStatement: JKBreakWithLabelStatement, data: D): R =
|
||||
visitBreakStatement(breakWithLabelStatement, data)
|
||||
|
||||
fun visitIfStatement(ifStatement: JKIfStatement, data: D): R = visitStatement(ifStatement, data)
|
||||
fun visitIfElseStatement(ifElseStatement: JKIfElseStatement, data: D): R = visitIfStatement(ifElseStatement, data)
|
||||
fun visitIfElseExpression(ifElseExpression: JKIfElseExpression, data: D): R = visitExpression(ifElseExpression, data)
|
||||
fun visitAssignableExpression(assignableExpression: JKAssignableExpression, data: D): R = visitExpression(assignableExpression, data)
|
||||
fun visitLambdaExpression(lambdaExpression: JKLambdaExpression, data: D): R = visitExpression(lambdaExpression, data)
|
||||
fun visitDelegationConstructorCall(delegationConstructorCall: JKDelegationConstructorCall, data: D): R =
|
||||
visitMethodCallExpression(delegationConstructorCall, data)
|
||||
|
||||
fun visitLabel(label: JKLabel, data: D): R = visitTreeElement(label, data)
|
||||
fun visitLabelEmpty(labelEmpty: JKLabelEmpty, data: D): R = visitLabel(labelEmpty, data)
|
||||
fun visitLabelText(labelText: JKLabelText, data: D): R = visitLabel(labelText, data)
|
||||
fun visitContinueStatement(continueStatement: JKContinueStatement, data: D): R = visitStatement(continueStatement, data)
|
||||
fun visitLabeledStatement(labeledStatement: JKLabeledStatement, data: D): R = visitExpression(labeledStatement, data)
|
||||
fun visitEmptyStatement(emptyStatement: JKEmptyStatement, data: D): R = visitStatement(emptyStatement, data)
|
||||
fun visitTypeParameterList(typeParameterList: JKTypeParameterList, data: D): R = visitTreeElement(typeParameterList, data)
|
||||
fun visitTypeParameter(typeParameter: JKTypeParameter, data: D): R = visitTreeElement(typeParameter, data)
|
||||
fun visitTypeParameterListOwner(typeParameterListOwner: JKTypeParameterListOwner, data: D): R =
|
||||
visitTreeElement(typeParameterListOwner, data)
|
||||
|
||||
fun visitEnumConstant(enumConstant: JKEnumConstant, data: D): R = visitVariable(enumConstant, data)
|
||||
fun visitForInStatement(forInStatement: JKForInStatement, data: D): R = visitStatement(forInStatement, data)
|
||||
fun visitPackageDeclaration(packageDeclaration: JKPackageDeclaration, data: D): R = visitDeclaration(packageDeclaration, data)
|
||||
fun visitClassLiteralExpression(classLiteralExpression: JKClassLiteralExpression, data: D): R =
|
||||
visitExpression(classLiteralExpression, data)
|
||||
|
||||
fun visitAnnotationMemberValue(annotationMemberValue: JKAnnotationMemberValue, data: D): R =
|
||||
visitTreeElement(annotationMemberValue, data)
|
||||
|
||||
fun visitField(field: JKField, data: D): R = visitVariable(field, data)
|
||||
fun visitJavaField(javaField: JKJavaField, data: D): R = visitField(javaField, data)
|
||||
fun visitJavaMethod(javaMethod: JKJavaMethod, data: D): R = visitMethod(javaMethod, data)
|
||||
fun visitJavaMethodCallExpression(javaMethodCallExpression: JKJavaMethodCallExpression, data: D): R =
|
||||
visitMethodCallExpression(javaMethodCallExpression, data)
|
||||
|
||||
fun visitClassBody(classBody: JKClassBody, data: D): R = visitTreeElement(classBody, data)
|
||||
fun visitEmptyClassBody(emptyClassBody: JKEmptyClassBody, data: D): R = visitClassBody(emptyClassBody, data)
|
||||
fun visitJavaNewExpression(javaNewExpression: JKJavaNewExpression, data: D): R = visitExpression(javaNewExpression, data)
|
||||
fun visitJavaDefaultNewExpression(javaDefaultNewExpression: JKJavaDefaultNewExpression, data: D): R =
|
||||
visitExpression(javaDefaultNewExpression, data)
|
||||
|
||||
fun visitJavaNewEmptyArray(javaNewEmptyArray: JKJavaNewEmptyArray, data: D): R = visitExpression(javaNewEmptyArray, data)
|
||||
fun visitJavaNewArray(javaNewArray: JKJavaNewArray, data: D): R = visitExpression(javaNewArray, data)
|
||||
fun visitJavaLiteralExpression(javaLiteralExpression: JKJavaLiteralExpression, data: D): R =
|
||||
visitLiteralExpression(javaLiteralExpression, data)
|
||||
|
||||
fun visitReturnStatement(returnStatement: JKReturnStatement, data: D): R = visitStatement(returnStatement, data)
|
||||
fun visitJavaAssertStatement(javaAssertStatement: JKJavaAssertStatement, data: D): R = visitStatement(javaAssertStatement, data)
|
||||
fun visitJavaForLoopStatement(javaForLoopStatement: JKJavaForLoopStatement, data: D): R = visitLoopStatement(javaForLoopStatement, data)
|
||||
fun visitJavaPolyadicExpression(javaPolyadicExpression: JKJavaPolyadicExpression, data: D): R =
|
||||
visitExpression(javaPolyadicExpression, data)
|
||||
|
||||
fun visitJavaAssignmentExpression(javaAssignmentExpression: JKJavaAssignmentExpression, data: D): R =
|
||||
visitExpression(javaAssignmentExpression, data)
|
||||
|
||||
fun visitJavaThrowStatement(javaThrowStatement: JKJavaThrowStatement, data: D): R = visitStatement(javaThrowStatement, data)
|
||||
fun visitJavaTryStatement(javaTryStatement: JKJavaTryStatement, data: D): R = visitStatement(javaTryStatement, data)
|
||||
fun visitJavaTryCatchSection(javaTryCatchSection: JKJavaTryCatchSection, data: D): R = visitTreeElement(javaTryCatchSection, data)
|
||||
fun visitJavaSwitchStatement(javaSwitchStatement: JKJavaSwitchStatement, data: D): R = visitStatement(javaSwitchStatement, data)
|
||||
fun visitJavaSwitchCase(javaSwitchCase: JKJavaSwitchCase, data: D): R = visitTreeElement(javaSwitchCase, data)
|
||||
fun visitJavaDefaultSwitchCase(javaDefaultSwitchCase: JKJavaDefaultSwitchCase, data: D): R =
|
||||
visitJavaSwitchCase(javaDefaultSwitchCase, data)
|
||||
|
||||
fun visitJavaLabelSwitchCase(javaLabelSwitchCase: JKJavaLabelSwitchCase, data: D): R = visitJavaSwitchCase(javaLabelSwitchCase, data)
|
||||
fun visitJavaContinueStatement(javaContinueStatement: JKJavaContinueStatement, data: D): R = visitStatement(javaContinueStatement, data)
|
||||
fun visitJavaSynchronizedStatement(javaSynchronizedStatement: JKJavaSynchronizedStatement, data: D): R =
|
||||
visitStatement(javaSynchronizedStatement, data)
|
||||
|
||||
fun visitJavaAnnotationMethod(javaAnnotationMethod: JKJavaAnnotationMethod, data: D): R = visitMethod(javaAnnotationMethod, data)
|
||||
fun visitJavaStaticInitDeclaration(javaStaticInitDeclaration: JKJavaStaticInitDeclaration, data: D): R =
|
||||
visitDeclaration(javaStaticInitDeclaration, data)
|
||||
|
||||
fun visitKtGetterOrSetter(ktGetterOrSetter: JKKtGetterOrSetter, data: D): R = visitTreeElement(ktGetterOrSetter, data)
|
||||
fun visitKtEmptyGetterOrSetter(ktEmptyGetterOrSetter: JKKtEmptyGetterOrSetter, data: D): R =
|
||||
visitKtGetterOrSetter(ktEmptyGetterOrSetter, data)
|
||||
|
||||
fun visitKtProperty(ktProperty: JKKtProperty, data: D): R = visitField(ktProperty, data)
|
||||
fun visitKtFunction(ktFunction: JKKtFunction, data: D): R = visitMethod(ktFunction, data)
|
||||
fun visitKtConstructor(ktConstructor: JKKtConstructor, data: D): R = visitMethod(ktConstructor, data)
|
||||
fun visitKtPrimaryConstructor(ktPrimaryConstructor: JKKtPrimaryConstructor, data: D): R = visitKtConstructor(ktPrimaryConstructor, data)
|
||||
fun visitKtAssignmentStatement(ktAssignmentStatement: JKKtAssignmentStatement, data: D): R = visitStatement(ktAssignmentStatement, data)
|
||||
fun visitKtCall(ktCall: JKKtCall, data: D): R = visitMethodCallExpression(ktCall, data)
|
||||
fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression, data: D): R =
|
||||
visitMethodCallExpression(ktMethodCallExpression, data)
|
||||
|
||||
fun visitKtAlsoCallExpression(ktAlsoCallExpression: JKKtAlsoCallExpression, data: D): R =
|
||||
visitKtMethodCallExpression(ktAlsoCallExpression, data)
|
||||
|
||||
fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression, data: D): R = visitLiteralExpression(ktLiteralExpression, data)
|
||||
fun visitKtWhenStatement(ktWhenStatement: JKKtWhenStatement, data: D): R = visitStatement(ktWhenStatement, data)
|
||||
fun visitKtWhenCase(ktWhenCase: JKKtWhenCase, data: D): R = visitTreeElement(ktWhenCase, data)
|
||||
fun visitKtWhenLabel(ktWhenLabel: JKKtWhenLabel, data: D): R = visitTreeElement(ktWhenLabel, data)
|
||||
fun visitKtElseWhenLabel(ktElseWhenLabel: JKKtElseWhenLabel, data: D): R = visitKtWhenLabel(ktElseWhenLabel, data)
|
||||
fun visitKtValueWhenLabel(ktValueWhenLabel: JKKtValueWhenLabel, data: D): R = visitKtWhenLabel(ktValueWhenLabel, data)
|
||||
fun visitKtIsExpression(ktIsExpression: JKKtIsExpression, data: D): R = visitExpression(ktIsExpression, data)
|
||||
fun visitKtInitDeclaration(ktInitDeclaration: JKKtInitDeclaration, data: D): R = visitDeclaration(ktInitDeclaration, data)
|
||||
fun visitKtConvertedFromForLoopSyntheticWhileStatement(
|
||||
ktConvertedFromForLoopSyntheticWhileStatement: JKKtConvertedFromForLoopSyntheticWhileStatement,
|
||||
data: D
|
||||
): R = visitStatement(ktConvertedFromForLoopSyntheticWhileStatement, data)
|
||||
|
||||
fun visitKtThrowExpression(ktThrowExpression: JKKtThrowExpression, data: D): R = visitExpression(ktThrowExpression, data)
|
||||
fun visitKtTryExpression(ktTryExpression: JKKtTryExpression, data: D): R = visitExpression(ktTryExpression, data)
|
||||
fun visitKtTryCatchSection(ktTryCatchSection: JKKtTryCatchSection, data: D): R = visitTreeElement(ktTryCatchSection, data)
|
||||
fun visitKtAnnotationArrayInitializerExpression(
|
||||
ktAnnotationArrayInitializerExpression: JKKtAnnotationArrayInitializerExpression,
|
||||
data: D
|
||||
): R = visitExpression(ktAnnotationArrayInitializerExpression, data)
|
||||
abstract class JKVisitor {
|
||||
abstract fun visitTreeElement(treeElement: JKTreeElement)
|
||||
open fun visitTreeRoot(treeRoot: JKTreeRoot) = visitTreeElement(treeRoot)
|
||||
open fun visitDeclaration(declaration: JKDeclaration) = visitTreeElement(declaration)
|
||||
open fun visitImportStatement(importStatement: JKImportStatement) = visitTreeElement(importStatement)
|
||||
open fun visitImportList(importList: JKImportList) = visitTreeElement(importList)
|
||||
open fun visitFile(file: JKFile) = visitTreeElement(file)
|
||||
open fun visitClass(klass: JKClass) = visitDeclaration(klass)
|
||||
open fun visitInheritanceInfo(inheritanceInfo: JKInheritanceInfo) = visitTreeElement(inheritanceInfo)
|
||||
open fun visitAnnotationList(annotationList: JKAnnotationList) = visitTreeElement(annotationList)
|
||||
open fun visitAnnotation(annotation: JKAnnotation) = visitAnnotationMemberValue(annotation)
|
||||
open fun visitAnnotationParameter(annotationParameter: JKAnnotationParameter) = visitTreeElement(annotationParameter)
|
||||
open fun visitAnnotationNameParameter(annotationNameParameter: JKAnnotationNameParameter) = visitAnnotationParameter(annotationNameParameter)
|
||||
open fun visitAnnotationListOwner(annotationListOwner: JKAnnotationListOwner) = visitTreeElement(annotationListOwner)
|
||||
open fun visitMethod(method: JKMethod) = visitDeclaration(method)
|
||||
open fun visitVariable(variable: JKVariable) = visitDeclaration(variable)
|
||||
open fun visitForLoopVariable(forLoopVariable: JKForLoopVariable) = visitVariable(forLoopVariable)
|
||||
open fun visitLocalVariable(localVariable: JKLocalVariable) = visitVariable(localVariable)
|
||||
open fun visitModifierElement(modifierElement: JKModifierElement) = visitTreeElement(modifierElement)
|
||||
open fun visitMutabilityModifierElement(mutabilityModifierElement: JKMutabilityModifierElement) = visitModifierElement(mutabilityModifierElement)
|
||||
open fun visitModalityModifierElement(modalityModifierElement: JKModalityModifierElement) = visitModifierElement(modalityModifierElement)
|
||||
open fun visitVisibilityModifierElement(visibilityModifierElement: JKVisibilityModifierElement) = visitModifierElement(visibilityModifierElement)
|
||||
open fun visitOtherModifierElement(otherModifierElement: JKOtherModifierElement) = visitModifierElement(otherModifierElement)
|
||||
open fun visitOtherModifiersOwner(otherModifiersOwner: JKOtherModifiersOwner) = visitModifiersListOwner(otherModifiersOwner)
|
||||
open fun visitVisibilityOwner(visibilityOwner: JKVisibilityOwner) = visitModifiersListOwner(visibilityOwner)
|
||||
open fun visitModalityOwner(modalityOwner: JKModalityOwner) = visitModifiersListOwner(modalityOwner)
|
||||
open fun visitMutabilityOwner(mutabilityOwner: JKMutabilityOwner) = visitModifiersListOwner(mutabilityOwner)
|
||||
open fun visitModifiersListOwner(modifiersListOwner: JKModifiersListOwner) = visitTreeElement(modifiersListOwner)
|
||||
open fun visitTypeElement(typeElement: JKTypeElement) = visitTreeElement(typeElement)
|
||||
open fun visitStatement(statement: JKStatement) = visitTreeElement(statement)
|
||||
open fun visitBlock(block: JKBlock) = visitTreeElement(block)
|
||||
open fun visitBodyStub(bodyStub: JKBodyStub) = visitBlock(bodyStub)
|
||||
open fun visitIdentifier(identifier: JKIdentifier) = visitTreeElement(identifier)
|
||||
open fun visitNameIdentifier(nameIdentifier: JKNameIdentifier) = visitIdentifier(nameIdentifier)
|
||||
open fun visitExpression(expression: JKExpression) = visitTreeElement(expression)
|
||||
open fun visitMethodReferenceExpression(methodReferenceExpression: JKMethodReferenceExpression) = visitExpression(methodReferenceExpression)
|
||||
open fun visitExpressionStatement(expressionStatement: JKExpressionStatement) = visitStatement(expressionStatement)
|
||||
open fun visitDeclarationStatement(declarationStatement: JKDeclarationStatement) = visitStatement(declarationStatement)
|
||||
open fun visitOperatorExpression(operatorExpression: JKOperatorExpression) = visitExpression(operatorExpression)
|
||||
open fun visitBinaryExpression(binaryExpression: JKBinaryExpression) = visitOperatorExpression(binaryExpression)
|
||||
open fun visitUnaryExpression(unaryExpression: JKUnaryExpression) = visitOperatorExpression(unaryExpression)
|
||||
open fun visitPrefixExpression(prefixExpression: JKPrefixExpression) = visitUnaryExpression(prefixExpression)
|
||||
open fun visitPostfixExpression(postfixExpression: JKPostfixExpression) = visitUnaryExpression(postfixExpression)
|
||||
open fun visitQualifiedExpression(qualifiedExpression: JKQualifiedExpression) = visitExpression(qualifiedExpression)
|
||||
open fun visitTypeArgumentList(typeArgumentList: JKTypeArgumentList) = visitTreeElement(typeArgumentList)
|
||||
open fun visitTypeArgumentListOwner(typeArgumentListOwner: JKTypeArgumentListOwner) = visitTreeElement(typeArgumentListOwner)
|
||||
open fun visitMethodCallExpression(methodCallExpression: JKMethodCallExpression) = visitExpression(methodCallExpression)
|
||||
open fun visitFieldAccessExpression(fieldAccessExpression: JKFieldAccessExpression) = visitAssignableExpression(fieldAccessExpression)
|
||||
open fun visitPackageAccessExpression(packageAccessExpression: JKPackageAccessExpression) = visitAssignableExpression(packageAccessExpression)
|
||||
open fun visitClassAccessExpression(classAccessExpression: JKClassAccessExpression) = visitExpression(classAccessExpression)
|
||||
open fun visitArrayAccessExpression(arrayAccessExpression: JKArrayAccessExpression) = visitAssignableExpression(arrayAccessExpression)
|
||||
open fun visitParenthesizedExpression(parenthesizedExpression: JKParenthesizedExpression) = visitExpression(parenthesizedExpression)
|
||||
open fun visitTypeCastExpression(typeCastExpression: JKTypeCastExpression) = visitExpression(typeCastExpression)
|
||||
open fun visitExpressionList(expressionList: JKExpressionList) = visitTreeElement(expressionList)
|
||||
open fun visitArgument(argument: JKArgument) = visitTreeElement(argument)
|
||||
open fun visitNamedArgument(namedArgument: JKNamedArgument) = visitArgument(namedArgument)
|
||||
open fun visitArgumentList(argumentList: JKArgumentList) = visitTreeElement(argumentList)
|
||||
open fun visitLiteralExpression(literalExpression: JKLiteralExpression) = visitExpression(literalExpression)
|
||||
open fun visitParameter(parameter: JKParameter) = visitVariable(parameter)
|
||||
open fun visitStringLiteralExpression(stringLiteralExpression: JKStringLiteralExpression) = visitLiteralExpression(stringLiteralExpression)
|
||||
open fun visitStubExpression(stubExpression: JKStubExpression) = visitExpression(stubExpression)
|
||||
open fun visitLoopStatement(loopStatement: JKLoopStatement) = visitStatement(loopStatement)
|
||||
open fun visitBlockStatement(blockStatement: JKBlockStatement) = visitStatement(blockStatement)
|
||||
open fun visitBlockStatementWithoutBrackets(blockStatementWithoutBrackets: JKBlockStatementWithoutBrackets) = visitStatement(blockStatementWithoutBrackets)
|
||||
open fun visitThisExpression(thisExpression: JKThisExpression) = visitExpression(thisExpression)
|
||||
open fun visitSuperExpression(superExpression: JKSuperExpression) = visitExpression(superExpression)
|
||||
open fun visitWhileStatement(whileStatement: JKWhileStatement) = visitLoopStatement(whileStatement)
|
||||
open fun visitDoWhileStatement(doWhileStatement: JKDoWhileStatement) = visitLoopStatement(doWhileStatement)
|
||||
open fun visitBreakStatement(breakStatement: JKBreakStatement) = visitStatement(breakStatement)
|
||||
open fun visitBreakWithLabelStatement(breakWithLabelStatement: JKBreakWithLabelStatement) = visitBreakStatement(breakWithLabelStatement)
|
||||
open fun visitIfStatement(ifStatement: JKIfStatement) = visitStatement(ifStatement)
|
||||
open fun visitIfElseStatement(ifElseStatement: JKIfElseStatement) = visitIfStatement(ifElseStatement)
|
||||
open fun visitIfElseExpression(ifElseExpression: JKIfElseExpression) = visitExpression(ifElseExpression)
|
||||
open fun visitAssignableExpression(assignableExpression: JKAssignableExpression) = visitExpression(assignableExpression)
|
||||
open fun visitLambdaExpression(lambdaExpression: JKLambdaExpression) = visitExpression(lambdaExpression)
|
||||
open fun visitDelegationConstructorCall(delegationConstructorCall: JKDelegationConstructorCall) = visitMethodCallExpression(delegationConstructorCall)
|
||||
open fun visitLabel(label: JKLabel) = visitTreeElement(label)
|
||||
open fun visitLabelEmpty(labelEmpty: JKLabelEmpty) = visitLabel(labelEmpty)
|
||||
open fun visitLabelText(labelText: JKLabelText) = visitLabel(labelText)
|
||||
open fun visitContinueStatement(continueStatement: JKContinueStatement) = visitStatement(continueStatement)
|
||||
open fun visitLabeledStatement(labeledStatement: JKLabeledStatement) = visitExpression(labeledStatement)
|
||||
open fun visitEmptyStatement(emptyStatement: JKEmptyStatement) = visitStatement(emptyStatement)
|
||||
open fun visitTypeParameterList(typeParameterList: JKTypeParameterList) = visitTreeElement(typeParameterList)
|
||||
open fun visitTypeParameter(typeParameter: JKTypeParameter) = visitTreeElement(typeParameter)
|
||||
open fun visitTypeParameterListOwner(typeParameterListOwner: JKTypeParameterListOwner) = visitTreeElement(typeParameterListOwner)
|
||||
open fun visitEnumConstant(enumConstant: JKEnumConstant) = visitVariable(enumConstant)
|
||||
open fun visitForInStatement(forInStatement: JKForInStatement) = visitStatement(forInStatement)
|
||||
open fun visitPackageDeclaration(packageDeclaration: JKPackageDeclaration) = visitDeclaration(packageDeclaration)
|
||||
open fun visitClassLiteralExpression(classLiteralExpression: JKClassLiteralExpression) = visitExpression(classLiteralExpression)
|
||||
open fun visitAnnotationMemberValue(annotationMemberValue: JKAnnotationMemberValue) = visitTreeElement(annotationMemberValue)
|
||||
open fun visitField(field: JKField) = visitVariable(field)
|
||||
open fun visitJavaField(javaField: JKJavaField) = visitField(javaField)
|
||||
open fun visitJavaMethod(javaMethod: JKJavaMethod) = visitMethod(javaMethod)
|
||||
open fun visitJavaMethodCallExpression(javaMethodCallExpression: JKJavaMethodCallExpression) = visitMethodCallExpression(javaMethodCallExpression)
|
||||
open fun visitClassBody(classBody: JKClassBody) = visitTreeElement(classBody)
|
||||
open fun visitEmptyClassBody(emptyClassBody: JKEmptyClassBody) = visitClassBody(emptyClassBody)
|
||||
open fun visitJavaNewExpression(javaNewExpression: JKJavaNewExpression) = visitExpression(javaNewExpression)
|
||||
open fun visitJavaDefaultNewExpression(javaDefaultNewExpression: JKJavaDefaultNewExpression) = visitExpression(javaDefaultNewExpression)
|
||||
open fun visitJavaNewEmptyArray(javaNewEmptyArray: JKJavaNewEmptyArray) = visitExpression(javaNewEmptyArray)
|
||||
open fun visitJavaNewArray(javaNewArray: JKJavaNewArray) = visitExpression(javaNewArray)
|
||||
open fun visitJavaLiteralExpression(javaLiteralExpression: JKJavaLiteralExpression) = visitLiteralExpression(javaLiteralExpression)
|
||||
open fun visitReturnStatement(returnStatement: JKReturnStatement) = visitStatement(returnStatement)
|
||||
open fun visitJavaAssertStatement(javaAssertStatement: JKJavaAssertStatement) = visitStatement(javaAssertStatement)
|
||||
open fun visitJavaForLoopStatement(javaForLoopStatement: JKJavaForLoopStatement) = visitLoopStatement(javaForLoopStatement)
|
||||
open fun visitJavaPolyadicExpression(javaPolyadicExpression: JKJavaPolyadicExpression) = visitExpression(javaPolyadicExpression)
|
||||
open fun visitJavaAssignmentExpression(javaAssignmentExpression: JKJavaAssignmentExpression) = visitExpression(javaAssignmentExpression)
|
||||
open fun visitJavaThrowStatement(javaThrowStatement: JKJavaThrowStatement) = visitStatement(javaThrowStatement)
|
||||
open fun visitJavaTryStatement(javaTryStatement: JKJavaTryStatement) = visitStatement(javaTryStatement)
|
||||
open fun visitJavaTryCatchSection(javaTryCatchSection: JKJavaTryCatchSection) = visitTreeElement(javaTryCatchSection)
|
||||
open fun visitJavaSwitchStatement(javaSwitchStatement: JKJavaSwitchStatement) = visitStatement(javaSwitchStatement)
|
||||
open fun visitJavaSwitchCase(javaSwitchCase: JKJavaSwitchCase) = visitTreeElement(javaSwitchCase)
|
||||
open fun visitJavaDefaultSwitchCase(javaDefaultSwitchCase: JKJavaDefaultSwitchCase) = visitJavaSwitchCase(javaDefaultSwitchCase)
|
||||
open fun visitJavaLabelSwitchCase(javaLabelSwitchCase: JKJavaLabelSwitchCase) = visitJavaSwitchCase(javaLabelSwitchCase)
|
||||
open fun visitJavaContinueStatement(javaContinueStatement: JKJavaContinueStatement) = visitStatement(javaContinueStatement)
|
||||
open fun visitJavaSynchronizedStatement(javaSynchronizedStatement: JKJavaSynchronizedStatement) = visitStatement(javaSynchronizedStatement)
|
||||
open fun visitJavaAnnotationMethod(javaAnnotationMethod: JKJavaAnnotationMethod) = visitMethod(javaAnnotationMethod)
|
||||
open fun visitJavaStaticInitDeclaration(javaStaticInitDeclaration: JKJavaStaticInitDeclaration) = visitDeclaration(javaStaticInitDeclaration)
|
||||
open fun visitKtGetterOrSetter(ktGetterOrSetter: JKKtGetterOrSetter) = visitTreeElement(ktGetterOrSetter)
|
||||
open fun visitKtEmptyGetterOrSetter(ktEmptyGetterOrSetter: JKKtEmptyGetterOrSetter) = visitKtGetterOrSetter(ktEmptyGetterOrSetter)
|
||||
open fun visitKtProperty(ktProperty: JKKtProperty) = visitField(ktProperty)
|
||||
open fun visitKtFunction(ktFunction: JKKtFunction) = visitMethod(ktFunction)
|
||||
open fun visitKtConstructor(ktConstructor: JKKtConstructor) = visitMethod(ktConstructor)
|
||||
open fun visitKtPrimaryConstructor(ktPrimaryConstructor: JKKtPrimaryConstructor) = visitKtConstructor(ktPrimaryConstructor)
|
||||
open fun visitKtAssignmentStatement(ktAssignmentStatement: JKKtAssignmentStatement) = visitStatement(ktAssignmentStatement)
|
||||
open fun visitKtCall(ktCall: JKKtCall) = visitMethodCallExpression(ktCall)
|
||||
open fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression) = visitMethodCallExpression(ktMethodCallExpression)
|
||||
open fun visitKtAlsoCallExpression(ktAlsoCallExpression: JKKtAlsoCallExpression) = visitKtMethodCallExpression(ktAlsoCallExpression)
|
||||
open fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression) = visitLiteralExpression(ktLiteralExpression)
|
||||
open fun visitKtWhenStatement(ktWhenStatement: JKKtWhenStatement) = visitStatement(ktWhenStatement)
|
||||
open fun visitKtWhenCase(ktWhenCase: JKKtWhenCase) = visitTreeElement(ktWhenCase)
|
||||
open fun visitKtWhenLabel(ktWhenLabel: JKKtWhenLabel) = visitTreeElement(ktWhenLabel)
|
||||
open fun visitKtElseWhenLabel(ktElseWhenLabel: JKKtElseWhenLabel) = visitKtWhenLabel(ktElseWhenLabel)
|
||||
open fun visitKtValueWhenLabel(ktValueWhenLabel: JKKtValueWhenLabel) = visitKtWhenLabel(ktValueWhenLabel)
|
||||
open fun visitKtIsExpression(ktIsExpression: JKKtIsExpression) = visitExpression(ktIsExpression)
|
||||
open fun visitKtInitDeclaration(ktInitDeclaration: JKKtInitDeclaration) = visitDeclaration(ktInitDeclaration)
|
||||
open fun visitKtConvertedFromForLoopSyntheticWhileStatement(ktConvertedFromForLoopSyntheticWhileStatement: JKKtConvertedFromForLoopSyntheticWhileStatement) = visitStatement(ktConvertedFromForLoopSyntheticWhileStatement)
|
||||
open fun visitKtThrowExpression(ktThrowExpression: JKKtThrowExpression) = visitExpression(ktThrowExpression)
|
||||
open fun visitKtTryExpression(ktTryExpression: JKKtTryExpression) = visitExpression(ktTryExpression)
|
||||
open fun visitKtTryCatchSection(ktTryCatchSection: JKKtTryCatchSection) = visitTreeElement(ktTryCatchSection)
|
||||
open fun visitKtAnnotationArrayInitializerExpression(ktAnnotationArrayInitializerExpression: JKKtAnnotationArrayInitializerExpression) = visitExpression(ktAnnotationArrayInitializerExpression)
|
||||
}
|
||||
|
||||
@@ -1,433 +0,0 @@
|
||||
package org.jetbrains.kotlin.nj2k.tree.visitors
|
||||
|
||||
import org.jetbrains.kotlin.nj2k.tree.*
|
||||
|
||||
interface JKVisitorVoid : JKVisitor<Unit, Nothing?> {
|
||||
fun visitTreeElement(treeElement: JKTreeElement)
|
||||
override fun visitTreeElement(treeElement: JKTreeElement, data: Nothing?) = visitTreeElement(treeElement)
|
||||
fun visitTreeRoot(treeRoot: JKTreeRoot) = visitTreeElement(treeRoot, null)
|
||||
override fun visitTreeRoot(treeRoot: JKTreeRoot, data: Nothing?) = visitTreeRoot(treeRoot)
|
||||
fun visitDeclaration(declaration: JKDeclaration) = visitTreeElement(declaration, null)
|
||||
override fun visitDeclaration(declaration: JKDeclaration, data: Nothing?) = visitDeclaration(declaration)
|
||||
fun visitImportStatement(importStatement: JKImportStatement) = visitTreeElement(importStatement, null)
|
||||
override fun visitImportStatement(importStatement: JKImportStatement, data: Nothing?) = visitImportStatement(importStatement)
|
||||
fun visitImportList(importList: JKImportList) = visitTreeElement(importList, null)
|
||||
override fun visitImportList(importList: JKImportList, data: Nothing?) = visitImportList(importList)
|
||||
fun visitFile(file: JKFile) = visitTreeElement(file, null)
|
||||
override fun visitFile(file: JKFile, data: Nothing?) = visitFile(file)
|
||||
fun visitClass(klass: JKClass) = visitDeclaration(klass, null)
|
||||
override fun visitClass(klass: JKClass, data: Nothing?) = visitClass(klass)
|
||||
fun visitInheritanceInfo(inheritanceInfo: JKInheritanceInfo) = visitTreeElement(inheritanceInfo, null)
|
||||
override fun visitInheritanceInfo(inheritanceInfo: JKInheritanceInfo, data: Nothing?) = visitInheritanceInfo(inheritanceInfo)
|
||||
fun visitAnnotationList(annotationList: JKAnnotationList) = visitTreeElement(annotationList, null)
|
||||
override fun visitAnnotationList(annotationList: JKAnnotationList, data: Nothing?) = visitAnnotationList(annotationList)
|
||||
fun visitAnnotation(annotation: JKAnnotation) = visitAnnotationMemberValue(annotation, null)
|
||||
override fun visitAnnotation(annotation: JKAnnotation, data: Nothing?) = visitAnnotation(annotation)
|
||||
fun visitAnnotationParameter(annotationParameter: JKAnnotationParameter) = visitTreeElement(annotationParameter, null)
|
||||
override fun visitAnnotationParameter(annotationParameter: JKAnnotationParameter, data: Nothing?) =
|
||||
visitAnnotationParameter(annotationParameter)
|
||||
|
||||
fun visitAnnotationNameParameter(annotationNameParameter: JKAnnotationNameParameter) =
|
||||
visitAnnotationParameter(annotationNameParameter, null)
|
||||
|
||||
override fun visitAnnotationNameParameter(annotationNameParameter: JKAnnotationNameParameter, data: Nothing?) =
|
||||
visitAnnotationNameParameter(annotationNameParameter)
|
||||
|
||||
fun visitAnnotationListOwner(annotationListOwner: JKAnnotationListOwner) = visitTreeElement(annotationListOwner, null)
|
||||
override fun visitAnnotationListOwner(annotationListOwner: JKAnnotationListOwner, data: Nothing?) =
|
||||
visitAnnotationListOwner(annotationListOwner)
|
||||
|
||||
fun visitMethod(method: JKMethod) = visitDeclaration(method, null)
|
||||
override fun visitMethod(method: JKMethod, data: Nothing?) = visitMethod(method)
|
||||
fun visitVariable(variable: JKVariable) = visitDeclaration(variable, null)
|
||||
override fun visitVariable(variable: JKVariable, data: Nothing?) = visitVariable(variable)
|
||||
fun visitForLoopVariable(forLoopVariable: JKForLoopVariable) = visitVariable(forLoopVariable, null)
|
||||
override fun visitForLoopVariable(forLoopVariable: JKForLoopVariable, data: Nothing?) = visitForLoopVariable(forLoopVariable)
|
||||
fun visitLocalVariable(localVariable: JKLocalVariable) = visitVariable(localVariable, null)
|
||||
override fun visitLocalVariable(localVariable: JKLocalVariable, data: Nothing?) = visitLocalVariable(localVariable)
|
||||
fun visitModifierElement(modifierElement: JKModifierElement) = visitTreeElement(modifierElement, null)
|
||||
override fun visitModifierElement(modifierElement: JKModifierElement, data: Nothing?) = visitModifierElement(modifierElement)
|
||||
fun visitMutabilityModifierElement(mutabilityModifierElement: JKMutabilityModifierElement) =
|
||||
visitModifierElement(mutabilityModifierElement, null)
|
||||
|
||||
override fun visitMutabilityModifierElement(mutabilityModifierElement: JKMutabilityModifierElement, data: Nothing?) =
|
||||
visitMutabilityModifierElement(mutabilityModifierElement)
|
||||
|
||||
fun visitModalityModifierElement(modalityModifierElement: JKModalityModifierElement) =
|
||||
visitModifierElement(modalityModifierElement, null)
|
||||
|
||||
override fun visitModalityModifierElement(modalityModifierElement: JKModalityModifierElement, data: Nothing?) =
|
||||
visitModalityModifierElement(modalityModifierElement)
|
||||
|
||||
fun visitVisibilityModifierElement(visibilityModifierElement: JKVisibilityModifierElement) =
|
||||
visitModifierElement(visibilityModifierElement, null)
|
||||
|
||||
override fun visitVisibilityModifierElement(visibilityModifierElement: JKVisibilityModifierElement, data: Nothing?) =
|
||||
visitVisibilityModifierElement(visibilityModifierElement)
|
||||
|
||||
fun visitExtraModifierElement(otherModifierElement: JKOtherModifierElement) = visitModifierElement(otherModifierElement, null)
|
||||
override fun visitExtraModifierElement(otherModifierElement: JKOtherModifierElement, data: Nothing?) =
|
||||
visitExtraModifierElement(otherModifierElement)
|
||||
|
||||
fun visitExtraModifiersOwner(otherModifiersOwner: JKOtherModifiersOwner) = visitModifiersListOwner(otherModifiersOwner, null)
|
||||
override fun visitExtraModifiersOwner(otherModifiersOwner: JKOtherModifiersOwner, data: Nothing?) =
|
||||
visitExtraModifiersOwner(otherModifiersOwner)
|
||||
|
||||
fun visitVisibilityOwner(visibilityOwner: JKVisibilityOwner) = visitModifiersListOwner(visibilityOwner, null)
|
||||
override fun visitVisibilityOwner(visibilityOwner: JKVisibilityOwner, data: Nothing?) = visitVisibilityOwner(visibilityOwner)
|
||||
fun visitModalityOwner(modalityOwner: JKModalityOwner) = visitModifiersListOwner(modalityOwner, null)
|
||||
override fun visitModalityOwner(modalityOwner: JKModalityOwner, data: Nothing?) = visitModalityOwner(modalityOwner)
|
||||
fun visitMutabilityOwner(mutabilityOwner: JKMutabilityOwner) = visitModifiersListOwner(mutabilityOwner, null)
|
||||
override fun visitMutabilityOwner(mutabilityOwner: JKMutabilityOwner, data: Nothing?) = visitMutabilityOwner(mutabilityOwner)
|
||||
fun visitModifiersListOwner(modifiersListOwner: JKModifiersListOwner) = visitTreeElement(modifiersListOwner, null)
|
||||
override fun visitModifiersListOwner(modifiersListOwner: JKModifiersListOwner, data: Nothing?) =
|
||||
visitModifiersListOwner(modifiersListOwner)
|
||||
|
||||
fun visitTypeElement(typeElement: JKTypeElement) = visitTreeElement(typeElement, null)
|
||||
override fun visitTypeElement(typeElement: JKTypeElement, data: Nothing?) = visitTypeElement(typeElement)
|
||||
fun visitStatement(statement: JKStatement) = visitTreeElement(statement, null)
|
||||
override fun visitStatement(statement: JKStatement, data: Nothing?) = visitStatement(statement)
|
||||
fun visitBlock(block: JKBlock) = visitTreeElement(block, null)
|
||||
override fun visitBlock(block: JKBlock, data: Nothing?) = visitBlock(block)
|
||||
fun visitBodyStub(bodyStub: JKBodyStub) = visitBlock(bodyStub, null)
|
||||
override fun visitBodyStub(bodyStub: JKBodyStub, data: Nothing?) = visitBodyStub(bodyStub)
|
||||
fun visitIdentifier(identifier: JKIdentifier) = visitTreeElement(identifier, null)
|
||||
override fun visitIdentifier(identifier: JKIdentifier, data: Nothing?) = visitIdentifier(identifier)
|
||||
fun visitNameIdentifier(nameIdentifier: JKNameIdentifier) = visitIdentifier(nameIdentifier, null)
|
||||
override fun visitNameIdentifier(nameIdentifier: JKNameIdentifier, data: Nothing?) = visitNameIdentifier(nameIdentifier)
|
||||
fun visitExpression(expression: JKExpression) = visitTreeElement(expression, null)
|
||||
override fun visitExpression(expression: JKExpression, data: Nothing?) = visitExpression(expression)
|
||||
fun visitMethodReferenceExpression(methodReferenceExpression: JKMethodReferenceExpression) =
|
||||
visitExpression(methodReferenceExpression, null)
|
||||
|
||||
override fun visitMethodReferenceExpression(methodReferenceExpression: JKMethodReferenceExpression, data: Nothing?) =
|
||||
visitMethodReferenceExpression(methodReferenceExpression)
|
||||
|
||||
fun visitExpressionStatement(expressionStatement: JKExpressionStatement) = visitStatement(expressionStatement, null)
|
||||
override fun visitExpressionStatement(expressionStatement: JKExpressionStatement, data: Nothing?) =
|
||||
visitExpressionStatement(expressionStatement)
|
||||
|
||||
fun visitDeclarationStatement(declarationStatement: JKDeclarationStatement) = visitStatement(declarationStatement, null)
|
||||
override fun visitDeclarationStatement(declarationStatement: JKDeclarationStatement, data: Nothing?) =
|
||||
visitDeclarationStatement(declarationStatement)
|
||||
|
||||
fun visitOperatorExpression(operatorExpression: JKOperatorExpression) = visitExpression(operatorExpression, null)
|
||||
override fun visitOperatorExpression(operatorExpression: JKOperatorExpression, data: Nothing?) =
|
||||
visitOperatorExpression(operatorExpression)
|
||||
|
||||
fun visitBinaryExpression(binaryExpression: JKBinaryExpression) = visitOperatorExpression(binaryExpression, null)
|
||||
override fun visitBinaryExpression(binaryExpression: JKBinaryExpression, data: Nothing?) = visitBinaryExpression(binaryExpression)
|
||||
fun visitUnaryExpression(unaryExpression: JKUnaryExpression) = visitOperatorExpression(unaryExpression, null)
|
||||
override fun visitUnaryExpression(unaryExpression: JKUnaryExpression, data: Nothing?) = visitUnaryExpression(unaryExpression)
|
||||
fun visitPrefixExpression(prefixExpression: JKPrefixExpression) = visitUnaryExpression(prefixExpression, null)
|
||||
override fun visitPrefixExpression(prefixExpression: JKPrefixExpression, data: Nothing?) = visitPrefixExpression(prefixExpression)
|
||||
fun visitPostfixExpression(postfixExpression: JKPostfixExpression) = visitUnaryExpression(postfixExpression, null)
|
||||
override fun visitPostfixExpression(postfixExpression: JKPostfixExpression, data: Nothing?) = visitPostfixExpression(postfixExpression)
|
||||
fun visitQualifiedExpression(qualifiedExpression: JKQualifiedExpression) = visitExpression(qualifiedExpression, null)
|
||||
override fun visitQualifiedExpression(qualifiedExpression: JKQualifiedExpression, data: Nothing?) =
|
||||
visitQualifiedExpression(qualifiedExpression)
|
||||
|
||||
fun visitTypeArgumentList(typeArgumentList: JKTypeArgumentList) = visitTreeElement(typeArgumentList, null)
|
||||
override fun visitTypeArgumentList(typeArgumentList: JKTypeArgumentList, data: Nothing?) = visitTypeArgumentList(typeArgumentList)
|
||||
fun visitTypeArgumentListOwner(typeArgumentListOwner: JKTypeArgumentListOwner) = visitTreeElement(typeArgumentListOwner, null)
|
||||
override fun visitTypeArgumentListOwner(typeArgumentListOwner: JKTypeArgumentListOwner, data: Nothing?) =
|
||||
visitTypeArgumentListOwner(typeArgumentListOwner)
|
||||
|
||||
fun visitMethodCallExpression(methodCallExpression: JKMethodCallExpression) = visitExpression(methodCallExpression, null)
|
||||
override fun visitMethodCallExpression(methodCallExpression: JKMethodCallExpression, data: Nothing?) =
|
||||
visitMethodCallExpression(methodCallExpression)
|
||||
|
||||
fun visitFieldAccessExpression(fieldAccessExpression: JKFieldAccessExpression) = visitAssignableExpression(fieldAccessExpression, null)
|
||||
override fun visitFieldAccessExpression(fieldAccessExpression: JKFieldAccessExpression, data: Nothing?) =
|
||||
visitFieldAccessExpression(fieldAccessExpression)
|
||||
|
||||
fun visitPackageAccessExpression(packageAccessExpression: JKPackageAccessExpression) =
|
||||
visitAssignableExpression(packageAccessExpression, null)
|
||||
|
||||
override fun visitPackageAccessExpression(packageAccessExpression: JKPackageAccessExpression, data: Nothing?) =
|
||||
visitPackageAccessExpression(packageAccessExpression)
|
||||
|
||||
fun visitClassAccessExpression(classAccessExpression: JKClassAccessExpression) = visitExpression(classAccessExpression, null)
|
||||
override fun visitClassAccessExpression(classAccessExpression: JKClassAccessExpression, data: Nothing?) =
|
||||
visitClassAccessExpression(classAccessExpression)
|
||||
|
||||
fun visitArrayAccessExpression(arrayAccessExpression: JKArrayAccessExpression) = visitAssignableExpression(arrayAccessExpression, null)
|
||||
override fun visitArrayAccessExpression(arrayAccessExpression: JKArrayAccessExpression, data: Nothing?) =
|
||||
visitArrayAccessExpression(arrayAccessExpression)
|
||||
|
||||
fun visitParenthesizedExpression(parenthesizedExpression: JKParenthesizedExpression) = visitExpression(parenthesizedExpression, null)
|
||||
override fun visitParenthesizedExpression(parenthesizedExpression: JKParenthesizedExpression, data: Nothing?) =
|
||||
visitParenthesizedExpression(parenthesizedExpression)
|
||||
|
||||
fun visitTypeCastExpression(typeCastExpression: JKTypeCastExpression) = visitExpression(typeCastExpression, null)
|
||||
override fun visitTypeCastExpression(typeCastExpression: JKTypeCastExpression, data: Nothing?) =
|
||||
visitTypeCastExpression(typeCastExpression)
|
||||
|
||||
fun visitExpressionList(expressionList: JKExpressionList) = visitTreeElement(expressionList, null)
|
||||
override fun visitExpressionList(expressionList: JKExpressionList, data: Nothing?) = visitExpressionList(expressionList)
|
||||
fun visitArgument(argument: JKArgument) = visitTreeElement(argument, null)
|
||||
override fun visitArgument(argument: JKArgument, data: Nothing?) = visitArgument(argument)
|
||||
fun visitNamedArgument(namedArgument: JKNamedArgument) = visitArgument(namedArgument, null)
|
||||
override fun visitNamedArgument(namedArgument: JKNamedArgument, data: Nothing?) = visitNamedArgument(namedArgument)
|
||||
fun visitArgumentList(argumentList: JKArgumentList) = visitTreeElement(argumentList, null)
|
||||
override fun visitArgumentList(argumentList: JKArgumentList, data: Nothing?) = visitArgumentList(argumentList)
|
||||
fun visitLiteralExpression(literalExpression: JKLiteralExpression) = visitExpression(literalExpression, null)
|
||||
override fun visitLiteralExpression(literalExpression: JKLiteralExpression, data: Nothing?) = visitLiteralExpression(literalExpression)
|
||||
fun visitParameter(parameter: JKParameter) = visitVariable(parameter, null)
|
||||
override fun visitParameter(parameter: JKParameter, data: Nothing?) = visitParameter(parameter)
|
||||
fun visitStringLiteralExpression(stringLiteralExpression: JKStringLiteralExpression) =
|
||||
visitLiteralExpression(stringLiteralExpression, null)
|
||||
|
||||
override fun visitStringLiteralExpression(stringLiteralExpression: JKStringLiteralExpression, data: Nothing?) =
|
||||
visitStringLiteralExpression(stringLiteralExpression)
|
||||
|
||||
fun visitStubExpression(stubExpression: JKStubExpression) = visitExpression(stubExpression, null)
|
||||
override fun visitStubExpression(stubExpression: JKStubExpression, data: Nothing?) = visitStubExpression(stubExpression)
|
||||
fun visitLoopStatement(loopStatement: JKLoopStatement) = visitStatement(loopStatement, null)
|
||||
override fun visitLoopStatement(loopStatement: JKLoopStatement, data: Nothing?) = visitLoopStatement(loopStatement)
|
||||
fun visitBlockStatement(blockStatement: JKBlockStatement) = visitStatement(blockStatement, null)
|
||||
override fun visitBlockStatement(blockStatement: JKBlockStatement, data: Nothing?) = visitBlockStatement(blockStatement)
|
||||
fun visitBlockStatementWithoutBrackets(blockStatementWithoutBrackets: JKBlockStatementWithoutBrackets) =
|
||||
visitStatement(blockStatementWithoutBrackets, null)
|
||||
|
||||
override fun visitBlockStatementWithoutBrackets(blockStatementWithoutBrackets: JKBlockStatementWithoutBrackets, data: Nothing?) =
|
||||
visitBlockStatementWithoutBrackets(blockStatementWithoutBrackets)
|
||||
|
||||
fun visitThisExpression(thisExpression: JKThisExpression) = visitExpression(thisExpression, null)
|
||||
override fun visitThisExpression(thisExpression: JKThisExpression, data: Nothing?) = visitThisExpression(thisExpression)
|
||||
fun visitSuperExpression(superExpression: JKSuperExpression) = visitExpression(superExpression, null)
|
||||
override fun visitSuperExpression(superExpression: JKSuperExpression, data: Nothing?) = visitSuperExpression(superExpression)
|
||||
fun visitWhileStatement(whileStatement: JKWhileStatement) = visitLoopStatement(whileStatement, null)
|
||||
override fun visitWhileStatement(whileStatement: JKWhileStatement, data: Nothing?) = visitWhileStatement(whileStatement)
|
||||
fun visitDoWhileStatement(doWhileStatement: JKDoWhileStatement) = visitLoopStatement(doWhileStatement, null)
|
||||
override fun visitDoWhileStatement(doWhileStatement: JKDoWhileStatement, data: Nothing?) = visitDoWhileStatement(doWhileStatement)
|
||||
fun visitBreakStatement(breakStatement: JKBreakStatement) = visitStatement(breakStatement, null)
|
||||
override fun visitBreakStatement(breakStatement: JKBreakStatement, data: Nothing?) = visitBreakStatement(breakStatement)
|
||||
fun visitBreakWithLabelStatement(breakWithLabelStatement: JKBreakWithLabelStatement) =
|
||||
visitBreakStatement(breakWithLabelStatement, null)
|
||||
|
||||
override fun visitBreakWithLabelStatement(breakWithLabelStatement: JKBreakWithLabelStatement, data: Nothing?) =
|
||||
visitBreakWithLabelStatement(breakWithLabelStatement)
|
||||
|
||||
fun visitIfStatement(ifStatement: JKIfStatement) = visitStatement(ifStatement, null)
|
||||
override fun visitIfStatement(ifStatement: JKIfStatement, data: Nothing?) = visitIfStatement(ifStatement)
|
||||
fun visitIfElseStatement(ifElseStatement: JKIfElseStatement) = visitIfStatement(ifElseStatement, null)
|
||||
override fun visitIfElseStatement(ifElseStatement: JKIfElseStatement, data: Nothing?) = visitIfElseStatement(ifElseStatement)
|
||||
fun visitIfElseExpression(ifElseExpression: JKIfElseExpression) = visitExpression(ifElseExpression, null)
|
||||
override fun visitIfElseExpression(ifElseExpression: JKIfElseExpression, data: Nothing?) = visitIfElseExpression(ifElseExpression)
|
||||
fun visitAssignableExpression(assignableExpression: JKAssignableExpression) = visitExpression(assignableExpression, null)
|
||||
override fun visitAssignableExpression(assignableExpression: JKAssignableExpression, data: Nothing?) =
|
||||
visitAssignableExpression(assignableExpression)
|
||||
|
||||
fun visitLambdaExpression(lambdaExpression: JKLambdaExpression) = visitExpression(lambdaExpression, null)
|
||||
override fun visitLambdaExpression(lambdaExpression: JKLambdaExpression, data: Nothing?) = visitLambdaExpression(lambdaExpression)
|
||||
fun visitDelegationConstructorCall(delegationConstructorCall: JKDelegationConstructorCall) =
|
||||
visitMethodCallExpression(delegationConstructorCall, null)
|
||||
|
||||
override fun visitDelegationConstructorCall(delegationConstructorCall: JKDelegationConstructorCall, data: Nothing?) =
|
||||
visitDelegationConstructorCall(delegationConstructorCall)
|
||||
|
||||
fun visitLabel(label: JKLabel) = visitTreeElement(label, null)
|
||||
override fun visitLabel(label: JKLabel, data: Nothing?) = visitLabel(label)
|
||||
fun visitLabelEmpty(labelEmpty: JKLabelEmpty) = visitLabel(labelEmpty, null)
|
||||
override fun visitLabelEmpty(labelEmpty: JKLabelEmpty, data: Nothing?) = visitLabelEmpty(labelEmpty)
|
||||
fun visitLabelText(labelText: JKLabelText) = visitLabel(labelText, null)
|
||||
override fun visitLabelText(labelText: JKLabelText, data: Nothing?) = visitLabelText(labelText)
|
||||
fun visitContinueStatement(continueStatement: JKContinueStatement) = visitStatement(continueStatement, null)
|
||||
override fun visitContinueStatement(continueStatement: JKContinueStatement, data: Nothing?) = visitContinueStatement(continueStatement)
|
||||
fun visitLabeledStatement(labeledStatement: JKLabeledStatement) = visitExpression(labeledStatement, null)
|
||||
override fun visitLabeledStatement(labeledStatement: JKLabeledStatement, data: Nothing?) = visitLabeledStatement(labeledStatement)
|
||||
fun visitEmptyStatement(emptyStatement: JKEmptyStatement) = visitStatement(emptyStatement, null)
|
||||
override fun visitEmptyStatement(emptyStatement: JKEmptyStatement, data: Nothing?) = visitEmptyStatement(emptyStatement)
|
||||
fun visitTypeParameterList(typeParameterList: JKTypeParameterList) = visitTreeElement(typeParameterList, null)
|
||||
override fun visitTypeParameterList(typeParameterList: JKTypeParameterList, data: Nothing?) = visitTypeParameterList(typeParameterList)
|
||||
fun visitTypeParameter(typeParameter: JKTypeParameter) = visitTreeElement(typeParameter, null)
|
||||
override fun visitTypeParameter(typeParameter: JKTypeParameter, data: Nothing?) = visitTypeParameter(typeParameter)
|
||||
fun visitTypeParameterListOwner(typeParameterListOwner: JKTypeParameterListOwner) = visitTreeElement(typeParameterListOwner, null)
|
||||
override fun visitTypeParameterListOwner(typeParameterListOwner: JKTypeParameterListOwner, data: Nothing?) =
|
||||
visitTypeParameterListOwner(typeParameterListOwner)
|
||||
|
||||
fun visitEnumConstant(enumConstant: JKEnumConstant) = visitVariable(enumConstant, null)
|
||||
override fun visitEnumConstant(enumConstant: JKEnumConstant, data: Nothing?) = visitEnumConstant(enumConstant)
|
||||
fun visitForInStatement(forInStatement: JKForInStatement) = visitStatement(forInStatement, null)
|
||||
override fun visitForInStatement(forInStatement: JKForInStatement, data: Nothing?) = visitForInStatement(forInStatement)
|
||||
fun visitPackageDeclaration(packageDeclaration: JKPackageDeclaration) = visitDeclaration(packageDeclaration, null)
|
||||
override fun visitPackageDeclaration(packageDeclaration: JKPackageDeclaration, data: Nothing?) =
|
||||
visitPackageDeclaration(packageDeclaration)
|
||||
|
||||
fun visitClassLiteralExpression(classLiteralExpression: JKClassLiteralExpression) = visitExpression(classLiteralExpression, null)
|
||||
override fun visitClassLiteralExpression(classLiteralExpression: JKClassLiteralExpression, data: Nothing?) =
|
||||
visitClassLiteralExpression(classLiteralExpression)
|
||||
|
||||
fun visitAnnotationMemberValue(annotationMemberValue: JKAnnotationMemberValue) = visitTreeElement(annotationMemberValue, null)
|
||||
override fun visitAnnotationMemberValue(annotationMemberValue: JKAnnotationMemberValue, data: Nothing?) =
|
||||
visitAnnotationMemberValue(annotationMemberValue)
|
||||
|
||||
fun visitField(field: JKField) = visitVariable(field, null)
|
||||
override fun visitField(field: JKField, data: Nothing?) = visitField(field)
|
||||
fun visitJavaField(javaField: JKJavaField) = visitField(javaField, null)
|
||||
override fun visitJavaField(javaField: JKJavaField, data: Nothing?) = visitJavaField(javaField)
|
||||
fun visitJavaMethod(javaMethod: JKJavaMethod) = visitMethod(javaMethod, null)
|
||||
override fun visitJavaMethod(javaMethod: JKJavaMethod, data: Nothing?) = visitJavaMethod(javaMethod)
|
||||
fun visitJavaMethodCallExpression(javaMethodCallExpression: JKJavaMethodCallExpression) =
|
||||
visitMethodCallExpression(javaMethodCallExpression, null)
|
||||
|
||||
override fun visitJavaMethodCallExpression(javaMethodCallExpression: JKJavaMethodCallExpression, data: Nothing?) =
|
||||
visitJavaMethodCallExpression(javaMethodCallExpression)
|
||||
|
||||
fun visitClassBody(classBody: JKClassBody) = visitTreeElement(classBody, null)
|
||||
override fun visitClassBody(classBody: JKClassBody, data: Nothing?) = visitClassBody(classBody)
|
||||
fun visitEmptyClassBody(emptyClassBody: JKEmptyClassBody) = visitClassBody(emptyClassBody, null)
|
||||
override fun visitEmptyClassBody(emptyClassBody: JKEmptyClassBody, data: Nothing?) = visitEmptyClassBody(emptyClassBody)
|
||||
fun visitJavaNewExpression(javaNewExpression: JKJavaNewExpression) = visitExpression(javaNewExpression, null)
|
||||
override fun visitJavaNewExpression(javaNewExpression: JKJavaNewExpression, data: Nothing?) = visitJavaNewExpression(javaNewExpression)
|
||||
fun visitJavaDefaultNewExpression(javaDefaultNewExpression: JKJavaDefaultNewExpression) =
|
||||
visitExpression(javaDefaultNewExpression, null)
|
||||
|
||||
override fun visitJavaDefaultNewExpression(javaDefaultNewExpression: JKJavaDefaultNewExpression, data: Nothing?) =
|
||||
visitJavaDefaultNewExpression(javaDefaultNewExpression)
|
||||
|
||||
fun visitJavaNewEmptyArray(javaNewEmptyArray: JKJavaNewEmptyArray) = visitExpression(javaNewEmptyArray, null)
|
||||
override fun visitJavaNewEmptyArray(javaNewEmptyArray: JKJavaNewEmptyArray, data: Nothing?) = visitJavaNewEmptyArray(javaNewEmptyArray)
|
||||
fun visitJavaNewArray(javaNewArray: JKJavaNewArray) = visitExpression(javaNewArray, null)
|
||||
override fun visitJavaNewArray(javaNewArray: JKJavaNewArray, data: Nothing?) = visitJavaNewArray(javaNewArray)
|
||||
fun visitJavaLiteralExpression(javaLiteralExpression: JKJavaLiteralExpression) = visitLiteralExpression(javaLiteralExpression, null)
|
||||
override fun visitJavaLiteralExpression(javaLiteralExpression: JKJavaLiteralExpression, data: Nothing?) =
|
||||
visitJavaLiteralExpression(javaLiteralExpression)
|
||||
|
||||
fun visitReturnStatement(returnStatement: JKReturnStatement) = visitStatement(returnStatement, null)
|
||||
override fun visitReturnStatement(returnStatement: JKReturnStatement, data: Nothing?) = visitReturnStatement(returnStatement)
|
||||
fun visitJavaAssertStatement(javaAssertStatement: JKJavaAssertStatement) = visitStatement(javaAssertStatement, null)
|
||||
override fun visitJavaAssertStatement(javaAssertStatement: JKJavaAssertStatement, data: Nothing?) =
|
||||
visitJavaAssertStatement(javaAssertStatement)
|
||||
|
||||
fun visitJavaForLoopStatement(javaForLoopStatement: JKJavaForLoopStatement) = visitLoopStatement(javaForLoopStatement, null)
|
||||
override fun visitJavaForLoopStatement(javaForLoopStatement: JKJavaForLoopStatement, data: Nothing?) =
|
||||
visitJavaForLoopStatement(javaForLoopStatement)
|
||||
|
||||
fun visitJavaPolyadicExpression(javaPolyadicExpression: JKJavaPolyadicExpression) = visitExpression(javaPolyadicExpression, null)
|
||||
override fun visitJavaPolyadicExpression(javaPolyadicExpression: JKJavaPolyadicExpression, data: Nothing?) =
|
||||
visitJavaPolyadicExpression(javaPolyadicExpression)
|
||||
|
||||
fun visitJavaAssignmentExpression(javaAssignmentExpression: JKJavaAssignmentExpression) =
|
||||
visitExpression(javaAssignmentExpression, null)
|
||||
|
||||
override fun visitJavaAssignmentExpression(javaAssignmentExpression: JKJavaAssignmentExpression, data: Nothing?) =
|
||||
visitJavaAssignmentExpression(javaAssignmentExpression)
|
||||
|
||||
fun visitJavaThrowStatement(javaThrowStatement: JKJavaThrowStatement) = visitStatement(javaThrowStatement, null)
|
||||
override fun visitJavaThrowStatement(javaThrowStatement: JKJavaThrowStatement, data: Nothing?) =
|
||||
visitJavaThrowStatement(javaThrowStatement)
|
||||
|
||||
fun visitJavaTryStatement(javaTryStatement: JKJavaTryStatement) = visitStatement(javaTryStatement, null)
|
||||
override fun visitJavaTryStatement(javaTryStatement: JKJavaTryStatement, data: Nothing?) = visitJavaTryStatement(javaTryStatement)
|
||||
fun visitJavaTryCatchSection(javaTryCatchSection: JKJavaTryCatchSection) = visitTreeElement(javaTryCatchSection, null)
|
||||
override fun visitJavaTryCatchSection(javaTryCatchSection: JKJavaTryCatchSection, data: Nothing?) =
|
||||
visitJavaTryCatchSection(javaTryCatchSection)
|
||||
|
||||
fun visitJavaSwitchStatement(javaSwitchStatement: JKJavaSwitchStatement) = visitStatement(javaSwitchStatement, null)
|
||||
override fun visitJavaSwitchStatement(javaSwitchStatement: JKJavaSwitchStatement, data: Nothing?) =
|
||||
visitJavaSwitchStatement(javaSwitchStatement)
|
||||
|
||||
fun visitJavaSwitchCase(javaSwitchCase: JKJavaSwitchCase) = visitTreeElement(javaSwitchCase, null)
|
||||
override fun visitJavaSwitchCase(javaSwitchCase: JKJavaSwitchCase, data: Nothing?) = visitJavaSwitchCase(javaSwitchCase)
|
||||
fun visitJavaDefaultSwitchCase(javaDefaultSwitchCase: JKJavaDefaultSwitchCase) = visitJavaSwitchCase(javaDefaultSwitchCase, null)
|
||||
override fun visitJavaDefaultSwitchCase(javaDefaultSwitchCase: JKJavaDefaultSwitchCase, data: Nothing?) =
|
||||
visitJavaDefaultSwitchCase(javaDefaultSwitchCase)
|
||||
|
||||
fun visitJavaLabelSwitchCase(javaLabelSwitchCase: JKJavaLabelSwitchCase) = visitJavaSwitchCase(javaLabelSwitchCase, null)
|
||||
override fun visitJavaLabelSwitchCase(javaLabelSwitchCase: JKJavaLabelSwitchCase, data: Nothing?) =
|
||||
visitJavaLabelSwitchCase(javaLabelSwitchCase)
|
||||
|
||||
fun visitJavaContinueStatement(javaContinueStatement: JKJavaContinueStatement) = visitStatement(javaContinueStatement, null)
|
||||
override fun visitJavaContinueStatement(javaContinueStatement: JKJavaContinueStatement, data: Nothing?) =
|
||||
visitJavaContinueStatement(javaContinueStatement)
|
||||
|
||||
fun visitJavaSynchronizedStatement(javaSynchronizedStatement: JKJavaSynchronizedStatement) =
|
||||
visitStatement(javaSynchronizedStatement, null)
|
||||
|
||||
override fun visitJavaSynchronizedStatement(javaSynchronizedStatement: JKJavaSynchronizedStatement, data: Nothing?) =
|
||||
visitJavaSynchronizedStatement(javaSynchronizedStatement)
|
||||
|
||||
fun visitJavaAnnotationMethod(javaAnnotationMethod: JKJavaAnnotationMethod) = visitMethod(javaAnnotationMethod, null)
|
||||
override fun visitJavaAnnotationMethod(javaAnnotationMethod: JKJavaAnnotationMethod, data: Nothing?) =
|
||||
visitJavaAnnotationMethod(javaAnnotationMethod)
|
||||
|
||||
fun visitJavaStaticInitDeclaration(javaStaticInitDeclaration: JKJavaStaticInitDeclaration) =
|
||||
visitDeclaration(javaStaticInitDeclaration, null)
|
||||
|
||||
override fun visitJavaStaticInitDeclaration(javaStaticInitDeclaration: JKJavaStaticInitDeclaration, data: Nothing?) =
|
||||
visitJavaStaticInitDeclaration(javaStaticInitDeclaration)
|
||||
|
||||
fun visitKtGetterOrSetter(ktGetterOrSetter: JKKtGetterOrSetter) = visitTreeElement(ktGetterOrSetter, null)
|
||||
override fun visitKtGetterOrSetter(ktGetterOrSetter: JKKtGetterOrSetter, data: Nothing?) = visitKtGetterOrSetter(ktGetterOrSetter)
|
||||
fun visitKtEmptyGetterOrSetter(ktEmptyGetterOrSetter: JKKtEmptyGetterOrSetter) = visitKtGetterOrSetter(ktEmptyGetterOrSetter, null)
|
||||
override fun visitKtEmptyGetterOrSetter(ktEmptyGetterOrSetter: JKKtEmptyGetterOrSetter, data: Nothing?) =
|
||||
visitKtEmptyGetterOrSetter(ktEmptyGetterOrSetter)
|
||||
|
||||
fun visitKtProperty(ktProperty: JKKtProperty) = visitField(ktProperty, null)
|
||||
override fun visitKtProperty(ktProperty: JKKtProperty, data: Nothing?) = visitKtProperty(ktProperty)
|
||||
fun visitKtFunction(ktFunction: JKKtFunction) = visitMethod(ktFunction, null)
|
||||
override fun visitKtFunction(ktFunction: JKKtFunction, data: Nothing?) = visitKtFunction(ktFunction)
|
||||
fun visitKtConstructor(ktConstructor: JKKtConstructor) = visitMethod(ktConstructor, null)
|
||||
override fun visitKtConstructor(ktConstructor: JKKtConstructor, data: Nothing?) = visitKtConstructor(ktConstructor)
|
||||
fun visitKtPrimaryConstructor(ktPrimaryConstructor: JKKtPrimaryConstructor) = visitKtConstructor(ktPrimaryConstructor, null)
|
||||
override fun visitKtPrimaryConstructor(ktPrimaryConstructor: JKKtPrimaryConstructor, data: Nothing?) =
|
||||
visitKtPrimaryConstructor(ktPrimaryConstructor)
|
||||
|
||||
fun visitKtAssignmentStatement(ktAssignmentStatement: JKKtAssignmentStatement) = visitStatement(ktAssignmentStatement, null)
|
||||
override fun visitKtAssignmentStatement(ktAssignmentStatement: JKKtAssignmentStatement, data: Nothing?) =
|
||||
visitKtAssignmentStatement(ktAssignmentStatement)
|
||||
|
||||
fun visitKtCall(ktCall: JKKtCall) = visitMethodCallExpression(ktCall, null)
|
||||
override fun visitKtCall(ktCall: JKKtCall, data: Nothing?) = visitKtCall(ktCall)
|
||||
fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression) =
|
||||
visitMethodCallExpression(ktMethodCallExpression, null)
|
||||
|
||||
override fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression, data: Nothing?) =
|
||||
visitKtMethodCallExpression(ktMethodCallExpression)
|
||||
|
||||
fun visitKtAlsoCallExpression(ktAlsoCallExpression: JKKtAlsoCallExpression) = visitKtMethodCallExpression(ktAlsoCallExpression, null)
|
||||
override fun visitKtAlsoCallExpression(ktAlsoCallExpression: JKKtAlsoCallExpression, data: Nothing?) =
|
||||
visitKtAlsoCallExpression(ktAlsoCallExpression)
|
||||
|
||||
fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression) = visitLiteralExpression(ktLiteralExpression, null)
|
||||
override fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression, data: Nothing?) =
|
||||
visitKtLiteralExpression(ktLiteralExpression)
|
||||
|
||||
fun visitKtWhenStatement(ktWhenStatement: JKKtWhenStatement) = visitStatement(ktWhenStatement, null)
|
||||
override fun visitKtWhenStatement(ktWhenStatement: JKKtWhenStatement, data: Nothing?) = visitKtWhenStatement(ktWhenStatement)
|
||||
fun visitKtWhenCase(ktWhenCase: JKKtWhenCase) = visitTreeElement(ktWhenCase, null)
|
||||
override fun visitKtWhenCase(ktWhenCase: JKKtWhenCase, data: Nothing?) = visitKtWhenCase(ktWhenCase)
|
||||
fun visitKtWhenLabel(ktWhenLabel: JKKtWhenLabel) = visitTreeElement(ktWhenLabel, null)
|
||||
override fun visitKtWhenLabel(ktWhenLabel: JKKtWhenLabel, data: Nothing?) = visitKtWhenLabel(ktWhenLabel)
|
||||
fun visitKtElseWhenLabel(ktElseWhenLabel: JKKtElseWhenLabel) = visitKtWhenLabel(ktElseWhenLabel, null)
|
||||
override fun visitKtElseWhenLabel(ktElseWhenLabel: JKKtElseWhenLabel, data: Nothing?) = visitKtElseWhenLabel(ktElseWhenLabel)
|
||||
fun visitKtValueWhenLabel(ktValueWhenLabel: JKKtValueWhenLabel) = visitKtWhenLabel(ktValueWhenLabel, null)
|
||||
override fun visitKtValueWhenLabel(ktValueWhenLabel: JKKtValueWhenLabel, data: Nothing?) = visitKtValueWhenLabel(ktValueWhenLabel)
|
||||
fun visitKtIsExpression(ktIsExpression: JKKtIsExpression) = visitExpression(ktIsExpression, null)
|
||||
override fun visitKtIsExpression(ktIsExpression: JKKtIsExpression, data: Nothing?) = visitKtIsExpression(ktIsExpression)
|
||||
fun visitKtInitDeclaration(ktInitDeclaration: JKKtInitDeclaration) = visitDeclaration(ktInitDeclaration, null)
|
||||
override fun visitKtInitDeclaration(ktInitDeclaration: JKKtInitDeclaration, data: Nothing?) = visitKtInitDeclaration(ktInitDeclaration)
|
||||
fun visitKtConvertedFromForLoopSyntheticWhileStatement(ktConvertedFromForLoopSyntheticWhileStatement: JKKtConvertedFromForLoopSyntheticWhileStatement) =
|
||||
visitStatement(ktConvertedFromForLoopSyntheticWhileStatement, null)
|
||||
|
||||
override fun visitKtConvertedFromForLoopSyntheticWhileStatement(
|
||||
ktConvertedFromForLoopSyntheticWhileStatement: JKKtConvertedFromForLoopSyntheticWhileStatement,
|
||||
data: Nothing?
|
||||
) = visitKtConvertedFromForLoopSyntheticWhileStatement(ktConvertedFromForLoopSyntheticWhileStatement)
|
||||
|
||||
fun visitKtThrowExpression(ktThrowExpression: JKKtThrowExpression) = visitExpression(ktThrowExpression, null)
|
||||
override fun visitKtThrowExpression(ktThrowExpression: JKKtThrowExpression, data: Nothing?) = visitKtThrowExpression(ktThrowExpression)
|
||||
fun visitKtTryExpression(ktTryExpression: JKKtTryExpression) = visitExpression(ktTryExpression, null)
|
||||
override fun visitKtTryExpression(ktTryExpression: JKKtTryExpression, data: Nothing?) = visitKtTryExpression(ktTryExpression)
|
||||
fun visitKtTryCatchSection(ktTryCatchSection: JKKtTryCatchSection) = visitTreeElement(ktTryCatchSection, null)
|
||||
override fun visitKtTryCatchSection(ktTryCatchSection: JKKtTryCatchSection, data: Nothing?) = visitKtTryCatchSection(ktTryCatchSection)
|
||||
fun visitKtAnnotationArrayInitializerExpression(ktAnnotationArrayInitializerExpression: JKKtAnnotationArrayInitializerExpression) =
|
||||
visitExpression(ktAnnotationArrayInitializerExpression, null)
|
||||
|
||||
override fun visitKtAnnotationArrayInitializerExpression(
|
||||
ktAnnotationArrayInitializerExpression: JKKtAnnotationArrayInitializerExpression,
|
||||
data: Nothing?
|
||||
) = visitKtAnnotationArrayInitializerExpression(ktAnnotationArrayInitializerExpression)
|
||||
}
|
||||
+146
-164
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user