From 5843336d427256680c1c9b0a7aec7f5fe3d71ae6 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Wed, 29 May 2019 16:53:34 +0300 Subject: [PATCH] Fix compiler errors in nj2k detected after changes in NI --- .../org/jetbrains/kotlin/nj2k/JavaToJKTreeBuilder.kt | 11 +---------- .../jetbrains/kotlin/nj2k/tree/DebugTreePrinter.kt | 5 +++-- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/nj2k/src/org/jetbrains/kotlin/nj2k/JavaToJKTreeBuilder.kt b/nj2k/src/org/jetbrains/kotlin/nj2k/JavaToJKTreeBuilder.kt index 9f5123ebc62..c33726d9996 100644 --- a/nj2k/src/org/jetbrains/kotlin/nj2k/JavaToJKTreeBuilder.kt +++ b/nj2k/src/org/jetbrains/kotlin/nj2k/JavaToJKTreeBuilder.kt @@ -235,16 +235,7 @@ class JavaToJKTreeBuilder constructor( fun IElementType.toJK(): JKOperator = JKJavaOperatorImpl.tokenToOperator[this] ?: error("Unsupported token-type: $this") fun PsiPrefixExpression.toJK(): JKExpression { - return JKPrefixExpressionImpl(operand.toJK(), operationSign.tokenType.toJK()).let { - if (it.operator.token in listOf(JavaTokenType.PLUS, JavaTokenType.MINUS) - && it.expression is JKLiteralExpression - ) { - JKJavaLiteralExpressionImpl( - it.operator.token.text + (it.expression as JKLiteralExpression).literal, - (it.expression as JKLiteralExpression).type - ) - } else it - }.also { + return JKPrefixExpressionImpl(operand.toJK(), operationSign.tokenType.toJK()).also { it.assignNonCodeElements(this) } } diff --git a/nj2k/src/org/jetbrains/kotlin/nj2k/tree/DebugTreePrinter.kt b/nj2k/src/org/jetbrains/kotlin/nj2k/tree/DebugTreePrinter.kt index ebafd63baf7..f0f8cddd1ec 100644 --- a/nj2k/src/org/jetbrains/kotlin/nj2k/tree/DebugTreePrinter.kt +++ b/nj2k/src/org/jetbrains/kotlin/nj2k/tree/DebugTreePrinter.kt @@ -93,8 +93,9 @@ private class DebugTreePrinter : JKVisitorVoid { } fun printSymbol(symbol: JKSymbol) { - if (symbol is JKUniverseSymbol<*>) { - printer.printWithNoIndent(symbol.target.describe()) + val target = symbol.target + if (target is JKTreeElement) { + printer.printWithNoIndent(target.describe()) } else { printer.printWithNoIndent("Psi") }