JS: turn off inline call extraction at translation
This commit is contained in:
+1
-13
@@ -195,19 +195,7 @@ public final class ExpressionVisitor extends TranslatorVisitor<JsNode> {
|
||||
@NotNull JetCallExpression expression,
|
||||
@NotNull TranslationContext context
|
||||
) {
|
||||
if (shouldBeInlined(expression, context) &&
|
||||
BindingContextUtilPackage.isUsedAsExpression(expression, context.bindingContext())) {
|
||||
TemporaryVariable temporaryVariable = context.declareTemporary(null);
|
||||
|
||||
JsNode callResult = CallExpressionTranslator.translate(expression, null, context).source(expression);
|
||||
assert callResult instanceof JsExpression;
|
||||
|
||||
JsExpression assignment = JsAstUtils.assignment(temporaryVariable.reference(), (JsExpression) callResult);
|
||||
context.addStatementToCurrentBlock(assignment.makeStmt());
|
||||
return temporaryVariable.reference();
|
||||
} else {
|
||||
return CallExpressionTranslator.translate(expression, null, context).source(expression);
|
||||
}
|
||||
return CallExpressionTranslator.translate(expression, null, context).source(expression);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+1
-13
@@ -73,19 +73,7 @@ public final class QualifiedExpressionTranslator {
|
||||
return VariableAccessTranslator.newInstance(context, (JetSimpleNameExpression)selector, receiver).translateAsGet();
|
||||
}
|
||||
if (selector instanceof JetCallExpression) {
|
||||
if (shouldBeInlined((JetCallExpression) selector, context) &&
|
||||
BindingContextUtilPackage.isUsedAsExpression(selector, context.bindingContext())) {
|
||||
TemporaryVariable temporaryVariable = context.declareTemporary(null);
|
||||
|
||||
JsNode result = invokeCallExpressionTranslator(receiver, selector, context);
|
||||
assert result instanceof JsExpression;
|
||||
|
||||
JsExpression assignment = JsAstUtils.assignment(temporaryVariable.reference(), (JsExpression) result);
|
||||
context.addStatementToCurrentBlock(assignment.makeStmt());
|
||||
return temporaryVariable.reference();
|
||||
} else {
|
||||
return invokeCallExpressionTranslator(receiver, selector, context);
|
||||
}
|
||||
return invokeCallExpressionTranslator(receiver, selector, context);
|
||||
}
|
||||
//TODO: never get there
|
||||
if (selector instanceof JetSimpleNameExpression) {
|
||||
|
||||
Reference in New Issue
Block a user