changes to make action work

This commit is contained in:
Pavel Talanov
2012-01-27 17:09:06 +04:00
parent fe349a1121
commit 32484eb784
13 changed files with 297 additions and 176 deletions
+1 -1
View File
@@ -24,7 +24,7 @@
<component name="ProjectResources">
<default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="IDEA IC-112.544" project-jdk-type="IDEA JDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="1.6" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
<component name="com.sixrr.metrics.MetricsReloaded">
+1
View File
@@ -11,6 +11,7 @@
<module fileurl="file://$PROJECT_DIR$/idea_fix/idea_fix.iml" filepath="$PROJECT_DIR$/idea_fix/idea_fix.iml" />
<module fileurl="file://$PROJECT_DIR$/examples/jetTests.iml" filepath="$PROJECT_DIR$/examples/jetTests.iml" />
<module fileurl="file://$PROJECT_DIR$/js/js.iml" filepath="$PROJECT_DIR$/js/js.iml" />
<module fileurl="file://$PROJECT_DIR$/jslib/jslib.iml" filepath="$PROJECT_DIR$/jslib/jslib.iml" />
<module fileurl="file://$PROJECT_DIR$/../../Kotlin/jet/stdlib/stdlib.iml" filepath="$PROJECT_DIR$/../../Kotlin/jet/stdlib/stdlib.iml" />
<module fileurl="file://$PROJECT_DIR$/translator/translator.iml" filepath="$PROJECT_DIR$/translator/translator.iml" />
</modules>
+198 -128
View File
@@ -10,28 +10,23 @@
</component>
<component name="BookmarkManager">
<bookmark url="file://$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/safeCallReturnsNullIfFails.kt" line="3" />
<bookmark url="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" line="67" />
<bookmark url="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" line="85" />
<bookmark url="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java" line="155" mnemonic="2" />
</component>
<component name="ChangeListManager">
<list default="true" id="f02ef53d-47a4-4f5e-a1aa-3df68aae9b20" name="Default" comment="add jslib module which has the declarations which are use by js-backend&#10;rework dependncies of modules">
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/jslib/src/core/core.kt" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/jslib/src/core/javautil.kt" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/jslib/src/jquery/common.kt" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/translator/testFiles/expression/misc/cases/jquery.kt" />
<change type="DELETED" beforePath="C:\Dev\Projects\jet-contrib\k2js\.idea\libraries\libs.xml" afterPath="" />
<change type="DELETED" beforePath="C:\Dev\Projects\jet-contrib\k2js\translator\testFiles\examples\cases\jquery.kt" afterPath="" />
<change type="MOVED" beforePath="C:\Dev\Projects\jet-contrib\k2js\translator\src\org\jetbrains\k2js\JetFileUtils.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetFileUtils.java" />
<list default="true" id="f02ef53d-47a4-4f5e-a1aa-3df68aae9b20" name="Default" comment="">
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/jslib/jslib.iml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/misc.xml" afterPath="$PROJECT_DIR$/.idea/misc.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/modules.xml" afterPath="$PROJECT_DIR$/.idea/modules.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/js.iml" afterPath="$PROJECT_DIR$/js/js.iml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/k2js.iml" afterPath="$PROJECT_DIR$/k2js.iml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/examples/jetTests.iml" afterPath="$PROJECT_DIR$/examples/jetTests.iml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/jslib/src/jquery/common.kt" afterPath="$PROJECT_DIR$/jslib/src/jquery/common.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/Analyzer.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/Analyzer.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.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/reference/ReferenceTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/ReferenceTranslator.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetFileUtils.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetFileUtils.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/MiscTest.java" afterPath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/MiscTest.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StdlibTest.java" afterPath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StdlibTest.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/TranslationTest.java" afterPath="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/TranslationTest.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/translator.iml" afterPath="$PROJECT_DIR$/translator/translator.iml" />
</list>
<ignored path="k2js.iws" />
@@ -233,6 +228,19 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
<breakpoint url="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetFileUtils.java" line="67" class="org.jetbrains.k2js.utils.JetFileUtils" package="org.jetbrains.k2js.utils">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
<option name="SUSPEND_POLICY" value="SuspendAll" />
<option name="COUNT_FILTER_ENABLED" value="false" />
<option name="COUNT_FILTER" value="0" />
<option name="CONDITION_ENABLED" value="false" />
<option name="CLASS_FILTERS_ENABLED" value="false" />
<option name="INSTANCE_FILTERS_ENABLED" value="false" />
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
</line_breakpoints>
<breakpoint_any>
<breakpoint>
@@ -290,13 +298,13 @@
<favorites_list name="k2js" />
</component>
<component name="FileEditorManager">
<splitter split-orientation="horizontal" split-proportion="0.5291262">
<splitter split-orientation="horizontal" split-proportion="0.3959778">
<split-first>
<leaf>
<file leaf-file-name="jquery.js" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/testFiles/expression/misc/out/jquery.js">
<provider selected="true" editor-type-id="text-editor">
<state line="16" column="41" selection-start="249" selection-end="249" vertical-scroll-proportion="0.0">
<state line="16" column="0" selection-start="249" selection-end="249" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
@@ -305,7 +313,7 @@
<file leaf-file-name="common.kt" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/jslib/src/jquery/common.kt">
<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="1" column="0" selection-start="16" selection-end="16" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
@@ -314,16 +322,43 @@
<file leaf-file-name="Analyzer.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/Analyzer.java">
<provider selected="true" editor-type-id="text-editor">
<state line="50" column="13" selection-start="1807" selection-end="1807" vertical-scroll-proportion="0.0">
<state line="23" column="19" selection-start="787" selection-end="787" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="core.kt" pinned="false" current="true" current-in-tab="true">
<file leaf-file-name="kotlin_lib.js" pinned="false" current="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/translator/testFiles/kotlin_lib.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>
</file>
<file leaf-file-name="Application.java" pinned="false" current="false" current-in-tab="false">
<entry file="jar://$PROJECT_DIR$/../../Kotlin/jet/ideaSDK/sources/sources.zip!/platform/core-api/src/com/intellij/openapi/application/Application.java">
<provider selected="true" editor-type-id="text-editor">
<state line="14" column="16" selection-start="600" selection-end="600" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="SingleRootFileViewProvider.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/idea_fix/src/com/intellij/psi/SingleRootFileViewProvider.java">
<provider selected="true" editor-type-id="text-editor">
<state line="362" column="21" selection-start="13571" selection-end="13571" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="core.kt" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/jslib/src/core/core.kt">
<provider selected="true" editor-type-id="text-editor">
<state line="10" column="17" selection-start="168" selection-end="168" vertical-scroll-proportion="0.28099173">
<state line="10" column="25" selection-start="168" selection-end="168" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
@@ -347,24 +382,6 @@
</provider>
</entry>
</file>
<file leaf-file-name="QualifiedExpressionTranslator.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/expression/QualifiedExpressionTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="71" column="0" selection-start="3541" selection-end="3541" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="StdlibTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StdlibTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="18" column="9" selection-start="360" selection-end="360" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="jquery.js" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/testFiles/examples/out/jquery.js">
<provider selected="true" editor-type-id="text-editor">
@@ -378,53 +395,55 @@
</split-first>
<split-second>
<leaf>
<file leaf-file-name="K2JSTranslator.java" pinned="false" current="false" current-in-tab="true">
<file leaf-file-name="K2JSTranslator.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="94" column="38" selection-start="3657" selection-end="3657" vertical-scroll-proportion="0.6418919">
<state line="89" column="45" selection-start="3627" selection-end="3627" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="JetFileUtils.java" pinned="false" current="false" current-in-tab="false">
<file leaf-file-name="JetFileUtils.java" pinned="false" current="true" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetFileUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="21" column="19" selection-start="680" selection-end="680" vertical-scroll-proportion="0.0">
<folding />
<state line="54" column="47" selection-start="1769" selection-end="1769" vertical-scroll-proportion="0.5201613">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="GenerationUtils.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/GenerationUtils.java">
<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="9" column="19" selection-start="154" selection-end="154" vertical-scroll-proportion="0.0">
<state line="105" column="64" selection-start="3445" selection-end="3445" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="UsefulTestCase.class" pinned="false" current="false" current-in-tab="false">
<entry file="jar://$APPLICATION_HOME_DIR$/lib/idea.jar!/com/intellij/testFramework/UsefulTestCase.class">
<file leaf-file-name="JetCoreEnvironment.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/cli/src/org/jetbrains/jet/compiler/JetCoreEnvironment.java">
<provider selected="true" editor-type-id="text-editor">
<state line="147" column="0" selection-start="8506" selection-end="8506" vertical-scroll-proportion="0.0">
<state line="12" column="55" selection-start="401" selection-end="401" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="Iterables.jet" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/jet/Iterables.jet">
<file leaf-file-name="MiscTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/MiscTest.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="21" selection-start="747" selection-end="747" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="Iterators.jet" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/jet/Iterators.jet">
<file leaf-file-name="UsefulTestCase.java" pinned="false" current="false" current-in-tab="false">
<entry file="jar://$PROJECT_DIR$/../../Kotlin/jet/ideaSDK/sources/sources.zip!/platform/testFramework/src/com/intellij/testFramework/UsefulTestCase.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">
<folding />
@@ -493,7 +512,6 @@
<component name="IdeDocumentHistory">
<option name="changedFiles">
<list>
<option value="$PROJECT_DIR$/translator/testFiles/webDemoExamples1/cases/nullChecks.kt" />
<option value="$PROJECT_DIR$/translator/testFiles/webDemoExamples1/cases/objectOrientedHello.kt" />
<option value="$PROJECT_DIR$/translator/testFiles/webDemoExamples1/cases/patternMatching.kt" />
<option value="$PROJECT_DIR$/translator/testFiles/webDemoExamples1/cases/printArg.kt" />
@@ -502,13 +520,14 @@
<option value="$PROJECT_DIR$/translator/testFiles/examples/cases/jquery.kt" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/ReferenceTranslator.java" />
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StdlibTest.java" />
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/MiscTest.java" />
<option value="$PROJECT_DIR$/translator/testFiles/expression/misc/cases/jquery.kt" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" />
<option value="$PROJECT_DIR$/translator/testFiles/expression/misc/out/jquery.js" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/Analyzer.java" />
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/MiscTest.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetFileUtils.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
</list>
</option>
</component>
@@ -731,6 +750,48 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</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>
<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>
<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>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="k2js" />
@@ -818,7 +879,7 @@
</component>
<component name="PropertiesComponent">
<property name="GoToFile.includeJavaFiles" value="false" />
<property name="project.structure.last.edited" value="Global Libraries" />
<property name="project.structure.last.edited" value="Modules" />
<property name="OverrideImplement.combined" value="true" />
<property name="project.structure.proportion" value="0.15" />
<property name="options.splitter.main.proportions" value="0.3" />
@@ -1249,6 +1310,7 @@
<window_info id="Data Sources" 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="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32853025" sideWeight="0.49812934" order="7" side_tool="false" content_ui="tabs" />
<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.4216996" 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.34774256" sideWeight="0.7733832" 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" />
@@ -1262,14 +1324,13 @@
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.20363443" sideWeight="0.7588857" 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.6570605" 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.22928914" sideWeight="0.6282421" order="0" side_tool="false" content_ui="combo" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.37175792" sideWeight="0.8530198" order="2" 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.22928914" sideWeight="0.55043226" order="0" side_tool="false" content_ui="combo" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.44956774" sideWeight="0.8530198" order="2" side_tool="false" content_ui="tabs" />
<window_info id="CodeWindow" 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="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="ResolveWindow" 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="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" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32756963" sideWeight="0.4216996" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="12" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39865515" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="JsTestDriver Server" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32907662" sideWeight="0.5" order="13" side_tool="false" content_ui="tabs" />
@@ -1311,7 +1372,7 @@
<option name="CREATE_PATCH_EXPAND_DETAILS_DEFAULT" value="true" />
<option name="SHOW_FILE_HISTORY_DETAILS" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
<option name="LAST_COMMIT_MESSAGE" value="refactor" />
<option name="LAST_COMMIT_MESSAGE" value="add jslib module which has the declarations which are use by js-backend&#10;rework dependncies of modules" />
<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" />
@@ -1324,7 +1385,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="ongoing refactoring" />
<MESSAGE value="refactoring call translator" />
<MESSAGE value="function literal as the last parameter supported&#10;added temporary and partial solution to global namespace polluting problem" />
<MESSAGE value="Migrated to new main project code.&#10;Added test for named arguments.&#10;Minor refactoring changes." />
@@ -1349,6 +1409,7 @@
<MESSAGE value="test for one namespace defined in multiple files" />
<MESSAGE value="add configuration for using js backend &#10;refactor K2JSTranslator" />
<MESSAGE value="refactor" />
<MESSAGE value="add jslib module which has the declarations which are use by js-backend&#10;rework dependncies of modules" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager />
@@ -1358,111 +1419,120 @@
<option name="FILTER_TARGETS" value="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/jet/Numbers.jet">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/expression/QualifiedExpressionTranslator.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">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/jet/Ranges.jet">
<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/testFiles/multiFile/cases/functionsVisibleFromOtherFile/b.kt">
<provider selected="true" editor-type-id="text-editor">
<state line="2" column="21" selection-start="34" selection-end="34" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/testFiles/expression/misc/cases/jquery.kt">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="11" selection-start="11" selection-end="11" vertical-scroll-proportion="0.0">
<state line="71" column="0" selection-start="3541" selection-end="3541" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/MiscTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="35" column="16" selection-start="920" selection-end="920" vertical-scroll-proportion="0.0">
<state line="29" column="21" selection-start="747" selection-end="747" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/testFiles/expression/misc/cases/intRange.kt">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="89" column="45" selection-start="3627" selection-end="3627" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/GenerationUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="9" column="19" selection-start="154" selection-end="154" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/idea_fix/src/com/intellij/psi/SingleRootFileViewProvider.java">
<provider selected="true" editor-type-id="text-editor">
<state line="362" column="21" selection-start="13571" selection-end="13571" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StdlibTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="18" column="10" selection-start="361" selection-end="361" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="jar://$APPLICATION_HOME_DIR$/lib/idea.jar!/com/intellij/testFramework/UsefulTestCase.class">
<provider selected="true" editor-type-id="text-editor">
<state line="147" column="0" selection-start="8506" selection-end="8506" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="jar://$PROJECT_DIR$/../../Kotlin/jet/ideaSDK/sources/sources.zip!/platform/testFramework/src/com/intellij/testFramework/UsefulTestCase.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">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/jet/Iterables.jet">
<provider selected="true" editor-type-id="text-editor">
<state line="109" column="71" selection-start="4220" selection-end="4220" vertical-scroll-proportion="0.0">
<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$/../../Kotlin/jet/compiler/cli/src/org/jetbrains/jet/compiler/JetCoreEnvironment.java">
<provider selected="true" editor-type-id="text-editor">
<state line="12" column="55" selection-start="401" selection-end="401" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/jet/Iterators.jet">
<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/src/org/jetbrains/k2js/translate/context/StandardClasses.java">
<provider selected="true" editor-type-id="text-editor">
<state line="224" column="30" selection-start="8699" selection-end="8699" vertical-scroll-proportion="0.0">
<state line="105" column="64" selection-start="3445" selection-end="3445" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/reference/ReferenceTranslator.java">
<entry file="jar://$PROJECT_DIR$/../../Kotlin/jet/ideaSDK/sources/sources.zip!/platform/core-api/src/com/intellij/openapi/application/Application.java">
<provider selected="true" editor-type-id="text-editor">
<state line="50" column="0" selection-start="2540" selection-end="2540" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/testFiles/expression/misc/out/jquery.js">
<provider selected="true" editor-type-id="text-editor">
<state line="16" column="41" selection-start="249" selection-end="249" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/jslib/src/core/javautil.kt">
<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$/jslib/src/jquery/common.kt">
<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/WebDemoExamples1Test.java">
<provider selected="true" editor-type-id="text-editor">
<state line="17" column="16" selection-start="326" selection-end="326" vertical-scroll-proportion="0.0">
<state line="14" column="16" selection-start="600" selection-end="600" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/Analyzer.java">
<provider selected="true" editor-type-id="text-editor">
<state line="50" column="13" selection-start="1807" selection-end="1807" vertical-scroll-proportion="0.0">
<state line="23" column="19" selection-start="787" selection-end="787" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/jslib/src/core/core.kt">
<entry file="file://$PROJECT_DIR$/translator/testFiles/kotlin_lib.js">
<provider selected="true" editor-type-id="text-editor">
<state line="10" column="17" selection-start="168" selection-end="168" vertical-scroll-proportion="0.28099173">
<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/src/org/jetbrains/k2js/utils/JetFileUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="54" column="47" selection-start="1769" selection-end="1769" vertical-scroll-proportion="0.5201613">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
@@ -1494,7 +1564,7 @@
</state>
<state key="GlobalLibrariesConfigurable.UI">
<settings>
<last-edited>js</last-edited>
<last-edited>junit-4.10</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
@@ -1506,7 +1576,7 @@
</state>
<state key="JdkListConfigurable.UI">
<settings>
<last-edited>IDEA IC-112.544</last-edited>
<last-edited>1.6</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
@@ -1518,7 +1588,7 @@
</state>
<state key="ModuleStructureConfigurable.UI">
<settings>
<last-edited>translator</last-edited>
<last-edited>jetTests</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
+2 -1
View File
@@ -5,9 +5,10 @@
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
</content>
<orderEntry type="jdk" jdkName="IDEA IU-112.121" jdkType="IDEA JDK" />
<orderEntry type="jdk" jdkName="1.6" jdkType="JavaSDK" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="translator" />
<orderEntry type="library" name="idea-full" level="application" />
</component>
</module>
+12
View File
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="jdk" jdkName="1.6" jdkType="JavaSDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
+3
View File
@@ -2,6 +2,8 @@ package jquery;
fun fail() : Nothing = throw RuntimeException();
fun JQuery.toString() = ""
class JQuery() {
fun addClass(className : String) : JQuery = fail();
fun attr(attrName : String) = ""
@@ -12,6 +14,7 @@ class JQuery() {
fun width() = 0
fun click() = this;
fun click(handler : (DomElement)->Unit) = this;
fun append(str : String) = this;
}
class DomElement() {
@@ -25,25 +25,29 @@ public final class Analyzer {
//TODO: provide some generic way to access
private static final List<String> LIB_FILE_NAMES = Arrays.asList(
"jslib\\src\\jquery\\common.kt",
"jslib\\src\\core\\javautil.kt",
"jslib\\src\\core\\core.kt"
"C:\\Dev\\Projects\\jet-contrib\\k2js\\jslib\\src\\jquery\\common.kt",
"C:\\Dev\\Projects\\jet-contrib\\k2js\\jslib\\src\\core\\javautil.kt",
"C:\\Dev\\Projects\\jet-contrib\\k2js\\jslib\\src\\core\\core.kt"
);
@NotNull
public static List<JetFile> getJsSupportStdLib() {
public static List<JetFile> getJsSupportStdLib(@Nullable Project project) {
List<JetFile> libFiles = new ArrayList<JetFile>();
for (String libFileName : LIB_FILE_NAMES) {
libFiles.add(JetFileUtils.loadPsiFile(libFileName));
libFiles.add(JetFileUtils.loadPsiFile(libFileName, project));
}
return libFiles;
}
@NotNull
public static BindingContext analyzeFiles(@NotNull List<JetFile> files) {
final List<JetFile> jsLibFiles = getJsSupportStdLib();
public static BindingContext analyzeFiles(@NotNull List<JetFile> files,
@Nullable Project externalProject) {
Project project = externalProject;
if (project == null) {
project = getProject(files);
}
final List<JetFile> jsLibFiles = getJsSupportStdLib(project);
List<JetFile> allFiles = allFiles(files, jsLibFiles);
Project project = getProject(files);
return AnalyzingUtils.analyzeFiles(project, JsConfiguration.jsLibConfiguration(project),
allFiles, notLibFiles(jsLibFiles), JetControlFlowDataTraceFactory.EMPTY);
}
@@ -1,6 +1,7 @@
package org.jetbrains.k2js;
import com.google.dart.compiler.backend.js.ast.JsProgram;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.psi.JetFile;
@@ -12,6 +13,7 @@ import org.jetbrains.k2js.utils.GenerationUtils;
import org.jetbrains.k2js.utils.JetFileUtils;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -28,8 +30,25 @@ import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getNameForNames
*/
public final class K2JSTranslator {
public static void translatePsiFile(@NotNull JetFile file, @NotNull String outputFile) throws Exception {
(new K2JSTranslator()).generateAndSaveProgram(file, outputFile);
public static void translatePsiFile(@NotNull JetFile file,
@NotNull String outputFile,
@NotNull Project project) throws Exception {
(new K2JSTranslator()).generateAndSaveProgram(file, outputFile, project);
}
public static void doNothing() {
}
public static void translateWithCallToMainAndSaveToFile(@NotNull JetFile file,
@NotNull String outputPath,
@NotNull Project project) throws Exception {
K2JSTranslator translator = new K2JSTranslator();
String programCode = translator.generateProgramCode(file, project) + "\n";
String callToMain = translator.generateCallToMain(file, "");
FileWriter writer = new FileWriter(new File(outputPath));
writer.write(programCode + callToMain);
writer.close();
}
@Nullable
@@ -38,21 +57,22 @@ public final class K2JSTranslator {
public K2JSTranslator() {
}
public void translateFile(@NotNull String inputFile, @NotNull String outputFile) throws Exception {
JetFile psiFile = JetFileUtils.loadPsiFile(inputFile);
generateAndSaveProgram(psiFile, outputFile);
public void testTranslateFile(@NotNull String inputFile, @NotNull String outputFile) throws Exception {
JetFile psiFile = JetFileUtils.loadPsiFile(inputFile, null);
generateAndSaveProgram(psiFile, outputFile, null);
}
private void generateAndSaveProgram(@NotNull JetFile psiFile,
@NotNull String outputFile) throws IOException {
JsProgram program = generateProgram(Arrays.asList(psiFile));
@NotNull String outputFile,
@Nullable Project project) throws IOException {
JsProgram program = generateProgram(Arrays.asList(psiFile), project);
CodeGenerator generator = new CodeGenerator();
generator.generateToFile(program, new File(outputFile));
}
public void translateFiles(@NotNull List<String> inputFiles, @NotNull String outputFile) throws Exception {
public void testTranslateFiles(@NotNull List<String> inputFiles, @NotNull String outputFile) throws Exception {
List<JetFile> psiFiles = createPsiFileList(inputFiles);
JsProgram program = generateProgram(psiFiles);
JsProgram program = generateProgram(psiFiles, null);
CodeGenerator generator = new CodeGenerator();
generator.generateToFile(program, new File(outputFile));
}
@@ -61,15 +81,15 @@ public final class K2JSTranslator {
private List<JetFile> createPsiFileList(@NotNull List<String> inputFiles) {
List<JetFile> psiFiles = new ArrayList<JetFile>();
for (String inputFile : inputFiles) {
psiFiles.add(JetFileUtils.loadPsiFile(inputFile));
psiFiles.add(JetFileUtils.loadPsiFile(inputFile, null));
}
return psiFiles;
}
@NotNull
public String translateStringWithCallToMain(@NotNull String programText, @NotNull String argumentsString) {
JetFile file = JetFileUtils.createPsiFile("test", programText);
String programCode = generateProgramCode(file) + "\n";
JetFile file = JetFileUtils.createPsiFile("test", programText, null);
String programCode = generateProgramCode(file, null) + "\n";
String flushOutput = "Kotlin.System.flush();\n";
String callToMain = generateCallToMain(file, argumentsString);
String programOutput = "Kotlin.System.output();\n";
@@ -77,15 +97,17 @@ public final class K2JSTranslator {
}
@NotNull
private String generateProgramCode(@NotNull JetFile psiFile) {
JsProgram program = generateProgram(Arrays.asList(psiFile));
private String generateProgramCode(@NotNull JetFile psiFile,
@Nullable Project project) {
JsProgram program = generateProgram(Arrays.asList(psiFile), project);
CodeGenerator generator = new CodeGenerator();
return generator.generateToString(program);
}
@NotNull
public JsProgram generateProgram(@NotNull List<JetFile> files) {
bindingContext = Analyzer.analyzeFiles(files);
private JsProgram generateProgram(@NotNull List<JetFile> files,
@Nullable Project project) {
bindingContext = Analyzer.analyzeFiles(files, project);
for (JetFile file : files) {
AnalyzingUtils.checkForSyntacticErrors(file);
AnalyzingUtils.throwExceptionOnErrors(bindingContext);
@@ -103,7 +103,7 @@ public final class StandardClasses {
private static void declareJQuery(@NotNull StandardClasses standardClasses) {
standardClasses.declare().forFQ("jquery.JQuery").externalClass("jQuery")
.methods("addClass", "attr", "hasClass");
.methods("addClass", "attr", "hasClass", "append");
standardClasses.declare().forFQ("jquery.jq").externalFunction("jQuery");
}
@@ -1,6 +1,6 @@
package org.jetbrains.k2js.utils;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.CharsetToolkit;
@@ -9,7 +9,7 @@ import com.intellij.psi.PsiFileFactory;
import com.intellij.psi.impl.PsiFileFactoryImpl;
import com.intellij.testFramework.LightVirtualFile;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.compiler.JetCoreEnvironment;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.plugin.JetLanguage;
@@ -21,13 +21,13 @@ import java.io.IOException;
*/
public final class JetFileUtils {
@NotNull
private static JetCoreEnvironment environment = new JetCoreEnvironment(new Disposable() {
@Override
public void dispose() {
}
});
// @NotNull
// private static JetCoreEnvironment testOnlyEnvironment = new JetCoreEnvironment(new Disposable() {
//
// @Override
// public void dispose() {
// }
// });
@NotNull
public static String loadFile(@NotNull String path) throws IOException {
@@ -42,24 +42,30 @@ public final class JetFileUtils {
}
@NotNull
public static JetFile createPsiFile(@NotNull String name, @NotNull String text) {
return (JetFile) createFile(name + ".jet", text);
public static JetFile createPsiFile(@NotNull String name,
@NotNull String text,
@Nullable Project project) {
return (JetFile) createFile(name + ".jet", text, project);
}
@NotNull
public static JetFile loadPsiFile(@NotNull String name) {
public static JetFile loadPsiFile(@NotNull String name, @Nullable Project project) {
try {
return createPsiFile(name, loadFile(name));
return createPsiFile(name, loadFile(name), project);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
@NotNull
private static PsiFile createFile(@NotNull String name, @NotNull String text) {
private static PsiFile createFile(@NotNull String name, @NotNull String text, @Nullable Project project) {
LightVirtualFile virtualFile = new LightVirtualFile(name, JetLanguage.INSTANCE, text);
virtualFile.setCharset(CharsetToolkit.UTF8_CHARSET);
PsiFile result = ((PsiFileFactoryImpl) PsiFileFactory.getInstance(environment.getProject()))
Project realProject = project;
if (realProject == null) {
throw new RuntimeException();
}
PsiFile result = ((PsiFileFactoryImpl) PsiFileFactory.getInstance(realProject))
.trySetupPsiForFile(virtualFile, JetLanguage.INSTANCE, true, false);
assert result != null;
return result;
@@ -32,8 +32,9 @@ public class MiscTest extends AbstractExpressionTest {
testFooBoxIsTrue("safecallComputesExpressionOnlyOnce.kt");
}
@Test
public void jquery() throws Exception {
testFooBoxIsTrue("jquery.kt");
}
//TODO:
// @Test
// public void jquery() throws Exception {
// testFooBoxIsTrue("jquery.kt");
// }
}
@@ -81,7 +81,7 @@ public abstract class TranslationTest {
}
protected void translateFile(String filename) throws Exception {
(new K2JSTranslator()).translateFile(getInputFilePath(filename), getOutputFilePath(filename));
(new K2JSTranslator()).testTranslateFile(getInputFilePath(filename), getOutputFilePath(filename));
}
protected void translateFilesInDir(String dirName) throws Exception {
@@ -92,7 +92,7 @@ public abstract class TranslationTest {
fullFilePaths.add(getInputFilePath(dirName) + "\\" + fileName);
}
assert dir.isDirectory();
(new K2JSTranslator()).translateFiles(fullFilePaths, getOutputFilePath(dirName + ".kt"));
(new K2JSTranslator()).testTranslateFiles(fullFilePaths, getOutputFilePath(dirName + ".kt"));
}
protected List<String> generateFilenameList(String inputFile) {
+1
View File
@@ -27,6 +27,7 @@
<orderEntry type="library" name="guava-10.0.1" level="application" />
<orderEntry type="library" name="junit-4.10" level="application" />
<orderEntry type="library" name="js" level="application" />
<orderEntry type="library" name="idea-full" level="application" />
</component>
</module>