diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java b/js/js.translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java index 7a4166ba978..e79d719535e 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java @@ -58,10 +58,6 @@ public class TranslationContext { private final HashMap expressionToTempConstVariableCache = new HashMap(); - public boolean isEcma5() { - return staticContext.isEcma5(); - } - private TranslationContext( @NotNull StaticContext staticContext, @NotNull DynamicContext dynamicContext, diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/ClassTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/ClassTranslator.java index 9f26e5ba771..7f9986eaded 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/ClassTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/ClassTranslator.java @@ -173,12 +173,7 @@ public final class ClassTranslator extends AbstractTranslator { if (!isTrait()) { JsFunction initializer = new ClassInitializerTranslator(classDeclaration, declarationContext).generateInitializeMethod(); - if (context().isEcma5()) { - invocationArguments.add(initializer.getBody().getStatements().isEmpty() ? JsLiteral.NULL : initializer); - } - else { - properties.add(new JsPropertyInitializer(Namer.initializeMethodReference(), initializer)); - } + invocationArguments.add(initializer.getBody().getStatements().isEmpty() ? JsLiteral.NULL : initializer); } translatePropertiesAsConstructorParameters(declarationContext, properties); @@ -227,9 +222,7 @@ public final class ClassTranslator extends AbstractTranslator { private void addSuperclassReferences(@NotNull JsInvocation jsClassDeclaration) { List superClassReferences = getSupertypesNameReferences(); if (superClassReferences.isEmpty()) { - if (!isTrait() || context().isEcma5()) { - jsClassDeclaration.getArguments().add(JsLiteral.NULL); - } + jsClassDeclaration.getArguments().add(JsLiteral.NULL); return; } diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java index d83e4b4d767..7676ea11869 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java @@ -72,24 +72,16 @@ public final class NamespaceDeclarationTranslator extends AbstractTranslator { return Collections.emptyList(); } - JsVars vars = new JsVars(true); - List result; - if (context().isEcma5()) { - result = Collections.singletonList(vars); - } - else { - result = new ArrayList(); - result.add(vars); - } - context().classDeclarationTranslator().generateDeclarations(); for (NamespaceTranslator translator : descriptorToTranslator.values()) { - translator.add(descriptorToDefineInvocation, result); + translator.add(descriptorToDefineInvocation); } + JsVars vars = new JsVars(true); vars.addIfHasInitializer(context().classDeclarationTranslator().getDeclaration()); vars.addIfHasInitializer(getRootPackageDeclaration(descriptorToDefineInvocation.get(rootNamespaceDescriptor))); - return result; + + return Collections.singletonList(vars); } @NotNull diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java index cb8bbd76c99..07a48d6a59f 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java @@ -26,7 +26,6 @@ import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor; import org.jetbrains.jet.lang.descriptors.PropertyDescriptor; import org.jetbrains.jet.lang.psi.*; import org.jetbrains.k2js.translate.LabelGenerator; -import org.jetbrains.k2js.translate.context.Namer; import org.jetbrains.k2js.translate.context.TranslationContext; import org.jetbrains.k2js.translate.general.AbstractTranslator; import org.jetbrains.k2js.translate.general.Translation; @@ -98,18 +97,13 @@ final class NamespaceTranslator extends AbstractTranslator { return place; } - public void add(@NotNull Map descriptorToDefineInvocation, - @NotNull List initializers) { + public void add(@NotNull Map descriptorToDefineInvocation) { JsExpression initializer; if (visitor.initializerStatements.isEmpty()) { initializer = null; } else { initializer = visitor.initializer; - if (!context().isEcma5()) { - initializers.add(new JsInvocation(Namer.getFunctionCallRef(initializer), - context().getQualifiedReference(descriptor)).makeStmt()); - } } DefineInvocation defineInvocation = descriptorToDefineInvocation.get(descriptor); 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 4b86f52cb29..62375b7cbd6 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 @@ -36,7 +36,6 @@ import org.jetbrains.k2js.translate.utils.TranslationUtils; import java.util.List; import static org.jetbrains.k2js.translate.reference.CallParametersResolver.resolveCallParameters; -import static org.jetbrains.k2js.translate.utils.BindingUtils.isObjectDeclaration; import static org.jetbrains.k2js.translate.utils.JsAstUtils.assignment; import static org.jetbrains.k2js.translate.utils.JsAstUtils.setQualifier; import static org.jetbrains.k2js.translate.utils.JsDescriptorUtils.isConstructorDescriptor; @@ -206,13 +205,7 @@ public final class CallTranslator extends AbstractTranslator { } private boolean isDirectPropertyAccess() { - return descriptor instanceof PropertyAccessorDescriptor && - (context().isEcma5() || isObjectAccessor((PropertyAccessorDescriptor) descriptor)); - } - - private boolean isObjectAccessor(@NotNull PropertyAccessorDescriptor propertyAccessorDescriptor) { - PropertyDescriptor correspondingProperty = propertyAccessorDescriptor.getCorrespondingProperty(); - return isObjectDeclaration(correspondingProperty); + return descriptor instanceof PropertyAccessorDescriptor; } @NotNull