From aeae668f3d987740e2c2cc8432a833a67c246812 Mon Sep 17 00:00:00 2001 From: Dimach Date: Thu, 4 Jan 2018 16:05:21 +0200 Subject: [PATCH] New J2K: Addded kt expressions and changed literals logic. --- .../kotlin/j2k/JavaToJKTreeBuilder.kt | 8 +++-- .../org/jetbrains/kotlin/j2k/tree/impl/j.kt | 5 +-- .../org/jetbrains/kotlin/j2k/tree/impl/jk.kt | 4 --- .../org/jetbrains/kotlin/j2k/tree/impl/k.kt | 36 +++++++++++++++++++ j2k/newSrc/org/jetbrains/kotlin/j2k/tree/j.kt | 14 +++----- .../org/jetbrains/kotlin/j2k/tree/jk.kt | 9 ++++- j2k/newSrc/org/jetbrains/kotlin/j2k/tree/k.kt | 12 ++++++- .../kotlin/j2k/tree/visitors/JKTransformer.kt | 16 ++++++--- .../j2k/tree/visitors/JKTransformerVoid.kt | 22 +++++++++--- .../kotlin/j2k/tree/visitors/JKVisitor.kt | 6 ++++ .../kotlin/j2k/tree/visitors/JKVisitorVoid.kt | 12 +++++++ 11 files changed, 113 insertions(+), 31 deletions(-) diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/JavaToJKTreeBuilder.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/JavaToJKTreeBuilder.kt index 0e94c47ea1c..6580174d784 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/JavaToJKTreeBuilder.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/JavaToJKTreeBuilder.kt @@ -108,10 +108,12 @@ class JavaToJKTreeBuilder : ReferenceTargetProvider { if (this !is PsiLiteralExpressionImpl) { throw RuntimeException("Not supported") } - return when (this.literalElementType) { - JavaTokenType.STRING_LITERAL -> JKJavaStringLiteralExpressionImpl(innerText!!) + return JKJavaLiteralExpressionImpl(innerText!!, when (this.literalElementType) { + JavaTokenType.STRING_LITERAL -> JKLiteralExpression.LiteralType.STRING + JavaTokenType.TRUE_KEYWORD, JavaTokenType.FALSE_KEYWORD -> JKLiteralExpression.LiteralType.BOOLEAN + JavaTokenType.NULL_KEYWORD -> JKLiteralExpression.LiteralType.NULL else -> throw RuntimeException("Not supported") - } + }) } fun PsiJavaToken.toJK(): JKOperatorIdentifier = when (tokenType) { diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/j.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/j.kt index a712c2bfe52..fb67ba2b7d0 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/j.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/j.kt @@ -39,8 +39,9 @@ class JKJavaFieldImpl(override var modifierList: JKModifierList, } } -class JKJavaStringLiteralExpressionImpl(override val text: String) : JKJavaStringLiteralExpression, JKElementBase() { - override fun accept(visitor: JKVisitor, data: D): R = visitor.visitJavaStringLiteralExpression(this, data) + +class JKJavaLiteralExpressionImpl(override val literal: String, override val type: JKLiteralExpression.LiteralType) : JKJavaLiteralExpression, JKElementBase() { + override fun accept(visitor: JKVisitor, data: D): R = visitor.visitJavaLiteralExpression(this, data) } diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/jk.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/jk.kt index c7be4728a3a..8134457ee90 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/jk.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/jk.kt @@ -94,10 +94,6 @@ class JKBlockImpl(override var statements: List) : JKBlock, JKEleme } } -class JKStringLiteralExpressionImpl(override val text: String) : JKStringLiteralExpression, JKElementBase() { - override fun accept(visitor: JKVisitor, data: D): R = visitor.visitStringLiteralExpression(this, data) -} - class JKBinaryExpressionImpl( override var left: JKExpression, override var right: JKExpression?, override var operator: JKOperatorIdentifier diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/k.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/k.kt index 0583b24903c..17560468476 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/k.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/impl/k.kt @@ -57,3 +57,39 @@ class JKKtFunctionImpl(override var returnType: JKTypeIdentifier, override val valid: Boolean get() = true } + +sealed class JKKtQualificationIdentifierImpl : JKKtQualificationIdentifier, JKElementBase() { + override fun accept(visitor: JKVisitor, data: D): R = visitor.visitKtQualificationIdentifier(this, data) + + object DOT : JKKtQualificationIdentifierImpl() + object SAFE : JKKtQualificationIdentifierImpl() +} + +class JKKtCallExpressionImpl(override val identifier: JKMethodReference, + override val arguments: JKExpressionList) : JKKtMethodCallExpression, JKElementBase() { + override fun accept(visitor: JKVisitor, data: D): R = visitor.visitKtMethodCallExpression(this, data) + + override fun acceptChildren(visitor: JKVisitor, data: D) { + identifier.accept(visitor, data) + arguments.accept(visitor, data) + } +} + +class JKKtFieldAccessExpressionImpl(override val identifier: JKFieldReference) : JKKtFieldAccessExpression, JKElementBase() { + override fun accept(visitor: JKVisitor, data: D): R = visitor.visitKtFieldAccessExpression(this, data) + + override fun acceptChildren(visitor: JKVisitor, data: D) { + identifier.accept(visitor, data) + } +} + +class JKKtLiteralExpressionImpl(override val literal: String, override val type: JKLiteralExpression.LiteralType) : JKKtLiteralExpression, JKElementBase() { + override fun accept(visitor: JKVisitor, data: D): R = visitor.visitKtLiteralExpression(this, data) +} + +sealed class JKKtOperatorIdentifierImpl : JKKtOperatorIdentifier, JKElementBase() { + override fun accept(visitor: JKVisitor, data: D): R = visitor.visitKtOperatorIdentifier(this, data) + + object PLUS : JKKtOperatorIdentifierImpl() + object MINUS : JKKtOperatorIdentifierImpl() +} \ No newline at end of file diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/j.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/j.kt index ee9cbf9416e..631581d0daf 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/j.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/j.kt @@ -36,21 +36,13 @@ interface JKJavaArrayType : JKType { val type: JKType } -interface JKJavaStringLiteralExpression : JKLiteralExpression { - val text: String -} - interface JKJavaOperatorIdentifier : JKOperatorIdentifier interface JKJavaQualificationIdentifier : JKQualificationIdentifier -interface JKJavaMethodCallExpression : JKMethodCallExpression { +interface JKJavaMethodCallExpression : JKMethodCallExpression -} - -interface JKJavaFieldAccessExpression : JKFieldAccessExpression { - -} +interface JKJavaFieldAccessExpression : JKFieldAccessExpression interface JKJavaNewExpression : JKExpression { val identifier: JKClassReference @@ -86,3 +78,5 @@ interface JKJavaNewEmptyArray : JKExpression { interface JKJavaNewArray : JKExpression { val initializer: List } + +interface JKJavaLiteralExpression : JKLiteralExpression \ No newline at end of file diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/jk.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/jk.kt index bbac81c6078..e60dbdc1b38 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/jk.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/jk.kt @@ -139,7 +139,14 @@ interface JKNameIdentifier : JKIdentifier { val name: String } -interface JKLiteralExpression : JKExpression +interface JKLiteralExpression : JKExpression { + val literal: String + val type: LiteralType + + enum class LiteralType { + STRING, BOOLEAN, NULL + } +} interface JKModifierList : JKElement { val modifiers: List diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/k.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/k.kt index a72d4cfbc80..49d4be88105 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/k.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/k.kt @@ -47,4 +47,14 @@ interface JKKtModifier : JKModifier { ACTUAL, ABSTRACT, ANNOTATION, COMPANION, CONST, CROSSINLINE, DATA, ENUM, EXPECT, EXTERNAL, FINAL, INFIX, INLINE, INNER, INTERNAL, LATEINIT, NOINLINE, OPEN, OPERATOR, OUT, OVERRIDE, REIFIED, SEALED, SUSPEND, TAILREC, VARARG } -} \ No newline at end of file +} + +interface JKKtQualificationIdentifier : JKQualificationIdentifier + +interface JKKtMethodCallExpression : JKMethodCallExpression + +interface JKKtFieldAccessExpression : JKFieldAccessExpression + +interface JKKtLiteralExpression : JKLiteralExpression + +interface JKKtOperatorIdentifier : JKOperatorIdentifier \ No newline at end of file diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformer.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformer.kt index 4ab5a6fb335..25f95d0ea40 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformer.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformer.kt @@ -40,12 +40,12 @@ interface JKTransformer : JKVisitor { override fun visitModalityModifier(modalityModifier: JKModalityModifier, data: D): JKModalityModifier = visitModifier(modalityModifier, data) as JKModalityModifier override fun visitMethod(method: JKMethod, data: D): JKMethod = visitDeclaration(method, data) as JKMethod override fun visitExpressionStatement(expressionStatement: JKExpressionStatement, data: D): JKExpressionStatement = visitStatement(expressionStatement, data) as JKExpressionStatement - override fun visitJavaField(javaField: JKJavaField, data: D): JKDeclaration = visitDeclaration(javaField, data) - override fun visitJavaMethod(javaMethod: JKJavaMethod, data: D): JKMethod = visitMethod(javaMethod, data) + override fun visitJavaField(javaField: JKJavaField, data: D): JKDeclaration = visitDeclaration(javaField, data) + override fun visitJavaMethod(javaMethod: JKJavaMethod, data: D): JKMethod = visitMethod(javaMethod, data) override fun visitJavaForLoop(javaForLoop: JKJavaForLoop, data: D): JKLoop = visitLoop(javaForLoop, data) override fun visitJavaAssignmentExpression(javaAssignmentExpression: JKJavaAssignmentExpression, data: D): JKExpression = visitExpression(javaAssignmentExpression, data) - override fun visitJavaPrimitiveType(javaPrimitiveType: JKJavaPrimitiveType, data: D): JKType = visitType(javaPrimitiveType, data) - override fun visitJavaArrayType(javaArrayType: JKJavaArrayType, data: D): JKType = visitType(javaArrayType, data) + override fun visitJavaPrimitiveType(javaPrimitiveType: JKJavaPrimitiveType, data: D): JKType = visitType(javaPrimitiveType, data) + override fun visitJavaArrayType(javaArrayType: JKJavaArrayType, data: D): JKType = visitType(javaArrayType, data) override fun visitJavaStringLiteralExpression(javaStringLiteralExpression: JKJavaStringLiteralExpression, data: D): JKLiteralExpression = visitLiteralExpression(javaStringLiteralExpression, data) override fun visitJavaOperatorIdentifier(javaOperatorIdentifier: JKJavaOperatorIdentifier, data: D): JKOperatorIdentifier = visitOperatorIdentifier(javaOperatorIdentifier, data) override fun visitJavaQualificationIdentifier(javaQualificationIdentifier: JKJavaQualificationIdentifier, data: D): JKQualificationIdentifier = visitQualificationIdentifier(javaQualificationIdentifier, data) @@ -59,10 +59,16 @@ interface JKTransformer : JKVisitor { override fun visitJavaModifier(javaModifier: JKJavaModifier, data: D): JKModifier = visitModifier(javaModifier, data) override fun visitJavaNewEmptyArray(javaNewEmptyArray: JKJavaNewEmptyArray, data: D): JKExpression = visitExpression(javaNewEmptyArray, data) override fun visitJavaNewArray(javaNewArray: JKJavaNewArray, data: D): JKExpression = visitExpression(javaNewArray, data) - override fun visitKtFun(ktFun: JKKtFun, data: D): JKDeclaration = visitDeclaration(ktFun, data) + override fun visitJavaLiteralExpression(javaLiteralExpression: JKJavaLiteralExpression, data: D): JKLiteralExpression = visitLiteralExpression(javaLiteralExpression, data) + override fun visitKtFun(ktFun: JKKtFun, data: D): JKDeclaration = visitDeclaration(ktFun, data) override fun visitKtConstructor(ktConstructor: JKKtConstructor, data: D): JKDeclaration = visitDeclaration(ktConstructor, data) override fun visitKtPrimaryConstructor(ktPrimaryConstructor: JKKtPrimaryConstructor, data: D): JKDeclaration = visitKtConstructor(ktPrimaryConstructor, data) override fun visitKtAssignmentStatement(ktAssignmentStatement: JKKtAssignmentStatement, data: D): JKStatement = visitStatement(ktAssignmentStatement, data) override fun visitKtCall(ktCall: JKKtCall, data: D): JKMethodCallExpression = visitMethodCallExpression(ktCall, data) override fun visitKtProperty(ktProperty: JKKtProperty, data: D): JKDeclaration = visitDeclaration(ktProperty, data) + override fun visitKtQualificationIdentifier(ktQualificationIdentifier: JKKtQualificationIdentifier, data: D): JKQualificationIdentifier = visitQualificationIdentifier(ktQualificationIdentifier, data) + override fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression, data: D): JKMethodCallExpression = visitMethodCallExpression(ktMethodCallExpression, data) + override fun visitKtFieldAccessExpression(ktFieldAccessExpression: JKKtFieldAccessExpression, data: D): JKFieldAccessExpression = visitFieldAccessExpression(ktFieldAccessExpression, data) + override fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression, data: D): JKLiteralExpression = visitLiteralExpression(ktLiteralExpression, data) + override fun visitKtOperatorIdentifier(ktOperatorIdentifier: JKKtOperatorIdentifier, data: D): JKOperatorIdentifier = visitOperatorIdentifier(ktOperatorIdentifier, data) } diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformerVoid.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformerVoid.kt index 3a9ea63aa2d..af0aa3e1afb 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformerVoid.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKTransformerVoid.kt @@ -77,17 +77,17 @@ interface JKTransformerVoid : JKTransformer { override fun visitMethod(method: JKMethod, data: Nothing?): JKMethod = visitMethod(method) fun visitExpressionStatement(expressionStatement: JKExpressionStatement): JKExpressionStatement = visitStatement(expressionStatement) as JKExpressionStatement override fun visitExpressionStatement(expressionStatement: JKExpressionStatement, data: Nothing?): JKExpressionStatement = visitExpressionStatement(expressionStatement) - fun visitJavaField(javaField: JKJavaField): JKDeclaration = visitDeclaration(javaField) + fun visitJavaField(javaField: JKJavaField): JKDeclaration = visitDeclaration(javaField) override fun visitJavaField(javaField: JKJavaField, data: Nothing?): JKDeclaration = visitJavaField(javaField) - fun visitJavaMethod(javaMethod: JKJavaMethod): JKMethod = visitMethod(javaMethod) + fun visitJavaMethod(javaMethod: JKJavaMethod): JKMethod = visitMethod(javaMethod) override fun visitJavaMethod(javaMethod: JKJavaMethod, data: Nothing?): JKMethod = visitJavaMethod(javaMethod) fun visitJavaForLoop(javaForLoop: JKJavaForLoop): JKLoop = visitLoop(javaForLoop) override fun visitJavaForLoop(javaForLoop: JKJavaForLoop, data: Nothing?): JKLoop = visitJavaForLoop(javaForLoop) fun visitJavaAssignmentExpression(javaAssignmentExpression: JKJavaAssignmentExpression): JKExpression = visitExpression(javaAssignmentExpression) override fun visitJavaAssignmentExpression(javaAssignmentExpression: JKJavaAssignmentExpression, data: Nothing?): JKExpression = visitJavaAssignmentExpression(javaAssignmentExpression) - fun visitJavaPrimitiveType(javaPrimitiveType: JKJavaPrimitiveType): JKType = visitType(javaPrimitiveType) + fun visitJavaPrimitiveType(javaPrimitiveType: JKJavaPrimitiveType): JKType = visitType(javaPrimitiveType) override fun visitJavaPrimitiveType(javaPrimitiveType: JKJavaPrimitiveType, data: Nothing?): JKType = visitJavaPrimitiveType(javaPrimitiveType) - fun visitJavaArrayType(javaArrayType: JKJavaArrayType): JKType = visitType(javaArrayType) + fun visitJavaArrayType(javaArrayType: JKJavaArrayType): JKType = visitType(javaArrayType) override fun visitJavaArrayType(javaArrayType: JKJavaArrayType, data: Nothing?): JKType = visitJavaArrayType(javaArrayType) fun visitJavaStringLiteralExpression(javaStringLiteralExpression: JKJavaStringLiteralExpression): JKLiteralExpression = visitLiteralExpression(javaStringLiteralExpression) override fun visitJavaStringLiteralExpression(javaStringLiteralExpression: JKJavaStringLiteralExpression, data: Nothing?): JKLiteralExpression = visitJavaStringLiteralExpression(javaStringLiteralExpression) @@ -115,7 +115,9 @@ interface JKTransformerVoid : JKTransformer { override fun visitJavaNewEmptyArray(javaNewEmptyArray: JKJavaNewEmptyArray, data: Nothing?): JKExpression = visitJavaNewEmptyArray(javaNewEmptyArray) fun visitJavaNewArray(javaNewArray: JKJavaNewArray): JKExpression = visitExpression(javaNewArray) override fun visitJavaNewArray(javaNewArray: JKJavaNewArray, data: Nothing?): JKExpression = visitJavaNewArray(javaNewArray) - fun visitKtFun(ktFun: JKKtFun): JKDeclaration = visitDeclaration(ktFun) + fun visitJavaLiteralExpression(javaLiteralExpression: JKJavaLiteralExpression): JKLiteralExpression = visitLiteralExpression(javaLiteralExpression) + override fun visitJavaLiteralExpression(javaLiteralExpression: JKJavaLiteralExpression, data: Nothing?): JKLiteralExpression = visitJavaLiteralExpression(javaLiteralExpression) + fun visitKtFun(ktFun: JKKtFun): JKDeclaration = visitDeclaration(ktFun) override fun visitKtFun(ktFun: JKKtFun, data: Nothing?): JKDeclaration = visitKtFun(ktFun) fun visitKtConstructor(ktConstructor: JKKtConstructor): JKDeclaration = visitDeclaration(ktConstructor) override fun visitKtConstructor(ktConstructor: JKKtConstructor, data: Nothing?): JKDeclaration = visitKtConstructor(ktConstructor) @@ -127,4 +129,14 @@ interface JKTransformerVoid : JKTransformer { override fun visitKtCall(ktCall: JKKtCall, data: Nothing?): JKMethodCallExpression = visitKtCall(ktCall) fun visitKtProperty(ktProperty: JKKtProperty): JKDeclaration = visitDeclaration(ktProperty) override fun visitKtProperty(ktProperty: JKKtProperty, data: Nothing?): JKDeclaration = visitKtProperty(ktProperty) + fun visitKtQualificationIdentifier(ktQualificationIdentifier: JKKtQualificationIdentifier): JKQualificationIdentifier = visitQualificationIdentifier(ktQualificationIdentifier) + override fun visitKtQualificationIdentifier(ktQualificationIdentifier: JKKtQualificationIdentifier, data: Nothing?): JKQualificationIdentifier = visitKtQualificationIdentifier(ktQualificationIdentifier) + fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression): JKMethodCallExpression = visitMethodCallExpression(ktMethodCallExpression) + override fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression, data: Nothing?): JKMethodCallExpression = visitKtMethodCallExpression(ktMethodCallExpression) + fun visitKtFieldAccessExpression(ktFieldAccessExpression: JKKtFieldAccessExpression): JKFieldAccessExpression = visitFieldAccessExpression(ktFieldAccessExpression) + override fun visitKtFieldAccessExpression(ktFieldAccessExpression: JKKtFieldAccessExpression, data: Nothing?): JKFieldAccessExpression = visitKtFieldAccessExpression(ktFieldAccessExpression) + fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression): JKLiteralExpression = visitLiteralExpression(ktLiteralExpression) + override fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression, data: Nothing?): JKLiteralExpression = visitKtLiteralExpression(ktLiteralExpression) + fun visitKtOperatorIdentifier(ktOperatorIdentifier: JKKtOperatorIdentifier): JKOperatorIdentifier = visitOperatorIdentifier(ktOperatorIdentifier) + override fun visitKtOperatorIdentifier(ktOperatorIdentifier: JKKtOperatorIdentifier, data: Nothing?): JKOperatorIdentifier = visitKtOperatorIdentifier(ktOperatorIdentifier) } diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitor.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitor.kt index 87020ee2048..99e2607eb15 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitor.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitor.kt @@ -59,10 +59,16 @@ interface JKVisitor { fun visitJavaModifier(javaModifier: JKJavaModifier, data: D): R = visitModifier(javaModifier, 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 visitKtFun(ktFun: JKKtFun, data: D): R = visitDeclaration(ktFun, data) fun visitKtConstructor(ktConstructor: JKKtConstructor, data: D): R = visitDeclaration(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 visitKtProperty(ktProperty: JKKtProperty, data: D): R = visitDeclaration(ktProperty, data) + fun visitKtQualificationIdentifier(ktQualificationIdentifier: JKKtQualificationIdentifier, data: D): R = visitQualificationIdentifier(ktQualificationIdentifier, data) + fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression, data: D): R = visitMethodCallExpression(ktMethodCallExpression, data) + fun visitKtFieldAccessExpression(ktFieldAccessExpression: JKKtFieldAccessExpression, data: D): R = visitFieldAccessExpression(ktFieldAccessExpression, data) + fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression, data: D): R = visitLiteralExpression(ktLiteralExpression, data) + fun visitKtOperatorIdentifier(ktOperatorIdentifier: JKKtOperatorIdentifier, data: D): R = visitOperatorIdentifier(ktOperatorIdentifier, data) } diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitorVoid.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitorVoid.kt index e14100c6cd1..8659b0d5a8b 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitorVoid.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/tree/visitors/JKVisitorVoid.kt @@ -115,6 +115,8 @@ interface JKVisitorVoid : JKVisitor { 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 visitKtFun(ktFun: JKKtFun) = visitDeclaration(ktFun, null) override fun visitKtFun(ktFun: JKKtFun, data: Nothing?) = visitKtFun(ktFun) fun visitKtConstructor(ktConstructor: JKKtConstructor) = visitDeclaration(ktConstructor, null) @@ -127,4 +129,14 @@ interface JKVisitorVoid : JKVisitor { override fun visitKtCall(ktCall: JKKtCall, data: Nothing?) = visitKtCall(ktCall) fun visitKtProperty(ktProperty: JKKtProperty) = visitDeclaration(ktProperty, null) override fun visitKtProperty(ktProperty: JKKtProperty, data: Nothing?) = visitKtProperty(ktProperty) + fun visitKtQualificationIdentifier(ktQualificationIdentifier: JKKtQualificationIdentifier) = visitQualificationIdentifier(ktQualificationIdentifier, null) + override fun visitKtQualificationIdentifier(ktQualificationIdentifier: JKKtQualificationIdentifier, data: Nothing?) = visitKtQualificationIdentifier(ktQualificationIdentifier) + fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression) = visitMethodCallExpression(ktMethodCallExpression, null) + override fun visitKtMethodCallExpression(ktMethodCallExpression: JKKtMethodCallExpression, data: Nothing?) = visitKtMethodCallExpression(ktMethodCallExpression) + fun visitKtFieldAccessExpression(ktFieldAccessExpression: JKKtFieldAccessExpression) = visitFieldAccessExpression(ktFieldAccessExpression, null) + override fun visitKtFieldAccessExpression(ktFieldAccessExpression: JKKtFieldAccessExpression, data: Nothing?) = visitKtFieldAccessExpression(ktFieldAccessExpression) + fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression) = visitLiteralExpression(ktLiteralExpression, null) + override fun visitKtLiteralExpression(ktLiteralExpression: JKKtLiteralExpression, data: Nothing?) = visitKtLiteralExpression(ktLiteralExpression) + fun visitKtOperatorIdentifier(ktOperatorIdentifier: JKKtOperatorIdentifier) = visitOperatorIdentifier(ktOperatorIdentifier, null) + override fun visitKtOperatorIdentifier(ktOperatorIdentifier: JKKtOperatorIdentifier, data: Nothing?) = visitKtOperatorIdentifier(ktOperatorIdentifier) }