diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 293c1122b75..172f0053031 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -9,7 +9,13 @@
-
+
+
+
+
+
+
+
@@ -189,42 +195,13 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -275,10 +252,37 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -288,96 +292,91 @@
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -404,14 +403,6 @@
@@ -509,6 +508,7 @@
+
@@ -733,6 +733,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -835,7 +991,6 @@
-
@@ -874,40 +1029,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -945,7 +1067,7 @@
-
+
@@ -1012,6 +1134,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1072,7 +1217,7 @@
-
+
@@ -1133,11 +1278,11 @@
-
-
-
-
-
+
+
+
+
+
localhost
@@ -1197,7 +1342,6 @@
-
@@ -1210,10 +1354,11 @@
-
-
+
+
+
@@ -1255,7 +1400,7 @@
-
+
@@ -1268,7 +1413,6 @@
-
@@ -1293,6 +1437,7 @@
+
@@ -1302,111 +1447,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -1416,7 +1456,105 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java b/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java
index 11c90d80d10..57e44a94e03 100644
--- a/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java
+++ b/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java
@@ -10,13 +10,13 @@ import org.jetbrains.jet.lang.types.JetStandardLibrary;
import java.util.HashMap;
import java.util.Map;
+//TODO: implement aliases stack for this
public class Aliaser {
static public Aliaser aliasesForStandardClasses(@NotNull JetStandardLibrary standardLibrary,
@NotNull Namer namer) {
- Aliaser result = new Aliaser();
- // result.setAliasForDescriptor(standardLibrary.getArray(), namer.declareStandardClass("Array"));
- return result;
+ //TODO: decide if this aliases are needed
+ return new Aliaser();
}
@NotNull
diff --git a/translator/src/org/jetbrains/k2js/translate/context/Namer.java b/translator/src/org/jetbrains/k2js/translate/context/Namer.java
index ba56538db1e..b93886d59c0 100644
--- a/translator/src/org/jetbrains/k2js/translate/context/Namer.java
+++ b/translator/src/org/jetbrains/k2js/translate/context/Namer.java
@@ -24,8 +24,7 @@ public final class Namer {
private static final String SETTER_PREFIX = "set_";
private static final String GETTER_PREFIX = "get_";
private static final String BACKING_FIELD_PREFIX = "$";
- // TODO: work on the unified approach to string constants
- public static final String SUPER_METHOD_NAME = "super_init";
+ private static final String SUPER_METHOD_NAME = "super_init";
private static final String KOTLIN_OBJECT_NAME = "Kotlin";
@NotNull
@@ -33,9 +32,14 @@ public final class Namer {
return AstUtil.newQualifiedNameRef(INITIALIZE_METHOD_NAME);
}
+// @NotNull
+// public static JsNameRef superMethodReference() {
+// return AstUtil.newQualifiedNameRef(SUPER_METHOD_NAME);
+// }
+
@NotNull
- public static JsNameRef superMethodReference() {
- return AstUtil.newQualifiedNameRef(SUPER_METHOD_NAME);
+ public static String superMethodName() {
+ return SUPER_METHOD_NAME;
}
@NotNull
diff --git a/translator/src/org/jetbrains/k2js/translate/general/AbstractTranslator.java b/translator/src/org/jetbrains/k2js/translate/general/AbstractTranslator.java
index 1713b14bacb..226050ce6d0 100644
--- a/translator/src/org/jetbrains/k2js/translate/general/AbstractTranslator.java
+++ b/translator/src/org/jetbrains/k2js/translate/general/AbstractTranslator.java
@@ -7,6 +7,7 @@ import org.jetbrains.k2js.translate.context.TranslationContext;
/**
* @author Talanov Pavel
*/
+//TODO: provide helper methods for different parts of context
public abstract class AbstractTranslator {
@NotNull
diff --git a/translator/src/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.java b/translator/src/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.java
index eed06e3d8ba..93e0bb352f8 100644
--- a/translator/src/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.java
+++ b/translator/src/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.java
@@ -60,7 +60,7 @@ public final class ClassInitializerTranslator extends AbstractInitializerTransla
}
private void addCallToSuperMethod(@NotNull JetDelegatorToSuperCall superCall) {
- JsName superMethodName = initializerMethodScope.declareName(Namer.SUPER_METHOD_NAME);
+ JsName superMethodName = initializerMethodScope.declareName(Namer.superMethodName());
List arguments = translateArguments(superCall);
initializerStatements.add(AstUtil.convertToStatement
(AstUtil.newInvocation(AstUtil.thisQualifiedReference(superMethodName), arguments)));
diff --git a/translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java b/translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java
index 88b4c5850c1..a3b1f7b1cc0 100644
--- a/translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java
+++ b/translator/src/org/jetbrains/k2js/translate/intrinsic/Intrinsics.java
@@ -15,6 +15,7 @@ import java.util.Map;
/**
* @author Talanov Pavel
*/
+//TODO: different maps for different kinds of intrinsics
public final class Intrinsics {
@NotNull
@@ -33,7 +34,6 @@ public final class Intrinsics {
}
/*package*/ void declareIntrinsic(@NotNull FunctionDescriptor descriptor) {
- //TODO: HACK!
addCompareToIntrinsics(descriptor);
addEqualsIntrinsics(descriptor);
addUnaryIntrinsics(descriptor);
diff --git a/translator/src/org/jetbrains/k2js/translate/intrinsic/PrimitiveEqualsIntrinsic.java b/translator/src/org/jetbrains/k2js/translate/intrinsic/PrimitiveEqualsIntrinsic.java
index 36cc7eb69d1..af550f8bce4 100644
--- a/translator/src/org/jetbrains/k2js/translate/intrinsic/PrimitiveEqualsIntrinsic.java
+++ b/translator/src/org/jetbrains/k2js/translate/intrinsic/PrimitiveEqualsIntrinsic.java
@@ -12,7 +12,6 @@ import java.util.List;
*/
public final class PrimitiveEqualsIntrinsic extends EqualsIntrinsic {
-
@NotNull
/*package*/ static PrimitiveEqualsIntrinsic newInstance() {
return new PrimitiveEqualsIntrinsic();
diff --git a/translator/src/org/jetbrains/k2js/translate/intrinsic/UnaryOperationIntrinsic.java b/translator/src/org/jetbrains/k2js/translate/intrinsic/UnaryOperationIntrinsic.java
index 03bf3360070..fd092c00873 100644
--- a/translator/src/org/jetbrains/k2js/translate/intrinsic/UnaryOperationIntrinsic.java
+++ b/translator/src/org/jetbrains/k2js/translate/intrinsic/UnaryOperationIntrinsic.java
@@ -33,7 +33,7 @@ public class UnaryOperationIntrinsic implements Intrinsic {
public JsExpression apply(@NotNull JsExpression receiver, @NotNull List arguments,
@NotNull TranslationContext context) {
assert arguments.size() == 0 : "Unary operator should not have arguments.";
- //TODO: note that we cannot use this for increment/decrement
+ //NOTE: cannot use this for increment/decrement
return new JsPrefixOperation(operator, receiver);
}
}