diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallTranslator.java index 475bc6cb7b1..9bbd6f29eb1 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallTranslator.java @@ -150,8 +150,19 @@ public final class CallTranslator extends AbstractTranslator { } @NotNull - public JsExpression extensionFunctionCall(boolean useThis) { - return callType.constructCall(callParameters.getReceiver(), new ExtensionCallConstructor(useThis), context()); + public JsExpression extensionFunctionCall(final boolean useThis) { + return callType.constructCall(callParameters.getReceiver(), new CallType.CallConstructor() { + @NotNull + @Override + public JsExpression construct(@Nullable JsExpression receiver) { + assert receiver != null : "Could not be null for extensions"; + JsExpression functionReference = callParameters.getFunctionReference(); + if (useThis) { + setQualifier(functionReference, getThisObjectOrQualifier()); + } + return new JsInvocation(callParameters.getFunctionReference(), generateCallArgumentList(receiver)); + } + }, context()); } @NotNull @@ -215,23 +226,4 @@ public final class CallTranslator extends AbstractTranslator { } return context().getQualifierForDescriptor(descriptor); } - - private class ExtensionCallConstructor implements CallType.CallConstructor { - private final boolean useThis; - - private ExtensionCallConstructor(boolean useThis) { - this.useThis = useThis; - } - - @NotNull - @Override - public JsExpression construct(@Nullable JsExpression receiver) { - assert receiver != null : "Could not be null for extensions"; - JsExpression functionReference = callParameters.getFunctionReference(); - if (useThis) { - setQualifier(functionReference, getThisObjectOrQualifier()); - } - return new JsInvocation(callParameters.getFunctionReference(), generateCallArgumentList(receiver)); - } - } }