From d6a6bd7cac25b2d5f190386ba10821010dbc150a Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Fri, 10 Aug 2012 21:08:50 +0400 Subject: [PATCH] New aliasing context usages. Adapted from https://github.com/develar/kotlin/commit/a9e0a42fb1347fa8e21c86b5a073ef8a7c873da0. --- .../k2js/translate/expression/ExpressionVisitor.java | 5 +---- .../translate/reference/CallParametersResolver.java | 10 ++-------- .../reference/NativePropertyAccessTranslator.java | 3 +-- 3 files changed, 4 insertions(+), 14 deletions(-) diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java b/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java index b6ab1df3ce4..fe1196da221 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java @@ -34,7 +34,6 @@ import org.jetbrains.k2js.translate.operation.BinaryOperationTranslator; import org.jetbrains.k2js.translate.operation.UnaryOperationTranslator; import org.jetbrains.k2js.translate.reference.*; import org.jetbrains.k2js.translate.utils.BindingUtils; -import org.jetbrains.k2js.translate.utils.TranslationUtils; import org.jetbrains.k2js.translate.utils.mutator.AssignToExpressionMutator; import java.util.List; @@ -339,9 +338,7 @@ public final class ExpressionVisitor extends TranslatorVisitor { @NotNull public JsNode visitThisExpression(@NotNull JetThisExpression expression, @NotNull TranslationContext context) { - DeclarationDescriptor descriptor = - getDescriptorForReferenceExpression(context.bindingContext(), expression.getInstanceReference()); - return TranslationUtils.getThisObject(context, descriptor); + return context.getThisObject(getDescriptorForReferenceExpression(context.bindingContext(), expression.getInstanceReference())); } @Override diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallParametersResolver.java b/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallParametersResolver.java index 5dd69d959d5..0989beaecfe 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallParametersResolver.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/reference/CallParametersResolver.java @@ -26,7 +26,6 @@ import org.jetbrains.jet.lang.resolve.calls.ResolvedCall; import org.jetbrains.jet.lang.resolve.calls.ResolvedCallWithTrace; import org.jetbrains.jet.lang.resolve.calls.VariableAsFunctionResolvedCall; import org.jetbrains.k2js.translate.context.TranslationContext; -import org.jetbrains.k2js.translate.utils.TranslationUtils; import static org.jetbrains.k2js.translate.utils.JsDescriptorUtils.getDeclarationDescriptorForExtensionCallReceiver; @@ -34,7 +33,6 @@ import static org.jetbrains.k2js.translate.utils.JsDescriptorUtils.getDeclaratio * @author Pavel Talanov */ public final class CallParametersResolver { - public static CallParameters resolveCallParameters(@Nullable JsExpression qualifier, @Nullable JsExpression callee, @NotNull CallableDescriptor descriptor, @@ -94,11 +92,7 @@ public final class CallParametersResolver { if (qualifier != null && !isExtensionCall) { return qualifier; } - JsExpression result = TranslationUtils.resolveThisObjectForResolvedCall(resolvedCall, context); - if (result != null) { - return result; - } - return null; + return context.thisAliasProvider().get(resolvedCall); } @NotNull @@ -107,6 +101,6 @@ public final class CallParametersResolver { return qualifier; } DeclarationDescriptor receiverDescriptor = getDeclarationDescriptorForExtensionCallReceiver(resolvedCall); - return TranslationUtils.getThisObject(context, receiverDescriptor); + return context.getThisObject(receiverDescriptor); } } diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/reference/NativePropertyAccessTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/reference/NativePropertyAccessTranslator.java index e9518cc1a5d..8ac963d5905 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/reference/NativePropertyAccessTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/reference/NativePropertyAccessTranslator.java @@ -23,7 +23,6 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; import org.jetbrains.jet.lang.descriptors.PropertyDescriptor; import org.jetbrains.k2js.translate.context.TranslationContext; -import org.jetbrains.k2js.translate.utils.TranslationUtils; import static org.jetbrains.k2js.translate.utils.JsAstUtils.assignment; import static org.jetbrains.k2js.translate.utils.JsAstUtils.qualified; @@ -108,7 +107,7 @@ public final class NativePropertyAccessTranslator extends PropertyAccessTranslat if (expectedThisDescriptor == null) { return null; } - return TranslationUtils.getThisObject(context(), expectedThisDescriptor); + return context().getThisObject(expectedThisDescriptor); } @NotNull