implement standard classes mechanism
This commit is contained in:
Generated
+248
-288
@@ -5,15 +5,11 @@
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="f02ef53d-47a4-4f5e-a1aa-3df68aae9b20" name="Default" comment="">
|
||||
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
|
||||
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/translator/testFiles/expression/for/cases/forOnEmptyArray.kt" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Namer.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Namer.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StaticContext.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StaticContext.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/expression/ForTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/expression/ForTranslator.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/PsiUtils.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/PsiUtils.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ForTest.java" afterPath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ForTest.java" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.java" />
|
||||
</list>
|
||||
<ignored path="k2js.iws" />
|
||||
<ignored path=".idea/workspace.xml" />
|
||||
@@ -163,7 +159,7 @@
|
||||
<option name="CONDITION" value="" />
|
||||
<option name="LOG_MESSAGE" value="" />
|
||||
</breakpoint>
|
||||
<breakpoint url="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/ReferenceTranslator.java" line="34" class="org.jetbrains.k2js.translate.reference.ReferenceTranslator" package="org.jetbrains.k2js.translate.reference">
|
||||
<breakpoint url="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" line="97" class="org.jetbrains.k2js.translate.context.TranslationContext" package="org.jetbrains.k2js.translate.context">
|
||||
<option name="ENABLED" value="true" />
|
||||
<option name="LOG_ENABLED" value="false" />
|
||||
<option name="LOG_EXPRESSION_ENABLED" value="false" />
|
||||
@@ -236,19 +232,19 @@
|
||||
<splitter split-orientation="horizontal" split-proportion="0.64078945">
|
||||
<split-first>
|
||||
<leaf>
|
||||
<file leaf-file-name="Aliaser.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java">
|
||||
<file leaf-file-name="TranslationContext.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="40" column="46" selection-start="2118" selection-end="2118" vertical-scroll-proportion="0.0">
|
||||
<state line="126" column="84" selection-start="4897" selection-end="4897" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="TranslationContext.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java">
|
||||
<file leaf-file-name="ReferenceTranslator.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/ReferenceTranslator.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="98" column="88" selection-start="3859" selection-end="3859" vertical-scroll-proportion="0.0">
|
||||
<state line="34" column="0" selection-start="1665" selection-end="1665" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
@@ -257,7 +253,7 @@
|
||||
<file leaf-file-name="BasicClassTest.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/BasicClassTest.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="17" column="16" selection-start="303" selection-end="303" vertical-scroll-proportion="0.0">
|
||||
<state line="32" column="16" selection-start="699" selection-end="699" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
@@ -266,21 +262,57 @@
|
||||
<file leaf-file-name="StandardClasses.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="74" column="21" selection-start="3151" selection-end="3151" vertical-scroll-proportion="0.0">
|
||||
<state line="95" column="53" selection-start="4647" selection-end="4647" vertical-scroll-proportion="0.0">
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#1081#1097#0" expanded="true" />
|
||||
<element signature="e#1176#1193#0" expanded="true" />
|
||||
<element signature="e#1289#1318#0" expanded="true" />
|
||||
<element signature="e#3001#3017#0" expanded="true" />
|
||||
<element signature="e#3096#3113#0" expanded="true" />
|
||||
<element signature="e#3209#3238#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="StandardClassesTest.java" pinned="false" current="true" current-in-tab="true">
|
||||
<file leaf-file-name="JetStandardLibrary.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/types/JetStandardLibrary.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="122" column="26" selection-start="4299" selection-end="4313" vertical-scroll-proportion="240.73077">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="StandardClassesTest.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StandardClassesTest.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="21" column="49" selection-start="449" selection-end="449" vertical-scroll-proportion="0.4992658">
|
||||
<state line="47" column="16" selection-start="1138" selection-end="1138" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="PropertyAccessTranslator.java" pinned="false" current="true" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="214" column="117" selection-start="9084" selection-end="9084" vertical-scroll-proportion="-0.07342144">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="TranslationUtils.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/TranslationUtils.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="209" column="0" selection-start="9623" selection-end="9623" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="ForTest.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ForTest.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="17" column="16" selection-start="307" selection-end="307" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
@@ -289,43 +321,7 @@
|
||||
<file leaf-file-name="StaticContext.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StaticContext.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="24" column="66" selection-start="1333" selection-end="1333" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="ClassDescriptorImpl.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/ClassDescriptorImpl.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="29" column="40" selection-start="1083" selection-end="1083" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="DescriptorUtils.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="62" column="41" selection-start="2346" selection-end="2350" vertical-scroll-proportion="-8.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="DescriptorUtils.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorUtils.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="36" column="13" selection-start="1253" selection-end="1253" vertical-scroll-proportion="56.76">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="DescriptorRenderer.java" pinned="false" current="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="20" column="28" selection-start="616" selection-end="616" vertical-scroll-proportion="0.0">
|
||||
<state line="105" column="0" selection-start="3300" selection-end="3300" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
@@ -401,7 +397,7 @@
|
||||
<file leaf-file-name="JavaPsiFacade.class" pinned="false" current="false" current-in-tab="true">
|
||||
<entry file="jar://C:/Program Files (x86)/JetBrains/IntelliJ IDEA Community Edition 110.283/lib/openapi.jar!/com/intellij/psi/JavaPsiFacade.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="27" column="94" selection-start="1644" selection-end="1644" vertical-scroll-proportion="0.21935484">
|
||||
<state line="27" column="94" selection-start="1644" selection-end="1644" vertical-scroll-proportion="0.30322582">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
@@ -446,9 +442,6 @@
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="changedFiles">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/translator/testFiles/standardClasses/out/arraysIterator.js" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java" />
|
||||
<option value="$PROJECT_DIR$/translator/testFiles/kotlin_lib.js" />
|
||||
<option value="$PROJECT_DIR$/translator/testFiles/expression/for/cases/forIteratesOverArray.kt" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/expression/ExpressionVisitor.java" />
|
||||
<option value="$PROJECT_DIR$/translator/testFiles/expression/for/out/forIteratesOverArray.js" />
|
||||
@@ -459,9 +452,12 @@
|
||||
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ForTest.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Namer.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StaticContext.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
|
||||
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StandardClassesTest.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/TranslationUtils.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" />
|
||||
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.java" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
@@ -768,106 +764,6 @@
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="translator" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="testFiles" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="expression" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="for" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="out" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="translator" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="testFiles" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="expression" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="for" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="cases" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="translator" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="testFiles" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="examples" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="sortedTests" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="usesJava" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="translator" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="testFiles" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="examples" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="sortedTests" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
@@ -966,6 +862,32 @@
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="translator" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="src" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="translate" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="reference" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
@@ -1114,6 +1036,32 @@
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="frontend" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="src" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="jet" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="lang" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="types" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="k2js" />
|
||||
@@ -1235,62 +1183,6 @@
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunManager" selected="JUnit.tests">
|
||||
<configuration default="false" name="BasicClassTest.classInstantiation" type="JUnit" factoryName="JUnit" temporary="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="org.jetbrains.k2js.test.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<module name="translator" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" value="" />
|
||||
<option name="PACKAGE_NAME" value="org.jetbrains.k2js.test" />
|
||||
<option name="MAIN_CLASS_NAME" value="org.jetbrains.k2js.test.BasicClassTest" />
|
||||
<option name="METHOD_NAME" value="classInstantiation" />
|
||||
<option name="TEST_OBJECT" value="method" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<dir value="$PROJECT_DIR$/translator" />
|
||||
<patterns />
|
||||
<RunnerSettings RunnerId="Debug">
|
||||
<option name="DEBUG_PORT" value="" />
|
||||
<option name="TRANSPORT" value="0" />
|
||||
<option name="LOCAL" value="true" />
|
||||
</RunnerSettings>
|
||||
<ConfigurationWrapper RunnerId="Debug" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="false" name="All in jetTests" type="JUnit" factoryName="JUnit" temporary="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" />
|
||||
<module name="jetTests" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" value="" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="TEST_OBJECT" value="package" />
|
||||
<option name="VM_PARAMETERS" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="moduleWithDependencies" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
<RunnerSettings RunnerId="Run" />
|
||||
<ConfigurationWrapper RunnerId="Run" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="false" name="StandardClassesTest" type="JUnit" factoryName="JUnit" temporary="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true">
|
||||
<pattern>
|
||||
@@ -1382,6 +1274,74 @@
|
||||
<ConfigurationWrapper RunnerId="Run" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="false" name="BasicClassTest.constructorWithPropertiesAsParameters" type="JUnit" factoryName="JUnit" temporary="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="org.jetbrains.k2js.test.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<module name="translator" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" value="" />
|
||||
<option name="PACKAGE_NAME" value="org.jetbrains.k2js.test" />
|
||||
<option name="MAIN_CLASS_NAME" value="org.jetbrains.k2js.test.BasicClassTest" />
|
||||
<option name="METHOD_NAME" value="constructorWithPropertiesAsParameters" />
|
||||
<option name="TEST_OBJECT" value="method" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<dir value="$PROJECT_DIR$/translator" />
|
||||
<patterns />
|
||||
<RunnerSettings RunnerId="Debug">
|
||||
<option name="DEBUG_PORT" value="" />
|
||||
<option name="TRANSPORT" value="0" />
|
||||
<option name="LOCAL" value="true" />
|
||||
</RunnerSettings>
|
||||
<RunnerSettings RunnerId="Run" />
|
||||
<ConfigurationWrapper RunnerId="Debug" />
|
||||
<ConfigurationWrapper RunnerId="Run" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="false" name="StandardClassesTest.array" type="JUnit" factoryName="JUnit" temporary="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="org.jetbrains.k2js.test.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<module name="translator" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" value="" />
|
||||
<option name="PACKAGE_NAME" value="org.jetbrains.k2js.test" />
|
||||
<option name="MAIN_CLASS_NAME" value="org.jetbrains.k2js.test.StandardClassesTest" />
|
||||
<option name="METHOD_NAME" value="array" />
|
||||
<option name="TEST_OBJECT" value="method" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<dir value="$PROJECT_DIR$/translator" />
|
||||
<patterns />
|
||||
<RunnerSettings RunnerId="Debug">
|
||||
<option name="DEBUG_PORT" value="" />
|
||||
<option name="TRANSPORT" value="0" />
|
||||
<option name="LOCAL" value="true" />
|
||||
</RunnerSettings>
|
||||
<ConfigurationWrapper RunnerId="Debug" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="true" type="Remote" factoryName="Remote">
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
@@ -1509,11 +1469,11 @@
|
||||
</configuration>
|
||||
<list size="6">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.tests" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.BasicClassTest.classInstantiation" />
|
||||
<item index="2" class="java.lang.String" itemvalue="JUnit.All in jetTests" />
|
||||
<item index="3" class="java.lang.String" itemvalue="JUnit.StandardClassesTest" />
|
||||
<item index="4" class="java.lang.String" itemvalue="JUnit.StandardClassesTest.arraysIterator" />
|
||||
<item index="5" class="java.lang.String" itemvalue="JUnit.ForTest.forOnEmptyArray" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.StandardClassesTest" />
|
||||
<item index="2" class="java.lang.String" itemvalue="JUnit.StandardClassesTest.arraysIterator" />
|
||||
<item index="3" class="java.lang.String" itemvalue="JUnit.ForTest.forOnEmptyArray" />
|
||||
<item index="4" class="java.lang.String" itemvalue="JUnit.BasicClassTest.constructorWithPropertiesAsParameters" />
|
||||
<item index="5" class="java.lang.String" itemvalue="JUnit.StandardClassesTest.array" />
|
||||
</list>
|
||||
<configuration name="<template>" type="WebApp" default="true" selected="false">
|
||||
<Host>localhost</Host>
|
||||
@@ -1576,20 +1536,20 @@
|
||||
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32756963" sideWeight="0.4404062" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24973261" sideWeight="0.7183908" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.28530258" sideWeight="0.7557456" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.28530258" sideWeight="0.7493319" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32949087" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2987512" sideWeight="0.36237305" order="11" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2987512" sideWeight="0.19508284" order="11" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32977018" sideWeight="0.6705091" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32854405" sideWeight="0.5" order="14" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.22382325" sideWeight="0.45537147" order="9" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.22382325" sideWeight="0.45323357" order="9" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32949087" sideWeight="0.49812934" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Metrics" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32756963" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.20363443" sideWeight="0.284342" order="1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32977018" sideWeight="0.7002882" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3997862" sideWeight="0.6705998" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.18760021" sideWeight="0.7012488" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2987512" sideWeight="0.6338856" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2987512" sideWeight="0.80117583" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.0908605" sideWeight="0.7146974" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
@@ -1632,7 +1592,7 @@
|
||||
<option name="INCLUDE_TEXT_INTO_SHELF" value="false" />
|
||||
<option name="CREATE_PATCH_EXPAND_DETAILS_DEFAULT" value="true" />
|
||||
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="simple for support" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="work on standard classes mechanism implementation" />
|
||||
<option name="MAKE_NEW_CHANGELIST_ACTIVE" value="true" />
|
||||
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="true" />
|
||||
<option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
|
||||
@@ -1645,7 +1605,6 @@
|
||||
<option name="UPDATE_GROUP_BY_CHANGELIST" value="false" />
|
||||
<option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
|
||||
<option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
|
||||
<MESSAGE value="Array test passes." />
|
||||
<MESSAGE value="supported array access expressions." />
|
||||
<MESSAGE value="work on intrinsic implementation: split binary expression translation into 2 classes" />
|
||||
<MESSAGE value="work on intrinsic implementation: binary intrinsics" />
|
||||
@@ -1670,6 +1629,7 @@
|
||||
<MESSAGE value="Array throws indexOutOfBoundsExceptions" />
|
||||
<MESSAGE value="Array iterator object support." />
|
||||
<MESSAGE value="simple for support" />
|
||||
<MESSAGE value="work on standard classes mechanism implementation" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager />
|
||||
@@ -1679,9 +1639,9 @@
|
||||
<option name="FILTER_TARGETS" value="false" />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/translator/testFiles/standardClasses/out/array.js">
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/ClassDescriptorImpl.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
|
||||
<state line="29" column="40" selection-start="1083" selection-end="1083" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
@@ -1693,9 +1653,9 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/testFiles/standardClasses/out/arrayAccess.js">
|
||||
<entry file="file://$PROJECT_DIR$/translator/testFiles/expression/for/out/forIteratesOverArray.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
|
||||
<state line="25" column="30" selection-start="506" selection-end="506" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
@@ -1707,13 +1667,20 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayAccess.kt">
|
||||
<entry file="file://$PROJECT_DIR$/translator/testFiles/expression/for/out/forOnEmptyArray.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ForTest.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="17" column="16" selection-start="307" selection-end="307" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="20" column="28" selection-start="616" selection-end="616" vertical-scroll-proportion="0.0">
|
||||
@@ -1721,77 +1688,70 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/PsiUtils.java">
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/ReferenceTranslator.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="75" column="29" selection-start="2714" selection-end="2714" vertical-scroll-proportion="0.0">
|
||||
<state line="34" column="0" selection-start="1665" selection-end="1665" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StaticContext.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="24" column="66" selection-start="1333" selection-end="1333" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Aliaser.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="40" column="46" selection-start="2118" selection-end="2118" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/testFiles/expression/for/cases/forOnEmptyArray.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="9" column="52" selection-start="127" selection-end="127" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="98" column="88" selection-start="3859" selection-end="3859" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Namer.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="149" column="27" selection-start="4591" selection-end="4591" vertical-scroll-proportion="0.0">
|
||||
<state line="105" column="0" selection-start="3300" selection-end="3300" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/BasicClassTest.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="17" column="16" selection-start="303" selection-end="303" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="74" column="21" selection-start="3151" selection-end="3151" vertical-scroll-proportion="0.0">
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#1081#1097#0" expanded="true" />
|
||||
<element signature="e#1176#1193#0" expanded="true" />
|
||||
<element signature="e#1289#1318#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/ClassDescriptor.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="16" column="25" selection-start="510" selection-end="510" vertical-scroll-proportion="0.0">
|
||||
<state line="32" column="16" selection-start="699" selection-end="699" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StandardClassesTest.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="21" column="49" selection-start="449" selection-end="449" vertical-scroll-proportion="0.4992658">
|
||||
<state line="47" column="16" selection-start="1138" selection-end="1138" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/TranslationUtils.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="209" column="0" selection-start="9623" selection-end="9623" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="95" column="53" selection-start="4647" selection-end="4647" vertical-scroll-proportion="0.0">
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#3001#3017#0" expanded="true" />
|
||||
<element signature="e#3096#3113#0" expanded="true" />
|
||||
<element signature="e#3209#3238#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/types/JetStandardLibrary.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="122" column="26" selection-start="4299" selection-end="4313" vertical-scroll-proportion="240.73077">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="126" column="84" selection-start="4897" selection-end="4897" vertical-scroll-proportion="0.0">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state line="214" column="117" selection-start="9084" selection-end="9084" vertical-scroll-proportion="-0.07342144">
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
|
||||
@@ -4,47 +4,21 @@ import com.google.dart.compiler.backend.js.ast.JsName;
|
||||
import com.google.dart.compiler.backend.js.ast.JsNameRef;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.jet.lang.descriptors.ClassDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.FunctionDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.PropertyDescriptor;
|
||||
import org.jetbrains.jet.lang.types.JetStandardLibrary;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getFunctionByName;
|
||||
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getPropertyByName;
|
||||
|
||||
//TODO: implement aliases stack for this
|
||||
public class Aliaser {
|
||||
|
||||
public static Aliaser aliasesForStandardClasses(@NotNull JetStandardLibrary standardLibrary,
|
||||
@NotNull Namer namer) {
|
||||
Aliaser aliaser = new Aliaser();
|
||||
setAliasesForArray(standardLibrary, namer, aliaser);
|
||||
ClassDescriptor iteratorClass = (ClassDescriptor)
|
||||
standardLibrary.getLibraryScope().getClassifier("Iterator");
|
||||
setAliasesForIterator(namer, aliaser, iteratorClass);
|
||||
return aliaser;
|
||||
}
|
||||
|
||||
private static void setAliasesForIterator(Namer namer, Aliaser aliaser, ClassDescriptor iteratorClass) {
|
||||
FunctionDescriptor nextFunction = getFunctionByName(iteratorClass.getDefaultType().getMemberScope(), "next");
|
||||
PropertyDescriptor hasNextProperty = getPropertyByName(iteratorClass.getDefaultType().getMemberScope(), "hasNext");
|
||||
aliaser.setAliasForDescriptor(nextFunction, namer.libraryMethod("next"));
|
||||
aliaser.setAliasForDescriptor(hasNextProperty, namer.libraryMethod("hasNext"));
|
||||
}
|
||||
|
||||
private static void setAliasesForArray(JetStandardLibrary standardLibrary, Namer namer, Aliaser aliaser) {
|
||||
aliaser.setAliasForDescriptor(standardLibrary.getArray(), namer.libraryObject("Array"));
|
||||
FunctionDescriptor nullConstructorFunction = getFunctionByName(standardLibrary.getLibraryScope(), "Array");
|
||||
aliaser.setAliasForDescriptor(nullConstructorFunction, namer.libraryObject("array"));
|
||||
PropertyDescriptor sizeProperty =
|
||||
getPropertyByName(standardLibrary.getArray().getDefaultType().getMemberScope(), "size");
|
||||
aliaser.setAliasForDescriptor(sizeProperty, namer.libraryMethod("size"));
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private final Map<DeclarationDescriptor, JsName> aliases = new HashMap<DeclarationDescriptor, JsName>();
|
||||
@Nullable
|
||||
|
||||
@@ -6,12 +6,15 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.jet.lang.descriptors.ClassDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.FunctionDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.PropertyDescriptor;
|
||||
import org.jetbrains.jet.lang.types.JetStandardLibrary;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.jetbrains.jet.resolve.DescriptorRenderer.getFQName;
|
||||
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getFunctionByName;
|
||||
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getPropertyByName;
|
||||
|
||||
/**
|
||||
* @author Talanov Pavel
|
||||
@@ -20,12 +23,40 @@ public final class StandardClasses {
|
||||
|
||||
@NotNull
|
||||
public static StandardClasses bindImplementations(@NotNull JetStandardLibrary standardLibrary,
|
||||
@NotNull JsScope kotlinScope) {
|
||||
StandardClasses standardClasses = new StandardClasses(kotlinScope);
|
||||
@NotNull JsScope kotlinObjectScope) {
|
||||
StandardClasses standardClasses = new StandardClasses(kotlinObjectScope);
|
||||
|
||||
bindArray(standardClasses, standardLibrary);
|
||||
ClassDescriptor iteratorClass = (ClassDescriptor)
|
||||
standardLibrary.getLibraryScope().getClassifier("Iterator");
|
||||
bindIterator(standardClasses, iteratorClass);
|
||||
return standardClasses;
|
||||
}
|
||||
|
||||
|
||||
private static void bindIterator(StandardClasses standardClasses,
|
||||
ClassDescriptor iteratorClass) {
|
||||
standardClasses.declareStandardTopLevelObject(iteratorClass, "ArrayIterator");
|
||||
FunctionDescriptor nextFunction =
|
||||
getFunctionByName(iteratorClass.getDefaultType().getMemberScope(), "next");
|
||||
standardClasses.declareStandardMethodOrProperty(iteratorClass, nextFunction, "next");
|
||||
PropertyDescriptor hasNextProperty =
|
||||
getPropertyByName(iteratorClass.getDefaultType().getMemberScope(), "hasNext");
|
||||
standardClasses.declareStandardMethodOrProperty(iteratorClass, hasNextProperty, "hasNext");
|
||||
}
|
||||
|
||||
private static void bindArray(@NotNull StandardClasses standardClasses,
|
||||
@NotNull JetStandardLibrary standardLibrary) {
|
||||
ClassDescriptor arrayClass = standardLibrary.getArray();
|
||||
standardClasses.declareStandardTopLevelObject(arrayClass, "Array");
|
||||
FunctionDescriptor nullConstructorFunction = getFunctionByName(standardLibrary.getLibraryScope(), "Array");
|
||||
standardClasses.declareStandardTopLevelObject(nullConstructorFunction, "array");
|
||||
PropertyDescriptor sizeProperty =
|
||||
getPropertyByName(arrayClass.getDefaultType().getMemberScope(), "size");
|
||||
standardClasses.declareStandardMethodOrProperty(arrayClass, sizeProperty, "size");
|
||||
}
|
||||
|
||||
|
||||
@NotNull
|
||||
private final JsScope kotlinScope;
|
||||
|
||||
@@ -43,50 +74,62 @@ public final class StandardClasses {
|
||||
this.kotlinScope = kotlinScope;
|
||||
}
|
||||
|
||||
private void declareStandardTopLevelObject(@NotNull DeclarationDescriptor descriptor,
|
||||
@NotNull String kotlinLibName) {
|
||||
declareStandardTopLevelObject(getFQName(descriptor), kotlinLibName);
|
||||
}
|
||||
|
||||
private void declareStandardTopLevelObject(@NotNull String fullQualifiedName, @NotNull String kotlinLibName) {
|
||||
topLevelNameMap.put(fullQualifiedName, kotlinScope.declareName(kotlinLibName));
|
||||
scopeMap.put(fullQualifiedName, new JsScope(kotlinScope, "class " + kotlinLibName));
|
||||
methodNameMap.put(fullQualifiedName, new HashMap<String, JsName>());
|
||||
}
|
||||
|
||||
private void declareStandardMethod(@NotNull String fullQualifiedClassName, @NotNull String methodName,
|
||||
@NotNull String kotlinLibName) {
|
||||
private void declareStandardMethodOrProperty(@NotNull DeclarationDescriptor topLevelDescriptor,
|
||||
@NotNull DeclarationDescriptor innerDescriptor,
|
||||
@NotNull String kotlinLibName) {
|
||||
declareStandardMethodOrProperty(getFQName(topLevelDescriptor), innerDescriptor.getName(), kotlinLibName);
|
||||
}
|
||||
|
||||
private void declareStandardMethodOrProperty(@NotNull String fullQualifiedClassName, @NotNull String methodOrPropertyName,
|
||||
@NotNull String kotlinLibName) {
|
||||
JsScope classScope = scopeMap.get(fullQualifiedClassName);
|
||||
Map<String, JsName> classMethodsMap = methodNameMap.get(fullQualifiedClassName);
|
||||
classMethodsMap.put(methodName, classScope.declareName(kotlinLibName));
|
||||
classMethodsMap.put(methodOrPropertyName, classScope.declareName(kotlinLibName));
|
||||
}
|
||||
|
||||
//TODO: refactor
|
||||
public boolean isStandardObject(@NotNull DeclarationDescriptor descriptor) {
|
||||
if (descriptor instanceof ClassDescriptor) {
|
||||
ClassDescriptor classDescriptor = (ClassDescriptor) descriptor;
|
||||
return topLevelNameMap.containsKey(getFQName(classDescriptor));
|
||||
if ((descriptor instanceof ClassDescriptor) || (descriptor instanceof FunctionDescriptor)) {
|
||||
if (topLevelNameMap.containsKey(getFQName(descriptor))) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if (descriptor instanceof FunctionDescriptor) {
|
||||
FunctionDescriptor functionDescriptor = (FunctionDescriptor) descriptor;
|
||||
if ((descriptor instanceof FunctionDescriptor) || (descriptor instanceof PropertyDescriptor)) {
|
||||
DeclarationDescriptor containing = descriptor.getContainingDeclaration();
|
||||
assert containing != null : "Cannot have top level functions.";
|
||||
assert containing != null : "Cannot be on top level.";
|
||||
if (!isStandardObject(containing)) {
|
||||
return false;
|
||||
}
|
||||
Map<String, JsName> methodMapForClass = methodNameMap.get(getFQName(containing));
|
||||
return methodMapForClass.containsKey(functionDescriptor.getName());
|
||||
return methodMapForClass.containsKey(descriptor.getName());
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public JsName getStandardObjectName(@NotNull DeclarationDescriptor descriptor) {
|
||||
if (descriptor instanceof ClassDescriptor) {
|
||||
ClassDescriptor classDescriptor = (ClassDescriptor) descriptor;
|
||||
return topLevelNameMap.get(getFQName(classDescriptor));
|
||||
if ((descriptor instanceof ClassDescriptor) || (descriptor instanceof FunctionDescriptor)) {
|
||||
JsName result = topLevelNameMap.get(getFQName(descriptor));
|
||||
if (result != null) {
|
||||
return result;
|
||||
}
|
||||
}
|
||||
if (descriptor instanceof FunctionDescriptor) {
|
||||
FunctionDescriptor functionDescriptor = (FunctionDescriptor) descriptor;
|
||||
if ((descriptor instanceof FunctionDescriptor) || (descriptor instanceof PropertyDescriptor)) {
|
||||
DeclarationDescriptor containing = descriptor.getContainingDeclaration();
|
||||
assert containing != null : "Cannot have top level functions.";
|
||||
Map<String, JsName> methodMapForClass = methodNameMap.get(getFQName(containing));
|
||||
return methodMapForClass.get(functionDescriptor.getName());
|
||||
return methodMapForClass.get(descriptor.getName());
|
||||
}
|
||||
throw new AssertionError("Only classes and functions can be standard objects.");
|
||||
}
|
||||
|
||||
@@ -118,6 +118,15 @@ public final class TranslationContext {
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isStandardObject(@NotNull DeclarationDescriptor descriptor) {
|
||||
return staticContext.getStandardClasses().isStandardObject(descriptor);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public JsName getNameForStandardObject(@NotNull DeclarationDescriptor descriptor) {
|
||||
return staticContext.getStandardClasses().getStandardObjectName(descriptor);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public TemporaryVariable declareTemporary(@NotNull JsExpression initExpression) {
|
||||
return dynamicContext.declareTemporary(initExpression);
|
||||
|
||||
@@ -212,8 +212,9 @@ public final class PropertyAccessTranslator extends AccessTranslator {
|
||||
|
||||
@NotNull
|
||||
private JsName getGetterName() {
|
||||
if (context().aliaser().hasAliasForDeclaration(propertyDescriptor)) {
|
||||
return context().aliaser().getAliasForDeclaration(propertyDescriptor);
|
||||
//TODO: hack alert. properties for standard objects that do not have their implementation do not have getters
|
||||
if (context().isStandardObject(propertyDescriptor)) {
|
||||
return context().getNameForStandardObject(propertyDescriptor);
|
||||
}
|
||||
PropertyGetterDescriptor getter = getGetterDescriptor();
|
||||
return context().getNameForDescriptor(getter);
|
||||
|
||||
Reference in New Issue
Block a user