From 8939dd1a6e19f843f51773e7abe1a022c730949a Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Fri, 10 Aug 2012 14:17:24 +0400 Subject: [PATCH] Use notNullConditionalTestExpression utility in UnaryOperationTranslator. Adapted from https://github.com/develar/kotlin/commit/a9e0a42fb1347fa8e21c86b5a073ef8a7c873da0. --- .../translate/operation/UnaryOperationTranslator.java | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/operation/UnaryOperationTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/operation/UnaryOperationTranslator.java index 9a6f57e3fb0..4a68c9465ca 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/operation/UnaryOperationTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/operation/UnaryOperationTranslator.java @@ -16,10 +16,8 @@ package org.jetbrains.k2js.translate.operation; -import com.google.dart.compiler.backend.js.ast.JsBinaryOperation; import com.google.dart.compiler.backend.js.ast.JsConditional; import com.google.dart.compiler.backend.js.ast.JsExpression; -import com.google.dart.compiler.util.AstUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.psi.JetUnaryExpression; import org.jetbrains.jet.lexer.JetTokens; @@ -35,14 +33,13 @@ import static org.jetbrains.k2js.translate.general.Translation.translateAsExpres import static org.jetbrains.k2js.translate.utils.BindingUtils.getResolvedCall; import static org.jetbrains.k2js.translate.utils.PsiUtils.getBaseExpression; import static org.jetbrains.k2js.translate.utils.PsiUtils.getOperationToken; -import static org.jetbrains.k2js.translate.utils.TranslationUtils.notNullCheck; +import static org.jetbrains.k2js.translate.utils.TranslationUtils.notNullConditionalTestExpression; /** * @author Pavel Talanov */ public final class UnaryOperationTranslator { - private UnaryOperationTranslator() { } @@ -65,9 +62,7 @@ public final class UnaryOperationTranslator { @NotNull private static JsExpression translateExclExclOperator(@NotNull JetUnaryExpression expression, @NotNull TranslationContext context) { TemporaryVariable cachedValue = context.declareTemporary(translateAsExpression(getBaseExpression(expression), context)); - JsBinaryOperation initAndCheckNotNull = AstUtil.newSequence(cachedValue.assignmentExpression(), - notNullCheck(context, cachedValue.reference())); - return new JsConditional(initAndCheckNotNull, cachedValue.reference(), context.namer().throwNPEFunctionCall()); + return new JsConditional(notNullConditionalTestExpression(cachedValue), cachedValue.reference(), context.namer().throwNPEFunctionCall()); } @NotNull