diff --git a/k2js/.idea/artifacts/k2js_jar.xml b/k2js/.idea/artifacts/k2js_jar.xml new file mode 100644 index 00000000000..a4f2e6c0057 --- /dev/null +++ b/k2js/.idea/artifacts/k2js_jar.xml @@ -0,0 +1,16 @@ + + + $PROJECT_DIR$/out/artifacts/k2js_jar + + + + + + + + + + + + + \ No newline at end of file diff --git a/k2js/.idea/copyright/apache.xml b/k2js/.idea/copyright/apache.xml new file mode 100644 index 00000000000..647fcdb02ef --- /dev/null +++ b/k2js/.idea/copyright/apache.xml @@ -0,0 +1,9 @@ + + + + \ No newline at end of file diff --git a/k2js/.idea/copyright/profiles_settings.xml b/k2js/.idea/copyright/profiles_settings.xml new file mode 100644 index 00000000000..ace2e994924 --- /dev/null +++ b/k2js/.idea/copyright/profiles_settings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/k2js/.idea/dictionaries/Pavel_Talanov.xml b/k2js/.idea/dictionaries/Pavel_Talanov.xml new file mode 100644 index 00000000000..8bede43c190 --- /dev/null +++ b/k2js/.idea/dictionaries/Pavel_Talanov.xml @@ -0,0 +1,17 @@ + + + + accessors + aliaser + fqname + fqnames + initializers + intrinsics + kotlin + mutator + namer + overloadable + println + + + \ No newline at end of file diff --git a/k2js/.idea/inspectionProfiles/Project_Default.xml b/k2js/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 00000000000..a76f2aecef0 --- /dev/null +++ b/k2js/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,8 @@ + + + + \ No newline at end of file diff --git a/k2js/.idea/inspectionProfiles/profiles_settings.xml b/k2js/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 00000000000..3b312839bf2 --- /dev/null +++ b/k2js/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/k2js/.idea/scopes/scope_settings.xml b/k2js/.idea/scopes/scope_settings.xml new file mode 100644 index 00000000000..922003b8433 --- /dev/null +++ b/k2js/.idea/scopes/scope_settings.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/k2js/.idea/workspace.xml b/k2js/.idea/workspace.xml new file mode 100644 index 00000000000..46fab1cea58 --- /dev/null +++ b/k2js/.idea/workspace.xml @@ -0,0 +1,1736 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + org.jetbrains.k2js.translate.* + + + org.jetbrains.k2js.* + + + org.jetbrains.k2js.* + + + org.jetbrains.k2js.* + + + org.jetbrains.k2js.test.* + + + org.jetbrains.k2js.analyze.* + org.jetbrains.k2js.config.* + org.jetbrains.k2js.facade.* + org.jetbrains.k2js.generate.* + org.jetbrains.k2js.test.* + org.jetbrains.k2js.translate.* + org.jetbrains.k2js.utils.* + org.jetbrains.k2js.translate.context.* + org.jetbrains.k2js.translate.declaration.* + org.jetbrains.k2js.translate.expression.* + org.jetbrains.k2js.translate.general.* + org.jetbrains.k2js.translate.initializer.* + org.jetbrains.k2js.translate.intrinsic.* + org.jetbrains.k2js.translate.operation.* + org.jetbrains.k2js.translate.reference.* + org.jetbrains.k2js.translate.utils.* + org.jetbrains.k2js.translate.intrinsic.array.* + org.jetbrains.k2js.translate.intrinsic.primitive.* + org.jetbrains.k2js.translate.intrinsic.string.* + org.jetbrains.k2js.translate.intrinsic.tuple.* + + + org.jetbrains.k2js.test.* + org.jetbrains.k2js.translate.* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Android + + + Class structure + + + Dependency issues + + + General + + + Internationalization issues + + + Java language level migration aids + + + Logging issues + + + Numeric issues + + + OSGi + + + Plugin DevKit + + + Portability issues + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + localhost + 5050 + + + + + + + + + 1319812241928 + 1319812241928 + + + 1327398620289 + 1327398620289 + + + 1327420478272 + 1327420478272 + + + 1327427513473 + 1327427513473 + + + 1329305841490 + 1329305841490 + + + 1329307398273 + 1329307398273 + + + 1329310617071 + 1329310617071 + + + 1329311170761 + 1329311170761 + + + 1329823359830 + 1329823359830 + + + 1329826525434 + 1329826525434 + + + 1329828408220 + 1329828408220 + + + 1329829777595 + 1329829777595 + + + 1329831616053 + 1329831616053 + + + 1329836574441 + 1329836574441 + + + 1329837265452 + 1329837265452 + + + 1329838186967 + 1329838186967 + + + 1329838425571 + 1329838425571 + + + 1329838613308 + 1329838613308 + + + 1329838762745 + 1329838762745 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + k2js:jar + + + + + + + + apache + + + + + + + + No facets are configured + + + + + + + + guava-10.0.1 + + + + + + + + 1.6 + + + + + + + + jslib + + + + + + + + 1.6 + + + + + + + + libs + + + + + + + + + + + + + + + + diff --git a/k2js/build.xml b/k2js/build.xml new file mode 100644 index 00000000000..c799c56523e --- /dev/null +++ b/k2js/build.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/k2js/coverage-error.log b/k2js/coverage-error.log new file mode 100644 index 00000000000..7d64d020a20 --- /dev/null +++ b/k2js/coverage-error.log @@ -0,0 +1,1478 @@ +[2011.12.13 16:49:22] (Coverage): Error during class instrumentation: org.jetbrains.k2js.translate.reference.AccessTranslator +java.lang.ClassCircularityError: org/jetbrains/k2js/translate/reference/PropertyAccessTranslator + at java.lang.Class.forName0(Native Method) + at java.lang.Class.forName(Class.java:186) + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1281) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:113) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) + at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) + at java.net.URLClassLoader.access$100(URLClassLoader.java:71) + at java.net.URLClassLoader$1.run(URLClassLoader.java:361) + at java.net.URLClassLoader$1.run(URLClassLoader.java:355) + at java.security.AccessController.doPrivileged(Native Method) + at java.net.URLClassLoader.findClass(URLClassLoader.java:354) + at java.lang.ClassLoader.loadClass(ClassLoader.java:423) + at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) + at java.lang.ClassLoader.loadClass(ClassLoader.java:356) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) + at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) + at java.net.URLClassLoader.access$100(URLClassLoader.java:71) + at java.net.URLClassLoader$1.run(URLClassLoader.java:361) + at java.net.URLClassLoader$1.run(URLClassLoader.java:355) + at java.security.AccessController.doPrivileged(Native Method) + at java.net.URLClassLoader.findClass(URLClassLoader.java:354) + at java.lang.ClassLoader.loadClass(ClassLoader.java:423) + at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) + at java.lang.ClassLoader.loadClass(ClassLoader.java:356) + at org.jetbrains.k2js.translate.reference.ReferenceTranslator.translateSimpleName(ReferenceTranslator.java:24) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitSimpleNameExpression(ExpressionVisitor.java:135) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitSimpleNameExpression(ExpressionVisitor.java:32) + at org.jetbrains.jet.lang.psi.JetSimpleNameExpression.accept(JetSimpleNameExpression.java:64) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitBlockExpression(ExpressionVisitor.java:68) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitBlockExpression(ExpressionVisitor.java:32) + at org.jetbrains.jet.lang.psi.JetBlockExpression.accept(JetBlockExpression.java:24) + at org.jetbrains.k2js.translate.general.Translation.translateExpression(Translation.java:56) + at org.jetbrains.k2js.translate.expression.FunctionTranslator.translateBody(FunctionTranslator.java:105) + at org.jetbrains.k2js.translate.expression.FunctionTranslator.generateFunctionObject(FunctionTranslator.java:68) + at org.jetbrains.k2js.translate.expression.FunctionTranslator.translateAsLiteral(FunctionTranslator.java:60) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitFunctionLiteralExpression(ExpressionVisitor.java:370) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitFunctionLiteralExpression(ExpressionVisitor.java:32) + at org.jetbrains.jet.lang.psi.JetFunctionLiteralExpression.accept(JetFunctionLiteralExpression.java:24) + at org.jetbrains.k2js.translate.general.Translation.translateExpression(Translation.java:56) + at org.jetbrains.k2js.translate.general.Translation.translateAsExpression(Translation.java:62) + at org.jetbrains.k2js.translate.utils.TranslationUtils.translateArgument(TranslationUtils.java:56) + at org.jetbrains.k2js.translate.utils.TranslationUtils.translateArgumentList(TranslationUtils.java:45) + at org.jetbrains.k2js.translate.reference.CallTranslator.translate(CallTranslator.java:66) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitCallExpression(ExpressionVisitor.java:117) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitCallExpression(ExpressionVisitor.java:32) + at org.jetbrains.jet.lang.psi.JetCallExpression.accept(JetCallExpression.java:29) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.translateAsExpression(ExpressionVisitor.java:37) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitReturnExpression(ExpressionVisitor.java:80) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitReturnExpression(ExpressionVisitor.java:32) + at org.jetbrains.jet.lang.psi.JetReturnExpression.accept(JetReturnExpression.java:22) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitBlockExpression(ExpressionVisitor.java:68) + at org.jetbrains.k2js.translate.expression.ExpressionVisitor.visitBlockExpression(ExpressionVisitor.java:32) + at org.jetbrains.jet.lang.psi.JetBlockExpression.accept(JetBlockExpression.java:24) + at org.jetbrains.k2js.translate.general.Translation.translateExpression(Translation.java:56) + at org.jetbrains.k2js.translate.expression.FunctionTranslator.translateBody(FunctionTranslator.java:105) + at org.jetbrains.k2js.translate.expression.FunctionTranslator.generateFunctionObject(FunctionTranslator.java:68) + at org.jetbrains.k2js.translate.expression.FunctionTranslator.translateAsMethod(FunctionTranslator.java:53) + at org.jetbrains.k2js.translate.declaration.DeclarationBodyVisitor.visitNamedFunction(DeclarationBodyVisitor.java:53) + at org.jetbrains.k2js.translate.declaration.DeclarationBodyVisitor.visitNamedFunction(DeclarationBodyVisitor.java:20) + at org.jetbrains.jet.lang.psi.JetNamedFunction.accept(JetNamedFunction.java:23) + at org.jetbrains.k2js.translate.declaration.DeclarationBodyVisitor.traverseNamespace(DeclarationBodyVisitor.java:38) + at org.jetbrains.k2js.translate.declaration.NamespaceTranslator.translateNamespaceMemberDeclarations(NamespaceTranslator.java:85) + at org.jetbrains.k2js.translate.declaration.NamespaceTranslator.addMemberDeclarations(NamespaceTranslator.java:77) + at org.jetbrains.k2js.translate.declaration.NamespaceTranslator.namespaceOwnDeclarationStatement(NamespaceTranslator.java:66) + at org.jetbrains.k2js.translate.declaration.NamespaceTranslator.translateNamespace(NamespaceTranslator.java:42) + at org.jetbrains.k2js.translate.declaration.NamespaceTranslator.translateNamespace(NamespaceTranslator.java:29) + at org.jetbrains.k2js.translate.general.Translation.translateNamespace(Translation.java:40) + at org.jetbrains.k2js.translate.general.Translation.generateAst(Translation.java:100) + at org.jetbrains.k2js.K2JSTranslator.translate(K2JSTranslator.java:55) + at org.jetbrains.k2js.test.TranslationTest.translateFile(TranslationTest.java:60) + at org.jetbrains.k2js.test.TranslationTest.testFunctionOutput(TranslationTest.java:54) + at org.jetbrains.k2js.test.ExampleTest.runBoxTest(ExampleTest.java:16) + at ExampleTestSuite.runTest(ExampleTestSuite.java:21) + at junit.framework.TestCase.runBare(TestCase.java:134) + at com.intellij.testFramework.UsefulTestCase.defaultRunBare(UsefulTestCase.java:266) + at com.intellij.testFramework.UsefulTestCase$3.run(UsefulTestCase.java:278) + at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:241) + at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705) + at java.awt.EventQueue.access$000(EventQueue.java:101) + at java.awt.EventQueue$3.run(EventQueue.java:666) + at java.awt.EventQueue$3.run(EventQueue.java:664) + at java.security.AccessController.doPrivileged(Native Method) + at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) + at java.awt.EventQueue.dispatchEvent(EventQueue.java:675) + at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211) + at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) + at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) + at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) + at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) + at java.awt.EventDispatchThread.run(EventDispatchThread.java:90) +[2011.12.13 19:57:44] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_1 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_1 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.runPropertyTypeCheck(KotlinLibTest.java:26) + at org.jetbrains.k2js.test.KotlinLibTest.classObjectHasCreateMethod(KotlinLibTest.java:46) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:44] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_2 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_2 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.runPropertyTypeCheck(KotlinLibTest.java:26) + at org.jetbrains.k2js.test.KotlinLibTest.traitObjectHasCreateMethod(KotlinLibTest.java:62) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:45] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_3 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_3 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.createdTraitIsJSObject(KotlinLibTest.java:69) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:45] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_4 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_4 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.createdNamespaceIsJSObject(KotlinLibTest.java:77) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:45] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_5 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_5 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.namespaceHasDeclaredFunction(KotlinLibTest.java:85) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:45] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_6 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_6 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.namespaceHasDeclaredClasses(KotlinLibTest.java:92) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:45] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_7 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_7 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.isAncestorType(KotlinLibTest.java:104) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:45] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_8 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_8 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.isComplexTest(KotlinLibTest.java:110) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:45] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_9 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_9 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.commaExpression(KotlinLibTest.java:116) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:46] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_10 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_10 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.isSameType(KotlinLibTest.java:98) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.13 19:57:46] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_11 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_11 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.runPropertyTypeCheck(KotlinLibTest.java:26) + at org.jetbrains.k2js.test.KotlinLibTest.namespaceObjectHasCreateMethod(KotlinLibTest.java:54) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:19] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_1 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_1 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.runPropertyTypeCheck(KotlinLibTest.java:26) + at org.jetbrains.k2js.test.KotlinLibTest.classObjectHasCreateMethod(KotlinLibTest.java:46) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:19] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_2 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_2 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.runPropertyTypeCheck(KotlinLibTest.java:26) + at org.jetbrains.k2js.test.KotlinLibTest.traitObjectHasCreateMethod(KotlinLibTest.java:62) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:19] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_3 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_3 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.createdTraitIsJSObject(KotlinLibTest.java:69) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:19] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_4 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_4 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.createdNamespaceIsJSObject(KotlinLibTest.java:77) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:19] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_5 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_5 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.namespaceHasDeclaredFunction(KotlinLibTest.java:85) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:20] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_6 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_6 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.namespaceHasDeclaredClasses(KotlinLibTest.java:92) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:20] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_7 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_7 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.isAncestorType(KotlinLibTest.java:104) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:20] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_8 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_8 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.isComplexTest(KotlinLibTest.java:110) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:20] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_9 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_9 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.commaExpression(KotlinLibTest.java:116) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:20] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_10 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_10 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.isSameType(KotlinLibTest.java:98) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) +[2011.12.14 16:07:20] (Coverage): Error during class instrumentation: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_11 +java.lang.RuntimeException: java.lang.ClassNotFoundException: org.mozilla.javascript.gen.translator_testFiles_kotlin_lib_js_11 + at org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1284) + at org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1256) + at org.objectweb.asm.Frame.merge(Frame.java:1373) + at org.objectweb.asm.Frame.merge(Frame.java:1323) + at org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1270) + at org.objectweb.asm.MethodAdapter.visitMaxs(MethodAdapter.java:189) + at com.intellij.rt.coverage.instrumentation.SamplingInstrumenter$1.visitMaxs(SamplingInstrumenter.java:78) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:1447) + at org.objectweb.asm.ClassReader.accept(ClassReader.java:420) + at com.intellij.rt.coverage.instrumentation.Instrumentator.instrument(Instrumentator.java:148) + at com.intellij.rt.coverage.instrumentation.Instrumentator.access$000(Instrumentator.java:26) + at com.intellij.rt.coverage.instrumentation.Instrumentator$1.transform(Instrumentator.java:109) + at sun.instrument.TransformerManager.transform(TransformerManager.java:188) + at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:424) + at java.lang.ClassLoader.defineClass1(Native Method) + at java.lang.ClassLoader.defineClass(ClassLoader.java:791) + at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) + at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:160) + at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:115) + at org.mozilla.javascript.Context.compileImpl(Context.java:2447) + at org.mozilla.javascript.Context.compileReader(Context.java:1328) + at org.mozilla.javascript.Context.compileReader(Context.java:1300) + at org.mozilla.javascript.Context.evaluateReader(Context.java:1139) + at org.jetbrains.k2js.test.TranslationTest.runFileWithRhino(TranslationTest.java:86) + at org.jetbrains.k2js.test.TranslationTest.runRhinoTest(TranslationTest.java:94) + at org.jetbrains.k2js.test.KotlinLibTest.runPropertyTypeCheck(KotlinLibTest.java:26) + at org.jetbrains.k2js.test.KotlinLibTest.namespaceObjectHasCreateMethod(KotlinLibTest.java:54) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) + at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) + at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) + at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) + at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) + at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runners.Suite.runChild(Suite.java:128) + at org.junit.runners.Suite.runChild(Suite.java:24) + at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) + at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) + at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) + at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) + at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) + at org.junit.runners.ParentRunner.run(ParentRunner.java:300) + at org.junit.runner.JUnitCore.run(JUnitCore.java:157) + at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:71) + at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) + at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:601) + at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) diff --git a/k2js/out/artifacts/k2js_jar/desktop.ini b/k2js/out/artifacts/k2js_jar/desktop.ini new file mode 100644 index 00000000000..d957fd188db --- /dev/null +++ b/k2js/out/artifacts/k2js_jar/desktop.ini @@ -0,0 +1,4 @@ +[ViewState] +Mode= +Vid= +FolderType=Generic diff --git a/k2js/out/artifacts/k2js_jar/k2js.jar b/k2js/out/artifacts/k2js_jar/k2js.jar new file mode 100644 index 00000000000..15cc859abeb Binary files /dev/null and b/k2js/out/artifacts/k2js_jar/k2js.jar differ diff --git a/k2js/out/artifacts/k2js_jar/kotlin_lib.js b/k2js/out/artifacts/k2js_jar/kotlin_lib.js new file mode 100644 index 00000000000..a6ebd687d2b --- /dev/null +++ b/k2js/out/artifacts/k2js_jar/kotlin_lib.js @@ -0,0 +1,465 @@ +function $A(iterable) { + if (!iterable) return []; + if ('toArray' in Object(iterable)) return iterable.toArray(); + var length = iterable.length || 0, results = new Array(length); + while (length--) results[length] = iterable[length]; + return results; +} + +(function () { + + + function extend(destination, source) { + for (var property in source) + destination[property] = source[property]; + return destination; + } + + + + function keys(object) { + if (Type(object) !== OBJECT_TYPE) { + throw new TypeError(); + } + var results = []; + for (var property in object) { + if (object.hasOwnProperty(property)) { + results.push(property); + } + } + return results; + } + + function values(object) { + var results = []; + for (var property in object) + results.push(object[property]); + return results; + } + + extend(Object, { + extend:extend, + keys:Object.keys || keys, + values:values + }); +})(); + + +Object.extend(Function.prototype, (function () { + var slice = Array.prototype.slice; + + function update(array, args) { + var arrayLength = array.length, length = args.length; + while (length--) array[arrayLength + length] = args[length]; + return array; + } + + function merge(array, args) { + array = slice.call(array, 0); + return update(array, args); + } + + function argumentNames() { + var names = this.toString().match(/^[\s\(]*function[^(]*\(([^)]*)\)/)[1] + .replace(/\/\/.*?[\r\n]|\/\*(?:.|[\r\n])*?\*\//g, '') + .replace(/\s+/g, '').split(','); + return names.length == 1 && !names[0] ? [] : names; + } + + function bind(context) { + if (arguments.length < 2 && Object.isUndefined(arguments[0])) return this; + var __method = this, args = slice.call(arguments, 1); + return function () { + var a = merge(args, arguments); + return __method.apply(context, a); + } + } + + function bindAsEventListener(context) { + var __method = this, args = slice.call(arguments, 1); + return function (event) { + var a = update([event || window.event], args); + return __method.apply(context, a); + } + } + + function wrap(wrapper) { + var __method = this; + return function () { + var a = update([__method.bind(this)], arguments); + return wrapper.apply(this, a); + } + } + + return { + argumentNames:argumentNames, + bind:bind, + bindAsEventListener:bindAsEventListener, + wrap:wrap + } +})()); + +var isType = function (object, klass) { + current = object.get_class(); + while (current !== klass) { + if (current === null) { + return false; + } + current = current.superclass; + } + return true; +} + +var emptyFunction = function () { +} + +var Class = (function () { + + function subclass() { + } + + ; + function create() { + var parent = null, properties = $A(arguments); + if (typeof (properties[0]) == "function") + parent = properties.shift(); + + function klass() { + this.initializing = klass; + this.initialize.apply(this, arguments); + } + + Object.extend(klass, Class.Methods); + klass.superclass = parent; + klass.subclasses = []; + + if (parent) { + subclass.prototype = parent.prototype; + klass.prototype = new subclass; + parent.subclasses.push(klass); + } + + klass.addMethods( + { + get_class:function () { + return klass; + } + }); + + if (parent != null) { + klass.addMethods( + { + super_init:function () { + this.initializing = this.initializing.superclass; + this.initializing.prototype.initialize.apply(this, arguments) + } + }); + } + + for (var i = 0, length = properties.length; i < length; i++) + klass.addMethods(properties[i]); + + if (!klass.prototype.initialize) + klass.prototype.initialize = emptyFunction; + + klass.prototype.constructor = klass; + return klass; + } + + function addMethods(source) { + var ancestor = this.superclass && this.superclass.prototype, + properties = Object.keys(source); + + + for (var i = 0, length = properties.length; i < length; i++) { + var property = properties[i], value = source[property]; + if (ancestor && (typeof (value) == "function") && + value.argumentNames()[0] == "$super") { + var method = value; + value = (function (m) { + return function () { + return ancestor[m].apply(this, arguments); + }; + })(property).wrap(method); + + } + this.prototype[property] = value; + } + + return this; + } + + return { + create:create, + Methods:{ + addMethods:addMethods + } + }; +})(); + +var Trait = (function () { + + function add(object, source) { + properties = Object.keys(source); + for (var i = 0, length = properties.length; i < length; i++) { + var property = properties[i]; + var value = source[property]; + object[property] = value; + } + return this; + } + + function create() { + + result = {} + for (var i = 0, length = arguments.length; i < length; i++) { + add(result, arguments[i]); + } + return result; + } + + return { + create:create + }; +})(); + + +var Namespace = (function () { + + function create() { + return Trait.create.apply(Trait, arguments); + } + + return { + create:create + }; +})(); + +Kotlin = {} +Kotlin.Class = Class; +Kotlin.Namespace = Namespace; +Kotlin.Trait = Trait; +Kotlin.isType = isType; + +Kotlin.equals = function (obj1, obj2) { + if (typeof obj1 == "object") { + if (obj1.equals != undefined) { + return obj1.equals(obj2); + } + } + return (obj1 === obj2); +}; + +Kotlin.Exceptions = {} +Kotlin.Exceptions.IndexOutOfBounds = {} +Kotlin.array = function (len) { + return new Kotlin.Array(len, function () { + return null + }); +} +Kotlin.Array = Class.create({ + initialize:function (len, f) { + this.array = []; + var i = 0; + while (i < len) { + this.array.push(f(i)); + ++i; + } + }, + get:function (index) { + if ((index < 0) || (index >= this.array.length)) { + throw Kotlin.Exceptions.IndexOutOfBounds; + } + return (this.array)[index]; + }, + set:function (index, value) { + if ((index < 0) || (index >= this.array.length)) { + throw Kotlin.Exceptions.IndexOutOfBounds; + } + (this.array)[index] = value; + }, + size:function () { + return this.array.length; + }, + iterator:function () { + return new Kotlin.ArrayIterator(this); + }, + indices:function() { + return new Kotlin.NumberRange(0, this.size(), false); + } +}); + + +Kotlin.ArrayList = Class.create({ + initialize:function () { + this.array = []; + this.$size = 0; + }, + get:function (index) { + if ((index < 0) || (index >= this.$size)) { + throw Kotlin.Exceptions.IndexOutOfBounds; + } + return (this.array)[index]; + }, + set:function (index, value) { + if ((index < 0) || (index >= this.$size)) { + throw Kotlin.Exceptions.IndexOutOfBounds; + } + (this.array)[index] = value; + }, + size:function () { + return this.$size; + }, + iterator:function () { + return new Kotlin.ArrayIterator(this); + }, + isEmpty:function () { + return (this.$size == 0); + }, + add:function (element) { + this.array[this.$size++] = element; + }, + addAll:function (collection) { + var it = collection.iterator(); + while (it.hasNext()) { + this.add(it.next()); + } + }, + remove:function (index) { + for (var i = index; i < this.$size - 1; ++i) { + this.array[i] = this.array[i + 1]; + } + this.$size--; + }, + contains:function (obj) { + for (var i = 0; i < this.$size; ++i) { + if (Kotlin.equals(this.array[i], obj)) { + return true; + } + } + return false; + } +}); + + +Kotlin.ArrayIterator = Class.create({ + initialize:function (array) { + this.array = array; + this.index = 0; + }, + next:function () { + return this.array.get(this.index++); + }, + hasNext:function () { + return (this.array.size() > this.index); + } +}); + +Kotlin.Integer = function () { + + return { + parseInt:function (str) { + return parseInt(str); + } + } + +}(); + +Kotlin.System = function () { + var output = ""; + + var print = function (obj) { + if (obj !== undefined) { + output += obj; + } + }; + var println = function (obj) { + this.print(obj); + output += "\n"; + }; + + return { + out:function () { + return { + print:print, + println:println + }; + }, + output:function () { + return output; + }, + flush:function () { + output = ""; + } + }; +}(); + + +Kotlin.ArrayIterator = Class.create({ + initialize:function (array) { + this.array = array; + this.index = 0; + }, + next:function () { + return this.array.get(this.index++); + }, + hasNext:function () { + return (this.array.size() > this.index); + } +}); + +Kotlin.RangeIterator = Kotlin.Class.create({initialize:function (start, count, reversed) { + this.$start = start; + this.$count = count; + this.$reversed = reversed; + this.$i = this.get_start(); +}, get_start:function () { + return this.$start; +}, get_count:function () { + return this.$count; +}, set_count:function (tmp$0) { + this.$count = tmp$0; +}, get_reversed:function () { + return this.$reversed; +}, get_i:function () { + return this.$i; +}, set_i:function (tmp$0) { + this.$i = tmp$0; +}, next:function () { + this.set_count(this.get_count() - 1); + if (this.get_reversed()) { + this.set_i(this.get_i() - 1); + return this.get_i() + 1; + } + else { + this.set_i(this.get_i() + 1); + return this.get_i() - 1; + } +}, hasNext:function () { + return this.get_count() > 0; +} +}); + +Kotlin.NumberRange = Kotlin.Class.create({initialize:function (start, size, reversed) { + this.$start = start; + this.$size = size; + this.$reversed = reversed; +}, get_start:function () { + return this.$start; +}, get_size:function () { + return this.$size; +}, get_reversed:function () { + return this.$reversed; +}, get_end:function () { + return this.get_reversed() ? this.get_start() - this.get_size() + 1 : this.get_start() + this.get_size() - 1; +}, contains:function (number) { + if (this.get_reversed()) { + return number <= this.get_start() && number > this.get_start() - this.get_size(); + } + else { + return number >= this.get_start() && number < this.get_start() + this.get_size(); + } +}, iterator:function () { + return new Kotlin.RangeIterator(this.get_start(), this.get_size(), this.get_reversed()); +} +}); diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$1.class new file mode 100644 index 00000000000..383114eb694 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$2.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$2.class new file mode 100644 index 00000000000..159b569a025 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$2.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$3.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$3.class new file mode 100644 index 00000000000..db361201f74 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen$3.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen.class new file mode 100644 index 00000000000..8e94e33266d Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/AnnotationCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$1.class new file mode 100644 index 00000000000..79990cad6af Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$Mode.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$Mode.class new file mode 100644 index 00000000000..96be445492a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$Mode.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$State.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$State.class new file mode 100644 index 00000000000..c5535556b2b Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter$State.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter.class new file mode 100644 index 00000000000..b951a36e9c2 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/BothSignatureWriter.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/Callable.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/Callable.class new file mode 100644 index 00000000000..e12a7abe7a7 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/Callable.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CallableMethod.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CallableMethod.class new file mode 100644 index 00000000000..a783c90573b Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CallableMethod.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBodyCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBodyCodegen.class new file mode 100644 index 00000000000..aadc6002f60 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBodyCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilder$Concrete.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilder$Concrete.class new file mode 100644 index 00000000000..de864efce0c Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilder$Concrete.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilder.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilder.class new file mode 100644 index 00000000000..dbdd201ca76 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilder.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$1.class new file mode 100644 index 00000000000..6937f45ddc3 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$2$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$2$1.class new file mode 100644 index 00000000000..daa5bbdacec Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$2$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$2.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$2.class new file mode 100644 index 00000000000..894657beb36 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory$2.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory.class new file mode 100644 index 00000000000..f049fb758b4 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassBuilderFactory.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassCodegen.class new file mode 100644 index 00000000000..42586a04d67 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassFileFactory.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassFileFactory.class new file mode 100644 index 00000000000..93af46526b0 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClassFileFactory.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ClosureCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClosureCodegen.class new file mode 100644 index 00000000000..2be9a6ce8c8 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ClosureCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodeChunk.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodeChunk.class new file mode 100644 index 00000000000..8d55d9fc143 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodeChunk.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$1.class new file mode 100644 index 00000000000..d6d0adb6d2d Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$AnonymousClassContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$AnonymousClassContext.class new file mode 100644 index 00000000000..2918bbdef80 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$AnonymousClassContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ClassContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ClassContext.class new file mode 100644 index 00000000000..9f6d937fbf6 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ClassContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ClosureContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ClosureContext.class new file mode 100644 index 00000000000..e79fef53713 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ClosureContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ConstructorContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ConstructorContext.class new file mode 100644 index 00000000000..bc9fc129742 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ConstructorContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$MethodContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$MethodContext.class new file mode 100644 index 00000000000..54a47733597 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$MethodContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$NamespaceContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$NamespaceContext.class new file mode 100644 index 00000000000..3874f505e83 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$NamespaceContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ReceiverContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ReceiverContext.class new file mode 100644 index 00000000000..25770bf884a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext$ReceiverContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext.class new file mode 100644 index 00000000000..270d008317a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenContext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenUtil.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenUtil.class new file mode 100644 index 00000000000..ae41ab41993 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CodegenUtil.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationErrorHandler$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationErrorHandler$1.class new file mode 100644 index 00000000000..6cc81ffba46 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationErrorHandler$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationErrorHandler.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationErrorHandler.class new file mode 100644 index 00000000000..0b201dbfc0c Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationErrorHandler.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationException.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationException.class new file mode 100644 index 00000000000..97162528b35 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/CompilationException.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ConstructorFrameMap.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ConstructorFrameMap.class new file mode 100644 index 00000000000..89c9045b391 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ConstructorFrameMap.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/EnclosedValueDescriptor.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/EnclosedValueDescriptor.class new file mode 100644 index 00000000000..8f931dfc77c Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/EnclosedValueDescriptor.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$BlockStackElement.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$BlockStackElement.class new file mode 100644 index 00000000000..08e4aa12612 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$BlockStackElement.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$FinallyBlockStackElement.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$FinallyBlockStackElement.class new file mode 100644 index 00000000000..c4209cfdb6a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$FinallyBlockStackElement.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForInArrayLoopGenerator.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForInArrayLoopGenerator.class new file mode 100644 index 00000000000..e52d4997afe Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForInArrayLoopGenerator.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForInRangeLoopGenerator.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForInRangeLoopGenerator.class new file mode 100644 index 00000000000..e00afde0c44 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForInRangeLoopGenerator.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForLoopGenerator.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForLoopGenerator.class new file mode 100644 index 00000000000..a8f32686093 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$ForLoopGenerator.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$LoopBlockStackElement.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$LoopBlockStackElement.class new file mode 100644 index 00000000000..a3ba88a6f3f Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen$LoopBlockStackElement.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen.class new file mode 100644 index 00000000000..c9891202640 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ExpressionCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/FrameMap$Mark.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/FrameMap$Mark.class new file mode 100644 index 00000000000..be857021711 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/FrameMap$Mark.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/FrameMap.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/FrameMap.class new file mode 100644 index 00000000000..f3b38735cdc Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/FrameMap.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/FunctionCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/FunctionCodegen.class new file mode 100644 index 00000000000..dfd04cc9343 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/FunctionCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/GeneratedAnonymousClassDescriptor.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/GeneratedAnonymousClassDescriptor.class new file mode 100644 index 00000000000..e862746be8d Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/GeneratedAnonymousClassDescriptor.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/GeneratedClassLoader.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/GeneratedClassLoader.class new file mode 100644 index 00000000000..e3dcdc5d59c Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/GeneratedClassLoader.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/GenerationState$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/GenerationState$1.class new file mode 100644 index 00000000000..a8d1d33d812 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/GenerationState$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/GenerationState.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/GenerationState.class new file mode 100644 index 00000000000..f1208b72e0d Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/GenerationState.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$1.class new file mode 100644 index 00000000000..a5284769d98 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$2.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$2.class new file mode 100644 index 00000000000..d417e78d59e Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$2.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$3.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$3.class new file mode 100644 index 00000000000..1e175d07bfe Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$3.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$4.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$4.class new file mode 100644 index 00000000000..4db5449af66 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen$4.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen.class new file mode 100644 index 00000000000..fd6be53da76 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ImplementationBodyCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/JetMethodAnnotationWriter.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/JetMethodAnnotationWriter.class new file mode 100644 index 00000000000..8a65999a336 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/JetMethodAnnotationWriter.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/JetTypeMapper.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/JetTypeMapper.class new file mode 100644 index 00000000000..409d5c347e4 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/JetTypeMapper.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmClassSignature.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmClassSignature.class new file mode 100644 index 00000000000..6cbf01cc93e Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmClassSignature.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodParameterKind.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodParameterKind.class new file mode 100644 index 00000000000..48de7f91330 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodParameterKind.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodParameterSignature.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodParameterSignature.class new file mode 100644 index 00000000000..f34e5c538cb Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodParameterSignature.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodSignature.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodSignature.class new file mode 100644 index 00000000000..27418b07075 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmMethodSignature.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmPropertyAccessorSignature.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmPropertyAccessorSignature.class new file mode 100644 index 00000000000..b6d889a041a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/JvmPropertyAccessorSignature.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/NamespaceCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/NamespaceCodegen.class new file mode 100644 index 00000000000..cf3817fd457 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/NamespaceCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ObjectOrClosureCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ObjectOrClosureCodegen.class new file mode 100644 index 00000000000..ed8d8e94189 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ObjectOrClosureCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/OwnerKind$DelegateKind.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/OwnerKind$DelegateKind.class new file mode 100644 index 00000000000..2d08ccab0e1 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/OwnerKind$DelegateKind.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/OwnerKind.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/OwnerKind.class new file mode 100644 index 00000000000..c6cbd7dd067 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/OwnerKind.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/ProjectionErasingJetType.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/ProjectionErasingJetType.class new file mode 100644 index 00000000000..54b7dd71e27 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/ProjectionErasingJetType.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/PropertyCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/PropertyCodegen.class new file mode 100644 index 00000000000..8b64f49e696 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/PropertyCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$1.class new file mode 100644 index 00000000000..1f4dd0c4ff6 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ArrayElement.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ArrayElement.class new file mode 100644 index 00000000000..53a14b53e3b Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ArrayElement.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$CallReceiver.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$CallReceiver.class new file mode 100644 index 00000000000..1290ef0a7d0 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$CallReceiver.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$CollectionElement.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$CollectionElement.class new file mode 100644 index 00000000000..1123b0ddbed Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$CollectionElement.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Composed.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Composed.class new file mode 100644 index 00000000000..115738a0823 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Composed.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Constant.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Constant.class new file mode 100644 index 00000000000..4ca9d597a62 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Constant.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Expression.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Expression.class new file mode 100644 index 00000000000..cca98f6716c Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Expression.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Field.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Field.class new file mode 100644 index 00000000000..8d8badccab8 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Field.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$FieldForSharedVar.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$FieldForSharedVar.class new file mode 100644 index 00000000000..a2fcea04fa4 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$FieldForSharedVar.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Invert.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Invert.class new file mode 100644 index 00000000000..50007b9616d Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Invert.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Local.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Local.class new file mode 100644 index 00000000000..51910f49470 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Local.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$None.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$None.class new file mode 100644 index 00000000000..e9059be6fd5 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$None.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$NumberCompare.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$NumberCompare.class new file mode 100644 index 00000000000..2b50fcaac80 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$NumberCompare.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ObjectCompare.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ObjectCompare.class new file mode 100644 index 00000000000..e45ebf208f2 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ObjectCompare.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$OnStack.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$OnStack.class new file mode 100644 index 00000000000..c11c82cfd64 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$OnStack.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$PostIncrement.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$PostIncrement.class new file mode 100644 index 00000000000..147842073a5 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$PostIncrement.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$PreIncrement.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$PreIncrement.class new file mode 100644 index 00000000000..c4dcb59edc1 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$PreIncrement.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Property.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Property.class new file mode 100644 index 00000000000..6a15c1291e7 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Property.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Shared.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Shared.class new file mode 100644 index 00000000000..7709c8f6049 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$Shared.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ThisOuter.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ThisOuter.class new file mode 100644 index 00000000000..227e171e59d Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue$ThisOuter.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue.class new file mode 100644 index 00000000000..2632d755c27 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/StackValue.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/TraitImplBodyCodegen.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/TraitImplBodyCodegen.class new file mode 100644 index 00000000000..39eb270e9c3 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/TraitImplBodyCodegen.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayGet.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayGet.class new file mode 100644 index 00000000000..ac1fa95d0b8 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayGet.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayIndices.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayIndices.class new file mode 100644 index 00000000000..684cdf0f81a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayIndices.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayIterator.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayIterator.class new file mode 100644 index 00000000000..164a7869dc9 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArrayIterator.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArraySet.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArraySet.class new file mode 100644 index 00000000000..15d3b65fc2b Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArraySet.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArraySize.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArraySize.class new file mode 100644 index 00000000000..76ef3d685e4 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ArraySize.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/BinaryOp.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/BinaryOp.class new file mode 100644 index 00000000000..bff577c964f Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/BinaryOp.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/CompareTo.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/CompareTo.class new file mode 100644 index 00000000000..7754b121ef2 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/CompareTo.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Concat.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Concat.class new file mode 100644 index 00000000000..014278c2445 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Concat.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Equals.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Equals.class new file mode 100644 index 00000000000..ba6380f8dd2 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Equals.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Increment.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Increment.class new file mode 100644 index 00000000000..efa18ea69d5 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Increment.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethod.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethod.class new file mode 100644 index 00000000000..a9d78e4e913 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethod.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethods$1.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethods$1.class new file mode 100644 index 00000000000..64a90f04c0a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethods$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethods.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethods.class new file mode 100644 index 00000000000..24017ceda6b Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IntrinsicMethods.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Inv.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Inv.class new file mode 100644 index 00000000000..51d4122f139 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Inv.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IteratorIterator.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IteratorIterator.class new file mode 100644 index 00000000000..11234b9b4b3 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IteratorIterator.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IteratorNext.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IteratorNext.class new file mode 100644 index 00000000000..878868b861e Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/IteratorNext.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/NewArray.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/NewArray.class new file mode 100644 index 00000000000..d8f1bcc0a86 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/NewArray.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Not.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Not.class new file mode 100644 index 00000000000..5b41a2d0802 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Not.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/NumberCast.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/NumberCast.class new file mode 100644 index 00000000000..4e1309555d6 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/NumberCast.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/PsiMethodCall.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/PsiMethodCall.class new file mode 100644 index 00000000000..eb4099fba72 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/PsiMethodCall.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringGetChar.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringGetChar.class new file mode 100644 index 00000000000..ef1a9139a24 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringGetChar.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringLength.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringLength.class new file mode 100644 index 00000000000..a49b1c44cb9 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringLength.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringPlus.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringPlus.class new file mode 100644 index 00000000000..13f503b0bfd Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StringPlus.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StupidSync.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StupidSync.class new file mode 100644 index 00000000000..992ba825a8b Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/StupidSync.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Sure.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Sure.class new file mode 100644 index 00000000000..3dc467f47aa Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/Sure.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ToString.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ToString.class new file mode 100644 index 00000000000..0430945603a Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ToString.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/TypeInfo.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/TypeInfo.class new file mode 100644 index 00000000000..9b1a506a64e Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/TypeInfo.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UnaryMinus.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UnaryMinus.class new file mode 100644 index 00000000000..9543ed5ab28 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UnaryMinus.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UnaryPlus.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UnaryPlus.class new file mode 100644 index 00000000000..a5f9ee06fbc Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UnaryPlus.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UpTo.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UpTo.class new file mode 100644 index 00000000000..1521b36d069 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/UpTo.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ValueTypeInfo.class b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ValueTypeInfo.class new file mode 100644 index 00000000000..5be663d5aa2 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/codegen/intrinsics/ValueTypeInfo.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/compiler/FileNameTransformer$1.class b/k2js/out/production/backend/org/jetbrains/jet/compiler/FileNameTransformer$1.class new file mode 100644 index 00000000000..a1d34ffd059 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/compiler/FileNameTransformer$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/compiler/FileNameTransformer.class b/k2js/out/production/backend/org/jetbrains/jet/compiler/FileNameTransformer.class new file mode 100644 index 00000000000..dab3e838de5 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/compiler/FileNameTransformer.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$1.class b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$1.class new file mode 100644 index 00000000000..a09318caa44 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$1.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$2.class b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$2.class new file mode 100644 index 00000000000..26d78e33d85 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$2.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$3.class b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$3.class new file mode 100644 index 00000000000..e59569444a6 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$3.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$4.class b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$4.class new file mode 100644 index 00000000000..1551d73a3a8 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager$4.class differ diff --git a/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager.class b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager.class new file mode 100644 index 00000000000..b7bd2014272 Binary files /dev/null and b/k2js/out/production/backend/org/jetbrains/jet/compiler/TipsManager.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler$1.class b/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler$1.class new file mode 100644 index 00000000000..27e5e8b9933 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler$1.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler$Arguments.class b/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler$Arguments.class new file mode 100644 index 00000000000..a7337dd9971 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler$Arguments.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler.class b/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler.class new file mode 100644 index 00000000000..6798b5cee59 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/cli/KotlinCompiler.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment$1.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment$1.class new file mode 100644 index 00000000000..61d853adba8 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment$1.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment$2.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment$2.class new file mode 100644 index 00000000000..08e182d60bc Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment$2.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment.class new file mode 100644 index 00000000000..52f0f6d62f1 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironment.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironmentException.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironmentException.class new file mode 100644 index 00000000000..8613d75370c Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileEnvironmentException.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileSession.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileSession.class new file mode 100644 index 00000000000..5d0415b21c8 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/CompileSession.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/ErrorCollector.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/ErrorCollector.class new file mode 100644 index 00000000000..4a93aed6472 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/ErrorCollector.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/JetCoreEnvironment.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/JetCoreEnvironment.class new file mode 100644 index 00000000000..a77d77740f6 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/JetCoreEnvironment.class differ diff --git a/k2js/out/production/cli/org/jetbrains/jet/compiler/ModuleExecutionException.class b/k2js/out/production/cli/org/jetbrains/jet/compiler/ModuleExecutionException.class new file mode 100644 index 00000000000..607576d88b7 Binary files /dev/null and b/k2js/out/production/cli/org/jetbrains/jet/compiler/ModuleExecutionException.class differ diff --git a/k2js/out/production/examplesForWebDemo/html5/creatures/kotlinlogo.png b/k2js/out/production/examplesForWebDemo/html5/creatures/kotlinlogo.png new file mode 100644 index 00000000000..5394223b3d6 Binary files /dev/null and b/k2js/out/production/examplesForWebDemo/html5/creatures/kotlinlogo.png differ diff --git a/k2js/out/production/examplesForWebDemo/html5/creatures/main.kt b/k2js/out/production/examplesForWebDemo/html5/creatures/main.kt new file mode 100644 index 00000000000..46e0d92b8c2 --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/creatures/main.kt @@ -0,0 +1,331 @@ +/* +In this example strange creatures are watching the kotlin logo. You can drag'n'drop them as well as the logo. +Doubleclick to add more creatures but be careful. They may be watching you! +*/ +package creatures +// importing some of the API defined +import jquery.* +import html5.* +import java.util.ArrayList +import js.* +import js.Math +import js.setInterval +import html5.getCanvas +import html5.getKotlinLogo +import jquery.jq +import js.setTimeout +import java.util.List + + +abstract class Shape() { + + abstract fun draw(state : CanvasState) + // these two abstract methods defines that our shapes can be dragged + abstract fun contains(mousePos : Vector) : Boolean + abstract var pos : Vector + + var selected : Boolean = false + + // a couple of helper extension methods we'll be using in the derived classes + fun Context.shadowed(shadowOffset : Vector, alpha : Double, render : Context.() -> Unit) { + save() + shadowColor = "rgba(100, 100, 100, $alpha)" + shadowBlur = 5.0 + shadowOffsetX = shadowOffset.x + shadowOffsetY = shadowOffset.y + render() + restore() + } + + fun Context.fillPath(constructPath : Context.() -> Unit) { + beginPath() + constructPath() + closePath() + fill() + } +} + +val Kotlin = Logo(v(300.0, 100.0)) + +class Logo(override var pos : Vector) : Shape() +{ + val relSize : Double = 0.25 + val shadowOffset = v(-3.0, 3.0) + val imageSize = v(377.0, 393.0) + var size : Vector = imageSize * relSize + // get-only properties like this saves you lots of typing and are very expressive + val position : Vector + get() = if (selected) pos - shadowOffset else pos + + + fun drawLogo(state : CanvasState) { + size = imageSize * (state.size.x / imageSize.x) * relSize + // getKotlinLogo() is a 'magic' function here defined only for purposes of demonstration but in fact it just find an element containing the logo + state.context.drawImage(getKotlinLogo(), 0.0, 0.0, imageSize.x, imageSize.y, position.x, position.y, size.x, size.y) + } + + override fun draw(state : CanvasState) { + val context = state.context + if (selected) { + // using helper we defined in Shape class + context.shadowed(shadowOffset, 0.2) { + drawLogo(state) + } + } else { + drawLogo(state) + } + } + + override fun contains(mousePos: Vector): Boolean = mousePos.isInRect(pos, size) + + val centre : Vector + get() = pos + size * 0.5 +} + +val gradientGenerator = RadialGradientGenerator(getContext()) + +class Creature(override var pos : Vector, val state : CanvasState) : Shape() { + + val shadowOffset = v(-5.0, 5.0) + val colorStops = gradientGenerator.getNext() + val relSize = 0.05 + // these properties have no backing fields and in java/javascript they could be represented as little helper functions + val radius : Double + get() = state.width * relSize + val position : Vector + get() = if (selected) pos - shadowOffset else pos + val directionToLogo : Vector + get() = (Kotlin.centre - position).normalized + + //notice how the infix call can make some expressions extremely expressive + override fun contains(mousePos : Vector) = pos distanceTo mousePos < radius + + // defining more nice extension functions + fun Context.circlePath(position : Vector, rad : Double) { + arc(position.x, position.y, rad, 0.0, 2 * Math.PI, false) + } + + //notice we can use an extension function we just defined inside another extension function + fun Context.fillCircle(position : Vector, rad : Double) { + fillPath { + circlePath(position, rad) + } + } + + override fun draw(state : CanvasState) { + val context = state.context + if (!selected) { + drawCreature(context) + } else { + drawCreatureWithShadow(context) + } + } + + fun drawCreature(context : Context) { + context.fillStyle = getGradient(context) + context.fillPath { + tailPath(context) + circlePath(position, radius) + } + drawEye(context) + } + + fun getGradient(context : Context) : CanvasGradient { + val gradientCentre = position + directionToLogo * (radius / 4) + val gradient = context.createRadialGradient(gradientCentre.x, gradientCentre.y, 1.0, gradientCentre.x, gradientCentre.y, 2 * radius) + for (colorStop in colorStops) { + gradient.addColorStop(colorStop._1, colorStop._2) + } + return gradient + } + + fun tailPath(context : Context) { + val tailDirection = -directionToLogo + val tailPos = position + tailDirection * radius * 1.0 + val tailSize = radius * 1.6 + val angle = Math.PI / 6.0 + val p1 = tailPos + tailDirection.rotatedBy(angle) * tailSize + val p2 = tailPos + tailDirection.rotatedBy(-angle) * tailSize + val middlePoint = position + tailDirection * radius * 1.0 + context.moveTo(tailPos.x, tailPos.y) + context.lineTo(p1.x, p1.y) + context.quadraticCurveTo(middlePoint.x, middlePoint.y, p2.x, p2.y) + context.lineTo(tailPos.x, tailPos.y) + } + + fun drawEye(context : Context) { + val eyePos = directionToLogo * radius * 0.6 + position + val eyeRadius = radius / 3 + val eyeLidRadius = eyeRadius / 2 + context.fillStyle = "#FFFFFF" + context.fillCircle(eyePos, eyeRadius) + context.fillStyle = "#000000" + context.fillCircle(eyePos, eyeLidRadius) + } + + fun drawCreatureWithShadow(context : Context) { + context.shadowed(shadowOffset, 0.7) { + context.fillStyle = getGradient(context) + fillPath { + tailPath(context) + context.circlePath(position, radius) + } + } + drawEye(context) + } +} + +class CanvasState(val canvas : Canvas) { + var width = canvas.width + var height = canvas.height + val size : Vector + get() = v(width, height) + val context = getContext() + var valid = false + var shapes = ArrayList() + var selection : Shape? = null + var dragOff = Vector() + val interval = 1000 / 30 + + { + jq(canvas).mousedown { + valid = false + selection = null + val mousePos = mousePos(it) + for (shape in shapes) { + if (mousePos in shape) { + dragOff = mousePos - shape.pos + shape.selected = true + selection = shape + break + } + } + } + + jq(canvas).mousemove { + if (selection != null) { + selection.sure().pos = mousePos(it) - dragOff + valid = false + } + } + + jq(canvas).mouseup { + if (selection != null) { + selection.sure().selected = false + } + selection = null + valid = false + } + + jq(canvas).dblclick { + val newCreature = Creature(mousePos(it), this @CanvasState) + addShape(newCreature) + valid = false + } + + setInterval({ + draw() + }, interval) + } + + fun mousePos(e : MouseEvent) : Vector { + var offset = Vector() + var element : DomElement? = canvas + while (element != null) { + val el : DomElement = element.sure() + offset += Vector(el.offsetLeft, el.offsetTop) + element = el.offsetParent + } + return Vector(e.pageX, e.pageY) - offset + } + + fun addShape(shape : Shape) { + shapes.add(shape) + valid = false + } + + fun clear() { + context.fillStyle = "#FFFFFF" + context.fillRect(0.0, 0.0, width, height) + context.strokeStyle = "#000000" + context.lineWidth = 4.0 + context.strokeRect(0.0, 0.0, width, height) + } + + fun draw() { + if (valid) return + + clear() + for (shape in shapes.reversed()) { + shape.draw(this) + } + Kotlin.draw(this) + valid = true + } +} + +class RadialGradientGenerator(val context : Context) { + val gradients = ArrayList>() + var current = 0 + + fun newColorStops(vararg colorStops : #(Double, String)) { + gradients.add(colorStops) + } + + { + newColorStops(#(0.0, "#F59898"), #(0.5, "#F57373"), #(1.0, "#DB6B6B")) + newColorStops(#(0.39, "rgb(140,167,209)"), #(0.7, "rgb(104,139,209)"), #(0.85, "rgb(67,122,217)")) + newColorStops(#(0.0, "rgb(255,222,255)"), #(0.5, "rgb(255,185,222)"), #(1.0, "rgb(230,154,185)")) + newColorStops(#(0.0, "rgb(255,209,114)"), #(0.5, "rgb(255,174,81)"), #(1.0, "rgb(241,145,54)")) + newColorStops(#(0.0, "rgb(132,240,135)"), #(0.5, "rgb(91,240,96)"), #(1.0, "rgb(27,245,41)")) + newColorStops(#(0.0, "rgb(250,147,250)"), #(0.5, "rgb(255,80,255)"), #(1.0, "rgb(250,0,217)")) + } + + fun getNext() : Array<#(Double, String)> { + val result = gradients.get(current) + current = (current + 1) % gradients.size() + return result + } +} + +fun v(x : Double, y : Double) = Vector(x, y) + +class Vector(val x : Double = 0.0, val y : Double = 0.0) { + fun plus(v : Vector) = v(x + v.x, y + v.y) + fun minus() = v(-x, -y) + fun minus(v : Vector) = v(x - v.x, y - v.y) + fun times(koef : Double) = v(x * koef, y * koef) + fun distanceTo(v : Vector) = Math.sqrt((this - v).sqr) + fun rotatedBy(theta : Double) : Vector { + val sin = Math.sin(theta) + val cos = Math.cos(theta) + return v(x * cos - y * sin, x * sin + y * cos) + } + + fun isInRect(topLeft : Vector, size : Vector) = (x >= topLeft.x) && (x <= topLeft.x + size.x) && + (y >= topLeft.y) && (y <= topLeft.y + size.y) + + val sqr : Double + get() = x * x + y * y + val normalized : Vector + get() = this * (1.0 / Math.sqrt(sqr)) +} + +fun main() { + val state = CanvasState(getCanvas()) + state.addShape(Kotlin) + state.addShape(Creature(state.size * 0.25, state)) + state.addShape(Creature(state.size * 0.75, state)) + setTimeout({ + state.valid = false + }) +} + +fun List.reversed() : List { + val result = ArrayList() + var i = size() + while (i > 0) { + result.add(get(--i)) + } + return result +} \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/creatures/template.html b/k2js/out/production/examplesForWebDemo/html5/creatures/template.html new file mode 100644 index 00000000000..466bfa8168f --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/creatures/template.html @@ -0,0 +1,32 @@ + + + + + + Canvas demo + + + + + + + + + + + \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/fancyLines/template.html b/k2js/out/production/examplesForWebDemo/html5/fancyLines/template.html new file mode 100644 index 00000000000..64a717ea926 --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/fancyLines/template.html @@ -0,0 +1,30 @@ + + + + + + Canvas demo + + + + + + + + + \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/fancyLines/test.kt b/k2js/out/production/examplesForWebDemo/html5/fancyLines/test.kt new file mode 100644 index 00000000000..892bc4695cc --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/fancyLines/test.kt @@ -0,0 +1,64 @@ +/* +This example is based on example from html5 canvas2D docs: + http://www.w3.org/TR/2dcontext/ +Note that only a subset of the api is supported for now. +*/ + +package fancylines + +import js.*; +import html5.*; +import jquery.*; + +fun main() { + //jq is a name for JQuery function + jq { + FancyLines().run(); + } +} + +class FancyLines() { + // we use two 'magic' functions here getContext() and getCanvas() + val context = getContext(); + val height = getCanvas().height; + val width = getCanvas().width; + var x = width * Math.random(); + var y = height * Math.random(); + var hue = 0; + + fun line() { + context.save(); + + context.beginPath(); + + context.lineWidth = 20.0 * Math.random(); + context.moveTo(x, y); + + x = width * Math.random(); + y = height * Math.random(); + + context.bezierCurveTo(width * Math.random(), height * Math.random(), + width * Math.random(), height * Math.random(), x, y); + + hue += Math.random() * 10; + + context.strokeStyle = "hsl($hue, 50%, 50%)"; + + context.shadowColor = "white"; + context.shadowBlur = 10.0; + + context.stroke(); + + context.restore(); + } + + fun blank() { + context.fillStyle = "rgba(255,255,1,0.1)"; + context.fillRect(0.0, 0.0, width, height); + } + + fun run() { + setInterval({line()}, 40); + setInterval({blank()}, 100); + } +} \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/floatingText/template.html b/k2js/out/production/examplesForWebDemo/html5/floatingText/template.html new file mode 100644 index 00000000000..557ab5c8b6f --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/floatingText/template.html @@ -0,0 +1,30 @@ + + + + + + Canvas demo + + + + + + + + + \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/floatingText/test.kt b/k2js/out/production/examplesForWebDemo/html5/floatingText/test.kt new file mode 100644 index 00000000000..e5bca3ea4d9 --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/floatingText/test.kt @@ -0,0 +1,91 @@ +/* + This example is just simple text floating around. If u are using chrome, there is a bug that spoil the visuals. +*/ +package hello + +import js.* +import html5.* +import jquery.* + +val context = getContext() +val height = getCanvas().height +val width = getCanvas().width + +// class representing a floating text +class HelloKotlin() { + var relX = 0.2 + 0.2 * Math.random() + var relY = 0.4 + 0.2 * Math.random() + + val absX : Double + get() = (relX * width) + val absY : Double + get() = (relY * height) + + var relXVelocity = randomVelocity() + var relYVelocity = randomVelocity() + + + val message = "Hello, Kotlin!" + val textHeightInPixels = 60 + { + context.font = "bold ${textHeightInPixels}px Georgia, serif" + } + val textWidthInPixels = context.measureText(message).width + + fun draw() { + context.save() + move() + // if you using chrome chances are good you wont see the shadow + context.shadowColor = "#000000" + context.shadowBlur = 5.0 + context.shadowOffsetX = -4.0 + context.shadowOffsetY = 4.0 + context.fillStyle = "rgb(242,160,110)" + context.fillText(message, absX, absY) + context.restore() + } + + fun move() { + val relTextWidth = textWidthInPixels / width + if (relX > (1.0 - relTextWidth - relXVelocity.abs) || relX < relXVelocity.abs) { + relXVelocity *= -1 + } + val relTextHeight = textHeightInPixels / height + if (relY > (1.0 - relYVelocity.abs) || relY < relYVelocity.abs + relTextHeight) { + relYVelocity *= -1 + } + relX += relXVelocity + relY += relYVelocity + } + + fun randomVelocity() = 0.03 * Math.random() * (if (Math.random() < 0.5) 1 else -1) + + + val Double.abs : Double + get() = if (this > 0) this else -this +} + +fun renderBackground() { + context.save() + context.fillStyle = "#5C7EED" + context.fillRect(0.0, 0.0, width, height) + context.restore() +} + +fun main() { + val interval = 50 + // we pass a literal that constructs a new HelloKotlin object + val logos = Array(3) { + HelloKotlin() + } + jq { + setInterval({ + renderBackground() + for (logo in logos) { + logo.draw() + } + }, interval) + } +} + + diff --git a/k2js/out/production/examplesForWebDemo/html5/interactive/jbLogo.png b/k2js/out/production/examplesForWebDemo/html5/interactive/jbLogo.png new file mode 100644 index 00000000000..759aa8ae05a Binary files /dev/null and b/k2js/out/production/examplesForWebDemo/html5/interactive/jbLogo.png differ diff --git a/k2js/out/production/examplesForWebDemo/html5/interactive/main.kt b/k2js/out/production/examplesForWebDemo/html5/interactive/main.kt new file mode 100644 index 00000000000..86eb1c1fdfc --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/interactive/main.kt @@ -0,0 +1,183 @@ +package interactive; + +import jquery.*; +import html5.*; +import java.util.ArrayList; +import js.*; +import js.Math; +import js.setInterval +import html5.getCanvas +import html5.getKotlinLogo +import jquery.jq +import js.setTimeout + +val state = CanvasState(getCanvas()); + +fun doWithPeriod(period : Int, f : ()->Unit) { + setInterval(f, period); +} + +abstract class Shape() { + abstract fun draw(state : CanvasState); + abstract fun contains(mousePos : Vector) : Boolean; + abstract var pos : Vector; + var selected : Boolean = false; +} + +class Circle(override var pos : Vector, + var radius : Double = 1.0, + var fillColor : String = "#AAAAAA") : Shape() { + + override fun draw(state : CanvasState) { + val context = state.context; + context.shadowColor = "white"; + context.shadowBlur = 10.0; + context.fillStyle = fillColor; + context.beginPath(); + context.arc(pos.x, pos.y, radius, 0.0, 2 * Math.PI, false); + context.closePath(); + context.fill(); + } + + override fun contains(mousePos : Vector) = pos.distanceTo(mousePos) < radius; +} + +class Rectangle(override var pos : Vector, + var size : Vector) : Shape() +{ + override fun draw(state : CanvasState) { + val context = state.context; + context.fillStyle = "rgba(0,255,0,.6)"; + context.fillRect(pos.x, pos.y, size.x, size.y); + if (selected) { + context.strokeStyle = "#FF0000" + context.lineWidth = 2.0; + context.strokeRect(pos.x, pos.y, size.x, size.y) + } + } + + override fun contains(mousePos : Vector) = mousePos.isInRect(pos, size); +} + +class JB(override var pos : Vector, + var relSize : Double = 0.3) : Shape() +{ + + val imageSize = v(704.0, 254.0) + val canvasSize = imageSize * relSize + + override fun draw(state : CanvasState) { + val context = state.context; + context.drawImage(getKotlinLogo(), 0.0, 0.0, imageSize.x, imageSize.y, pos.x, pos.y, canvasSize.x, canvasSize.y) + } + + override fun contains(mousePos: Vector): Boolean = mousePos.isInRect(pos, canvasSize) +} + +class CanvasState(val canvas : Canvas) { + val width = canvas.width; + val height = canvas.height; + val context = getContext(); + var valid = false; + var shapes = ArrayList(); + var selection : Shape? = null; + var dragOff = Vector(); + val interval = 1000 / 30; + val size = 20.0; + + { + jq(canvas).mousedown { + valid = false; + selection = null; + val mousePos = mousePos(it); + for (shape in shapes) { + if (mousePos in shape) { + dragOff = mousePos - shape.pos; + shape.selected = true; + selection = shape; + break; + } + } + } + + jq(canvas).mousemove { + if (selection != null) { + selection.sure().pos = mousePos(it) - dragOff; + valid = false; + } + } + + jq(canvas).mouseup { + if (selection != null) { + selection.sure().selected = false; + } + selection = null; + valid = false; + } + + jq(canvas).dblclick { + val redTransparentCircle = Circle(mousePos(it), size, "rgba(200, 100, 100, 0.3)"); + addShape(redTransparentCircle); + valid = false; + } + + doWithPeriod(interval) { + draw(); + } + } + + fun mousePos(e : MouseEvent) : Vector { + var offset = Vector(); + var element : DomElement? = canvas; + while (element != null) { + val el : DomElement = element.sure(); + offset += Vector(el.offsetLeft, el.offsetTop); + element = el.offsetParent; + } + return Vector(e.pageX, e.pageY) - offset; + } + + fun addShape(shape : Shape) { + shapes.add(shape); + valid = false; + } + + fun clear() { + context.fillStyle = "#FFFFFF" + context.fillRect(0.0, 0.0, width, height) + context.strokeStyle = "#000000" + context.lineWidth = 4.0; + context.strokeRect(0.0, 0.0, width, height) + } + + fun draw() { + if (valid) return + + clear(); + for (shape in shapes) { + shape.draw(this); + } + valid = true; + } +} + +fun v(x : Double, y : Double) = Vector(x, y); + +class Vector(var x : Double = 0.0, var y : Double = 0.0) { + fun plus(v : Vector) = v(x + v.x, y + v.y); + fun minus(v : Vector) = v(x - v.x, y - v.y); + fun times(coef : Double) = v(x * coef, y * coef); + fun distanceTo(v : Vector) = Math.sqrt((this - v).sqr); + fun isInRect(topLeft : Vector, size : Vector) = (x >= topLeft.x) && (x <= topLeft.x + size.x) && + (y >= topLeft.y) && (y <= topLeft.y + size.y) + val sqr : Double + get() = x * x + y * y; +} + +fun main() { + val state = CanvasState(getCanvas()); + state.addShape(JB(v(1.0, 1.0))); + setTimeout({ + state.valid = false + }) +} \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/interactive/template.html b/k2js/out/production/examplesForWebDemo/html5/interactive/template.html new file mode 100644 index 00000000000..d976e3dafc2 --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/interactive/template.html @@ -0,0 +1,31 @@ + + + + + + Canvas demo + + + + + + + + + + \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/interactive/template_copy.html b/k2js/out/production/examplesForWebDemo/html5/interactive/template_copy.html new file mode 100644 index 00000000000..d3319ca6c00 --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/interactive/template_copy.html @@ -0,0 +1,30 @@ + + + + + + Canvas demo + + + + + + + + + \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/interactive2/jbLogo.png b/k2js/out/production/examplesForWebDemo/html5/interactive2/jbLogo.png new file mode 100644 index 00000000000..759aa8ae05a Binary files /dev/null and b/k2js/out/production/examplesForWebDemo/html5/interactive2/jbLogo.png differ diff --git a/k2js/out/production/examplesForWebDemo/html5/interactive2/main.kt b/k2js/out/production/examplesForWebDemo/html5/interactive2/main.kt new file mode 100644 index 00000000000..e4bacc02865 --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/interactive2/main.kt @@ -0,0 +1,280 @@ +package interactive2; + +import jquery.*; +import html5.*; +import java.util.ArrayList; +import js.*; +import js.Math; +import js.setInterval +import html5.getCanvas +import html5.getKotlinLogo +import jquery.jq +import js.setTimeout + +val gradientGenerator = RadialGradientGenerator(getContext()) +val JB = Logo(v(20.0, 20.0)) + +fun doWithPeriod(period : Int, f : ()->Unit) { + setInterval(f, period); +} + +abstract class Shape() { + abstract fun draw(state : CanvasState); + abstract fun contains(mousePos : Vector) : Boolean; + abstract var pos : Vector; + var selected : Boolean = false; +} + +class Logo(override var pos : Vector, + var relSize : Double = 0.3) + : Shape() +{ + val imageSize = v(704.0, 254.0) + val canvasSize = imageSize * relSize + + override fun draw(state : CanvasState) { + val context = state.context; + context.drawImage(getKotlinLogo(), 0.0, 0.0, imageSize.x, imageSize.y, pos.x, pos.y, canvasSize.x, canvasSize.y) + } + + override fun contains(mousePos: Vector): Boolean = mousePos.isInRect(pos, canvasSize) + + val centre : Vector + get() = pos + canvasSize * 0.5 +} + +class Creature(override var pos : Vector, + var state : CanvasState) : Shape() { + + val shadowOffset = v(-5.0, 5.0) + val colorStops = gradientGenerator.getNext() + val relSize = 0.05; + val radius : Double + get() = state.width * relSize; + + val position : Vector + get() = if (selected) pos - shadowOffset else pos + + val directionToLogo : Vector + get() = (JB.centre - position).normalized + + override fun contains(mousePos : Vector) = pos.distanceTo(mousePos) < radius; + + fun Context.fillCircle(position : Vector, rad : Double) { + beginPath(); + arc(position.x, position.y, rad, 0.0, 2 * Math.PI, false); + closePath(); + fill() + } + + override fun draw(state : CanvasState) { + val context = state.context; + if (!selected) { + drawCreature(context) + } else { + drawCreatureWithShadow(context) + } + } + + fun drawCreature(context : Context) { + context.fillStyle = getGradient(context); + context.fillCircle(position, radius) + drawEye(context) + drawTail(context) + } + + fun getGradient(context : Context) : CanvasGradient { + val gradientCentre = position + directionToLogo * (radius / 4) + val gradient = context.createRadialGradient(gradientCentre.x, gradientCentre.y, 1.0, gradientCentre.x, gradientCentre.y, 2 * radius) + for (colorStop in colorStops) { + gradient.addColorStop(colorStop._1, colorStop._2) + } + return gradient; + } + + fun drawTail(context : Context) { + val tailDirection = -directionToLogo; + val tailPos = position + tailDirection * radius * 0.7 + val tailSize = radius * 1.6 + val angle = Math.PI / 6.0; + val p1 = tailPos + tailDirection.rotatedBy(angle) * tailSize + val p2 = tailPos + tailDirection.rotatedBy(-angle) * tailSize + context.fillStyle = getGradient(context) + context.beginPath() + context.moveTo(tailPos.x, tailPos.y) + context.lineTo(p1.x, p1.y) + val middlePoint = position + tailDirection * radius * 1.0 + context.quadraticCurveTo(middlePoint.x, middlePoint.y, p2.x, p2.y) + context.lineTo(tailPos.x, tailPos.y) + context.closePath() + context.fill() + } + + fun drawEye(context : Context) {; + val eyePos = directionToLogo * radius * 0.6 + position; + val eyeRadius = radius / 3; + val eyeLidRadius = eyeRadius / 2; + context.fillStyle = "#FFFFFF"; + context.fillCircle(eyePos, eyeRadius) + context.fillStyle = "#000000" + context.fillCircle(eyePos, eyeLidRadius) + } + + fun drawCreatureWithShadow(context : Context) { + context.save() + setShadow(context) + context.fillStyle = getGradient(context) + context.fillCircle(position, radius) + context.restore(); + drawEye(context) + drawTail(context) + } + + fun setShadow(context : Context) { + context.shadowColor = "rgba(100, 100, 100, 0.7)"; + context.shadowBlur = 5.0; + context.shadowOffsetX = shadowOffset.x; + context.shadowOffsetY = shadowOffset.y; + } +} + +class CanvasState(val canvas : Canvas) { + val width = canvas.width; + val height = canvas.height; + val context = getContext(); + var valid = false; + var shapes = ArrayList(); + var selection : Shape? = null; + var dragOff = Vector(); + val interval = 1000 / 30; + + { + jq(canvas).mousedown { + valid = false; + selection = null; + val mousePos = mousePos(it); + for (shape in shapes) { + if (mousePos in shape) { + dragOff = mousePos - shape.pos; + shape.selected = true; + selection = shape; + break; + } + } + } + + jq(canvas).mousemove { + if (selection != null) { + selection.sure().pos = mousePos(it) - dragOff; + valid = false; + } + } + + jq(canvas).mouseup { + if (selection != null) { + selection.sure().selected = false; + } + selection = null; + valid = false; + } + + jq(canvas).dblclick { + val redTransparentCircle = Creature(mousePos(it), this @CanvasState); + addShape(redTransparentCircle); + valid = false; + } + + doWithPeriod(interval) { + draw(); + } + } + + fun mousePos(e : MouseEvent) : Vector { + var offset = Vector(); + var element : DomElement? = canvas; + while (element != null) { + val el : DomElement = element.sure(); + offset += Vector(el.offsetLeft, el.offsetTop); + element = el.offsetParent; + } + return Vector(e.pageX, e.pageY) - offset; + } + + fun addShape(shape : Shape) { + shapes.add(shape); + valid = false; + } + + fun clear() { + context.fillStyle = "#FFFFFF" + context.fillRect(0.0, 0.0, width, height) + context.strokeStyle = "#000000" + context.lineWidth = 4.0; + context.strokeRect(0.0, 0.0, width, height) + } + + fun draw() { + if (valid) return + + clear(); + for (shape in shapes) { + shape.draw(this); + } + valid = true; + } +} + +class RadialGradientGenerator(val context : Context) { + val gradients = ArrayList>(); + var current = 0 + + fun newColorStops(vararg colorStops : #(Double, String)) { + gradients.add(colorStops) + } + + { + newColorStops(#(0.0, "#F59898"), #(0.5, "#F57373"), #(1.0, "#DB6B6B")) + newColorStops(#(0.39, "rgb(140,167,209)"), #(0.7, "rgb(104,139,209)"), #(0.85, "rgb(67,122,217)")) + newColorStops(#(0.0, "rgb(255,222,255)"), #(0.5, "rgb(255,185,222)"), #(1.0, "rgb(230,154,185)")) + newColorStops(#(0.0, "rgb(255,209,114)"), #(0.5, "rgb(255,174,81)"), #(1.0, "rgb(241,145,54)")) + newColorStops(#(0.0, "rgb(132,240,135)"), #(0.5, "rgb(91,240,96)"), #(1.0, "rgb(27,245,41)")) + newColorStops(#(0.0, "rgb(250,147,250)"), #(0.5, "rgb(255,80,255)"), #(1.0, "rgb(250,0,217)")) +} + + fun getNext() : Array<#(Double, String)> { + val result = gradients.get(current) + current = (current + 1) % gradients.size() + return result + } +} + +fun v(x : Double, y : Double) = Vector(x, y); + +class Vector(val x : Double = 0.0, val y : Double = 0.0) { + fun plus(v : Vector) = v(x + v.x, y + v.y); + fun minus() = v(-x, -y) + fun minus(v : Vector) = v(x - v.x, y - v.y) + fun times(coef : Double) = v(x * coef, y * coef) + fun distanceTo(v : Vector) = Math.sqrt((this - v).sqr) + fun rotatedBy(theta : Double) : Vector { + val sin = Math.sin(theta) + val cos = Math.cos(theta) + return v(x * cos - y * sin, x * sin + y * cos) + } + + fun isInRect(topLeft : Vector, size : Vector) = (x >= topLeft.x) && (x <= topLeft.x + size.x) && + (y >= topLeft.y) && (y <= topLeft.y + size.y) + + val sqr : Double + get() = x * x + y * y + val normalized : Vector + get() = this * (1.0 / Math.sqrt(sqr)) +} + +fun main() { + val state = CanvasState(getCanvas()); + state.addShape(JB); + setTimeout({ + state.valid = false + }) +} \ No newline at end of file diff --git a/k2js/out/production/examplesForWebDemo/html5/interactive2/template.html b/k2js/out/production/examplesForWebDemo/html5/interactive2/template.html new file mode 100644 index 00000000000..f7399d7ee00 --- /dev/null +++ b/k2js/out/production/examplesForWebDemo/html5/interactive2/template.html @@ -0,0 +1,31 @@ + + + + + + Canvas demo + + + + + + + + + + \ No newline at end of file diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$1.class new file mode 100644 index 00000000000..105fe787b6c Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$2.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$2.class new file mode 100644 index 00000000000..c7c92880287 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$2.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$3.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$3.class new file mode 100644 index 00000000000..dbb559e9a16 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade$3.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade.class new file mode 100644 index 00000000000..c0612986958 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/AnalyzerFacade.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaBridgeConfiguration.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaBridgeConfiguration.class new file mode 100644 index 00000000000..ad0d1b9bd4b Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaBridgeConfiguration.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaClassMembersScope.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaClassMembersScope.class new file mode 100644 index 00000000000..f2fe26edc0c Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaClassMembersScope.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.class new file mode 100644 index 00000000000..b53e735db73 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$1.class new file mode 100644 index 00000000000..005b926c46d Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$1GroupingValue.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$1GroupingValue.class new file mode 100644 index 00000000000..3b3526f66f0 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$1GroupingValue.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$2.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$2.class new file mode 100644 index 00000000000..2d958903ae0 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$2.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$3.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$3.class new file mode 100644 index 00000000000..cf66beeb7f9 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$3.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$4$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$4$1.class new file mode 100644 index 00000000000..7b2a6e148be Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$4$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$4.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$4.class new file mode 100644 index 00000000000..c45e2795e42 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$4.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5$1.class new file mode 100644 index 00000000000..b18cb919a88 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5$2.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5$2.class new file mode 100644 index 00000000000..5d12124d7c1 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5$2.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5.class new file mode 100644 index 00000000000..a132b9ac63b Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$5.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$6.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$6.class new file mode 100644 index 00000000000..b2158308f92 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$6.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$7$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$7$1.class new file mode 100644 index 00000000000..962189cc166 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$7$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$7.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$7.class new file mode 100644 index 00000000000..2cc4b84cc9b Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$7.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor$1.class new file mode 100644 index 00000000000..5c1f71999e4 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor$2.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor$2.class new file mode 100644 index 00000000000..cca86d5fcbb Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor$2.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor.class new file mode 100644 index 00000000000..cc10ba7f643 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JetSignatureTypeParameterVisitor.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JvmMethodParameterKind.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JvmMethodParameterKind.class new file mode 100644 index 00000000000..a0372e84b84 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JvmMethodParameterKind.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JvmMethodParameterMeaning.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JvmMethodParameterMeaning.class new file mode 100644 index 00000000000..90abdef0a39 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$JvmMethodParameterMeaning.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverBinaryClassData.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverBinaryClassData.class new file mode 100644 index 00000000000..b69dfdedbb0 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverBinaryClassData.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverClassData.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverClassData.class new file mode 100644 index 00000000000..d6533391ea5 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverClassData.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverNamespaceData.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverNamespaceData.class new file mode 100644 index 00000000000..86ee3453747 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverNamespaceData.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverScopeData.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverScopeData.class new file mode 100644 index 00000000000..bb7ed66bb09 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverScopeData.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverSrcClassData.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverSrcClassData.class new file mode 100644 index 00000000000..77548e3565c Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ResolverSrcClassData.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$TypeParameterDescriptorInitialization.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$TypeParameterDescriptorInitialization.class new file mode 100644 index 00000000000..e03400b06d5 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$TypeParameterDescriptorInitialization.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$TypeParameterDescriptorOrigin.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$TypeParameterDescriptorOrigin.class new file mode 100644 index 00000000000..ead9200bdcc Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$TypeParameterDescriptorOrigin.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ValueParameterDescriptors.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ValueParameterDescriptors.class new file mode 100644 index 00000000000..1456e888b71 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver$ValueParameterDescriptors.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.class new file mode 100644 index 00000000000..1f97e7f1606 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper$1.class new file mode 100644 index 00000000000..0daec696c8e Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper$Builder.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper$Builder.class new file mode 100644 index 00000000000..f859c1b762f Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper$Builder.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper.class new file mode 100644 index 00000000000..c95ebb3b616 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolverHelper.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaNamespaceDescriptor.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaNamespaceDescriptor.class new file mode 100644 index 00000000000..aa3a91a44b2 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaNamespaceDescriptor.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.class new file mode 100644 index 00000000000..2c46decd378 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaSemanticServices.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaSemanticServices.class new file mode 100644 index 00000000000..04390c35eed Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaSemanticServices.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$1.class new file mode 100644 index 00000000000..138b4c9917f Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$2.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$2.class new file mode 100644 index 00000000000..94b85103e24 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$2.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$3.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$3.class new file mode 100644 index 00000000000..4c3be1e48bc Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer$3.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer.class new file mode 100644 index 00000000000..9dd87cd8c85 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JavaTypeTransformer.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetJavaMirrorMarker.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetJavaMirrorMarker.class new file mode 100644 index 00000000000..dd04962f535 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetJavaMirrorMarker.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetSignatureUtils.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetSignatureUtils.class new file mode 100644 index 00000000000..0f96197eee7 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetSignatureUtils.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$1.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$1.class new file mode 100644 index 00000000000..deae9e68143 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$1.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$2.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$2.class new file mode 100644 index 00000000000..2a05b904457 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$2.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$3.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$3.class new file mode 100644 index 00000000000..1e5a3b7a5da Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader$3.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader.class new file mode 100644 index 00000000000..99072f15b14 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JetTypeJetSignatureReader.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmAbi.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmAbi.class new file mode 100644 index 00000000000..addf271b2d2 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmAbi.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmClassName.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmClassName.class new file mode 100644 index 00000000000..bf0e9ea87a3 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmClassName.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType$MapByAsmTypeHolder.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType$MapByAsmTypeHolder.class new file mode 100644 index 00000000000..1e8db6cea9e Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType$MapByAsmTypeHolder.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType$MapByWrapperAsmTypeHolder.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType$MapByWrapperAsmTypeHolder.class new file mode 100644 index 00000000000..f5dd3173474 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType$MapByWrapperAsmTypeHolder.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType.class new file mode 100644 index 00000000000..915a2b8e9c7 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmPrimitiveType.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmStdlibNames.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmStdlibNames.class new file mode 100644 index 00000000000..fb9d2bc6cc7 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/JvmStdlibNames.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/NamedMembers.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/NamedMembers.class new file mode 100644 index 00000000000..df278f24f55 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/NamedMembers.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PropertyAccessorData.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PropertyAccessorData.class new file mode 100644 index 00000000000..5ac3763aed6 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PropertyAccessorData.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiClassWrapper.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiClassWrapper.class new file mode 100644 index 00000000000..3476245b2d9 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiClassWrapper.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiFieldWrapper.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiFieldWrapper.class new file mode 100644 index 00000000000..dca2aa518ab Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiFieldWrapper.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiMemberWrapper.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiMemberWrapper.class new file mode 100644 index 00000000000..de77533d633 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiMemberWrapper.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiMethodWrapper.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiMethodWrapper.class new file mode 100644 index 00000000000..d8574080949 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiMethodWrapper.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiParameterWrapper.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiParameterWrapper.class new file mode 100644 index 00000000000..e9713dd04da Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/PsiParameterWrapper.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeSource.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeSource.class new file mode 100644 index 00000000000..9b59708ab5e Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeSource.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolver.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolver.class new file mode 100644 index 00000000000..67f4a8f32fc Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolver.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolverFromOuters.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolverFromOuters.class new file mode 100644 index 00000000000..d2c58a30947 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolverFromOuters.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolverFromTypeDescriptors.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolverFromTypeDescriptors.class new file mode 100644 index 00000000000..5f7e502bded Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolverFromTypeDescriptors.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolvers.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolvers.class new file mode 100644 index 00000000000..74af84f3344 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/TypeVariableResolvers.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/alt/AltClassFinder.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/alt/AltClassFinder.class new file mode 100644 index 00000000000..1bdc1829963 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/alt/AltClassFinder.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetClassAnnotation.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetClassAnnotation.class new file mode 100644 index 00000000000..82d6dc0f5d5 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetClassAnnotation.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetConstructorAnnotation.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetConstructorAnnotation.class new file mode 100644 index 00000000000..d201de9055a Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetConstructorAnnotation.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetMethodAnnotation.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetMethodAnnotation.class new file mode 100644 index 00000000000..6c931b4ad56 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetMethodAnnotation.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetTypeParameterAnnotation.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetTypeParameterAnnotation.class new file mode 100644 index 00000000000..7edb588d6dd Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetTypeParameterAnnotation.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetValueParameterAnnotation.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetValueParameterAnnotation.class new file mode 100644 index 00000000000..022d1ad61a7 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/JetValueParameterAnnotation.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/PsiAnnotationUtils.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/PsiAnnotationUtils.class new file mode 100644 index 00000000000..f5ba0a12e93 Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/PsiAnnotationUtils.class differ diff --git a/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/PsiAnnotationWrapper.class b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/PsiAnnotationWrapper.class new file mode 100644 index 00000000000..5b62e8d97ee Binary files /dev/null and b/k2js/out/production/frontend.java/org/jetbrains/jet/lang/resolve/java/kt/PsiAnnotationWrapper.class differ diff --git a/k2js/out/production/frontend/jet/Arrays.jet b/k2js/out/production/frontend/jet/Arrays.jet new file mode 100644 index 00000000000..be3608b03ef --- /dev/null +++ b/k2js/out/production/frontend/jet/Arrays.jet @@ -0,0 +1,84 @@ +package jet + +fun Array(val size : Int) : Array + +class Array(val size : Int, init : (Int) -> T) { + fun get(index : Int) : T + fun set(index : Int, value : T) : Unit + + fun iterator() : Iterator + + val indices : IntRange +} + +class ByteArray(val size : Int) { + fun get(index : Int) : Byte + fun set(index : Int, value : Byte) : Unit + + fun iterator() : ByteIterator + + val indices : IntRange +} + +class ShortArray(val size : Int) { + fun get(index : Int) : Short + fun set(index : Int, value : Short) : Unit + + fun iterator() : ShortIterator + + val indices : IntRange +} + +class IntArray(val size : Int) { + fun get(index : Int) : Int + fun set(index : Int, value : Int) : Unit + + fun iterator() : IntIterator + + val indices : IntRange +} + +class LongArray(val size : Int) { + fun get(index : Int) : Long + fun set(index : Int, value : Long) : Unit + + fun iterator() : LongIterator + + val indices : IntRange +} + +class FloatArray(val size : Int) { + fun get(index : Int) : Float + fun set(index : Int, value : Float) : Unit + + fun iterator() : FloatIterator + + val indices : IntRange +} + +class DoubleArray(val size : Int) { + fun get(index : Int) : Double + fun set(index : Int, value : Double) : Unit + + fun iterator() : DoubleIterator + + val indices : IntRange +} + +class CharArray(val size : Int) { + fun get(index : Int) : Char + fun set(index : Int, value : Char) : Unit + + fun iterator() : CharIterator + + val indices : IntRange +} + +class BooleanArray(val size : Int) { + fun get(index : Int) : Boolean + fun set(index : Int, value : Boolean) : Unit + + fun iterator() : BooleanIterator + + val indices : IntRange +} diff --git a/k2js/out/production/frontend/jet/Iterables.jet b/k2js/out/production/frontend/jet/Iterables.jet new file mode 100644 index 00000000000..900ed28a17b --- /dev/null +++ b/k2js/out/production/frontend/jet/Iterables.jet @@ -0,0 +1,37 @@ +package jet + +trait Iterable { + fun iterator() : Iterator +} + +trait ByteIterable : Iterable { + override fun iterator() : ByteIterator +} + +trait ShortIterable : Iterable { + override fun iterator() : ShortIterator +} + +trait IntIterable : Iterable { + override fun iterator() : IntIterator +} + +trait LongIterable : Iterable { + override fun iterator() : LongIterator +} + +trait FloatIterable : Iterable { + override fun iterator() : FloatIterator +} + +trait DoubleIterable : Iterable { + override fun iterator() : DoubleIterator +} + +trait BooleanIterable : Iterable { + override fun iterator() : BooleanIterator +} + +trait CharIterable : Iterable { + override fun iterator() : CharIterator +} diff --git a/k2js/out/production/frontend/jet/Iterators.jet b/k2js/out/production/frontend/jet/Iterators.jet new file mode 100644 index 00000000000..d96b8e3bad6 --- /dev/null +++ b/k2js/out/production/frontend/jet/Iterators.jet @@ -0,0 +1,73 @@ +package.jet + +trait Iterator { + fun next() : T + val hasNext : Boolean +} + +abstract open class ByteIterator() : Iterator { + abstract open fun nextByte() : Byte + + override fun next() : Byte +} + +abstract open class ShortIterator() : Iterator { + abstract open fun nextShort() : Short + + override fun next() : Short +} + +abstract open class CharIterator() : Iterator { + abstract open fun nextChar() : Char + + override fun next() : Char +} + +abstract open class IntIterator() : Iterator { + abstract open fun nextInt() : Int + + override fun next() : Int +} + +abstract open class LongIterator() : Iterator { + abstract open fun nextLong() : Long + + override fun next() : Long +} + +abstract open class FloatIterator() : Iterator { + abstract open fun nextFloat() : Float + + override fun next() : Float +} + +abstract open class DoubleIterator() : Iterator { + abstract open fun nextDouble() : Double + + override fun next() : Double +} + +abstract open class BooleanIterator() : Iterator { + abstract open fun nextBoolean() : Boolean + + override fun next() : Boolean +} + +fun Iterator.iterator() : Iterator + +fun ByteIterator.iterator() : ByteIterator + +fun ShortIterator.iterator() : ShortIterator + +fun CharIterator.iterator() : CharIterator + +fun IntIterator.iterator() : IntIterator + +fun BooleanIterator.iterator() : BooleanIterator + +fun DoubleIterator.iterator() : DoubleIterator + +fun FloatIterator.iterator() : FloatIterator + +fun LongIterator.iterator() : LongIterator + diff --git a/k2js/out/production/frontend/jet/Library.jet b/k2js/out/production/frontend/jet/Library.jet new file mode 100644 index 00000000000..6d15cfc9d09 --- /dev/null +++ b/k2js/out/production/frontend/jet/Library.jet @@ -0,0 +1,61 @@ +package jet + +class TypeInfo { + fun isSubtypeOf(other : TypeInfo<*>) : Boolean + fun isInstance(obj : Any?) : Boolean +} + +fun typeinfo() : TypeInfo +fun typeinfo(expression : T) : TypeInfo + +annotation class volatile +annotation class atomic + +fun synchronized(lock: Any, block : () -> R) : R + +fun Any?.identityEquals(other : Any?) : Boolean // = this === other + +// Can't write a body due to a bootstrapping problem (see JET-74) +fun Any?.equals(other : Any?) : Boolean// = this === other + +// Returns "null" for null +fun Any?.toString() : String// = this === other + +fun T?.sure() : T + +fun String?.plus(other: Any?) : String + +trait Comparable { + fun compareTo(other : T) : Int +} + +trait Hashable { + fun hashCode() : Int + fun equals(other : Any?) : Boolean +} + +class Boolean : Comparable { + fun not() : Boolean + + fun and(other : Boolean) : Boolean + + fun or(other : Boolean) : Boolean + + fun xor(other : Boolean) : Boolean + + fun equals(other : Any?) : Boolean +} + +trait CharSequence { + fun get(index : Int) : Char + + val length : Int + + fun toString() : String +} + +class String() : Comparable, CharSequence { + fun plus(other : Any?) : String + + fun equals(other : Any?) : Boolean +} diff --git a/k2js/out/production/frontend/jet/Numbers.jet b/k2js/out/production/frontend/jet/Numbers.jet new file mode 100644 index 00000000000..719bcf2ea52 --- /dev/null +++ b/k2js/out/production/frontend/jet/Numbers.jet @@ -0,0 +1,586 @@ +package jet + +abstract class Number : Hashable { + abstract val dbl : Double + abstract val flt : Float + abstract val lng : Long + abstract val int : Int + abstract val chr : Char + abstract val sht : Short + abstract val byt : Byte +// fun equals(other : Double) : Boolean +// fun equals(other : Float) : Boolean +// fun equals(other : Long) : Boolean +// fun equals(other : Byte) : Boolean +// fun equals(other : Int) : Boolean +// fun equals(other : Short) : Boolean +// fun equals(other : Char) : Boolean +} + +class Double : Number, Comparable { + override fun compareTo(other : Double) : Int + fun compareTo(other : Float) : Int + fun compareTo(other : Long) : Int + fun compareTo(other : Int) : Int + fun compareTo(other : Short) : Int + fun compareTo(other : Byte) : Int + fun compareTo(other : Char) : Int + + fun plus(other : Double) : Double + fun plus(other : Float) : Double + fun plus(other : Long) : Double + fun plus(other : Int) : Double + fun plus(other : Short) : Double + fun plus(other : Byte) : Double + fun plus(other : Char) : Double + + fun minus(other : Double) : Double + fun minus(other : Float) : Double + fun minus(other : Long) : Double + fun minus(other : Int) : Double + fun minus(other : Short) : Double + fun minus(other : Byte) : Double + fun minus(other : Char) : Double + + fun times(other : Double) : Double + fun times(other : Float) : Double + fun times(other : Long) : Double + fun times(other : Int) : Double + fun times(other : Short) : Double + fun times(other : Byte) : Double + fun times(other : Char) : Double + + fun div(other : Double) : Double + fun div(other : Float) : Double + fun div(other : Long) : Double + fun div(other : Int) : Double + fun div(other : Short) : Double + fun div(other : Byte) : Double + fun div(other : Char) : Double + + fun mod(other : Double) : Double + fun mod(other : Float) : Double + fun mod(other : Long) : Double + fun mod(other : Int) : Double + fun mod(other : Short) : Double + fun mod(other : Byte) : Double + + fun rangeTo(other : Double) : DoubleRange + fun rangeTo(other : Float) : DoubleRange + fun rangeTo(other : Long) : DoubleRange + fun rangeTo(other : Int) : DoubleRange + fun rangeTo(other : Short) : DoubleRange + fun rangeTo(other : Byte) : DoubleRange + fun rangeTo(other : Char) : DoubleRange + + fun upto(other : Double) : DoubleRange + fun upto(other : Float) : DoubleRange + fun upto(other : Long) : DoubleRange + fun upto(other : Int) : DoubleRange + fun upto(other : Short) : DoubleRange + fun upto(other : Byte) : DoubleRange + fun upto(other : Char) : DoubleRange + + fun downto(other : Double) : DoubleRange + fun downto(other : Float) : DoubleRange + fun downto(other : Long) : DoubleRange + fun downto(other : Int) : DoubleRange + fun downto(other : Short) : DoubleRange + fun downto(other : Byte) : DoubleRange + fun downto(other : Char) : DoubleRange + + fun inc() : Double + fun dec() : Double + fun plus() : Double + fun minus() : Double +} + +class Float : Number, Comparable { + fun compareTo(other : Double) : Int + override fun compareTo(other : Float) : Int + fun compareTo(other : Long) : Int + fun compareTo(other : Int) : Int + fun compareTo(other : Short) : Int + fun compareTo(other : Byte) : Int + fun compareTo(other : Char) : Int + + fun plus(other : Double) : Double + fun plus(other : Float) : Float + fun plus(other : Long) : Float + fun plus(other : Int) : Float + fun plus(other : Short) : Float + fun plus(other : Byte) : Float + fun plus(other : Char) : Float + + fun minus(other : Double) : Double + fun minus(other : Float) : Float + fun minus(other : Long) : Float + fun minus(other : Int) : Float + fun minus(other : Short) : Float + fun minus(other : Byte) : Float + fun minus(other : Char) : Float + + fun times(other : Double) : Double + fun times(other : Float) : Float + fun times(other : Long) : Float + fun times(other : Int) : Float + fun times(other : Short) : Float + fun times(other : Byte) : Float + fun times(other : Char) : Float + + fun div(other : Double) : Double + fun div(other : Float) : Float + fun div(other : Long) : Float + fun div(other : Int) : Float + fun div(other : Short) : Float + fun div(other : Byte) : Float + fun div(other : Char) : Float + + fun mod(other : Double) : Double + fun mod(other : Float) : Float + fun mod(other : Long) : Float + fun mod(other : Int) : Float + fun mod(other : Short) : Float + fun mod(other : Byte) : Float + fun mod(other : Char) : Float + + fun rangeTo(other : Double) : DoubleRange + fun rangeTo(other : Float) : FloatRange + fun rangeTo(other : Long) : DoubleRange + fun rangeTo(other : Int) : FloatRange + fun rangeTo(other : Short) : FloatRange + fun rangeTo(other : Byte) : FloatRange + fun rangeTo(other : Char) : FloatRange + + fun upto(other : Double) : DoubleRange + fun upto(other : Float) : FloatRange + fun upto(other : Long) : DoubleRange + fun upto(other : Int) : FloatRange + fun upto(other : Short) : FloatRange + fun upto(other : Byte) : FloatRange + fun upto(other : Char) : FloatRange + + fun downto(other : Double) : DoubleRange + fun downto(other : Float) : FloatRange + fun downto(other : Long) : DoubleRange + fun downto(other : Int) : FloatRange + fun downto(other : Short) : FloatRange + fun downto(other : Byte) : FloatRange + fun downto(other : Char) : FloatRange + + fun inc() : Float + fun dec() : Float + fun plus() : Float + fun minus() : Float +} + +class Long : Number, Comparable { + fun compareTo(other : Double) : Int + fun compareTo(other : Float) : Int + override fun compareTo(other : Long) : Int + fun compareTo(other : Int) : Int + fun compareTo(other : Short) : Int + fun compareTo(other : Byte) : Int + fun compareTo(other : Char) : Int + + fun plus(other : Double) : Double + fun plus(other : Float) : Float + fun plus(other : Long) : Long + fun plus(other : Int) : Long + fun plus(other : Short) : Long + fun plus(other : Byte) : Long + fun plus(other : Char) : Long + + fun minus(other : Double) : Double + fun minus(other : Float) : Float + fun minus(other : Long) : Long + fun minus(other : Int) : Long + fun minus(other : Short) : Long + fun minus(other : Byte) : Long + fun minus(other : Char) : Long + + fun times(other : Double) : Double + fun times(other : Float) : Float + fun times(other : Long) : Long + fun times(other : Int) : Long + fun times(other : Short) : Long + fun times(other : Byte) : Long + fun times(other : Char) : Long + + fun div(other : Double) : Double + fun div(other : Float) : Float + fun div(other : Long) : Long + fun div(other : Int) : Long + fun div(other : Short) : Long + fun div(other : Byte) : Long + fun div(other : Char) : Long + + fun mod(other : Double) : Double + fun mod(other : Float) : Float + fun mod(other : Long) : Long + fun mod(other : Int) : Long + fun mod(other : Short) : Long + fun mod(other : Byte) : Long + fun mod(other : Char) : Long + + fun rangeTo(other : Double) : DoubleRange + fun rangeTo(other : Float) : FloatRange + fun rangeTo(other : Long) : LongRange + fun rangeTo(other : Int) : LongRange + fun rangeTo(other : Short) : LongRange + fun rangeTo(other : Byte) : LongRange + fun rangeTo(other : Char) : LongRange + + fun upto(other : Double) : DoubleRange + fun upto(other : Float) : FloatRange + fun upto(other : Long) : LongRange + fun upto(other : Int) : LongRange + fun upto(other : Short) : LongRange + fun upto(other : Byte) : LongRange + fun upto(other : Char) : LongRange + + fun downto(other : Double) : DoubleRange + fun downto(other : Float) : FloatRange + fun downto(other : Long) : LongRange + fun downto(other : Int) : LongRange + fun downto(other : Short) : LongRange + fun downto(other : Byte) : LongRange + fun downto(other : Char) : LongRange + + fun inc() : Long + fun dec() : Long + fun plus() : Long + fun minus() : Long + + fun shl(bits : Int) : Long + fun shr(bits : Int) : Long + fun ushr(bits : Int) : Long + fun and(other : Long) : Long + fun or(other : Long) : Long + fun xor(other : Long) : Long + fun inv() : Long +} + +class Int : Number, Comparable { + fun compareTo(other : Double) : Int + fun compareTo(other : Float) : Int + fun compareTo(other : Long) : Int + override fun compareTo(other : Int) : Int + fun compareTo(other : Short) : Int + fun compareTo(other : Byte) : Int + fun compareTo(other : Char) : Int + + fun plus(other : Double) : Double + fun plus(other : Float) : Float + fun plus(other : Long) : Long + fun plus(other : Int) : Int + fun plus(other : Short) : Int + fun plus(other : Byte) : Int + fun plus(other : Char) : Int + + fun minus(other : Double) : Double + fun minus(other : Float) : Float + fun minus(other : Long) : Long + fun minus(other : Int) : Int + fun minus(other : Short) : Int + fun minus(other : Byte) : Int + fun minus(other : Char) : Int + + fun times(other : Double) : Double + fun times(other : Float) : Float + fun times(other : Long) : Long + fun times(other : Int) : Int + fun times(other : Short) : Int + fun times(other : Byte) : Int + fun times(other : Char) : Int + + fun div(other : Double) : Double + fun div(other : Float) : Float + fun div(other : Long) : Long + fun div(other : Int) : Int + fun div(other : Short) : Int + fun div(other : Byte) : Int + fun div(other : Char) : Int + + fun mod(other : Double) : Double + fun mod(other : Float) : Float + fun mod(other : Long) : Long + fun mod(other : Int) : Int + fun mod(other : Short) : Int + fun mod(other : Byte) : Int + fun mod(other : Char) : Int + + fun rangeTo(other : Double) : DoubleRange + fun rangeTo(other : Float) : FloatRange + fun rangeTo(other : Long) : LongRange + fun rangeTo(other : Int) : IntRange + fun rangeTo(other : Short) : IntRange + fun rangeTo(other : Byte) : IntRange + fun rangeTo(other : Char) : IntRange + + fun upto(other : Double) : DoubleRange + fun upto(other : Float) : FloatRange + fun upto(other : Long) : LongRange + fun upto(other : Int) : IntRange + fun upto(other : Short) : IntRange + fun upto(other : Byte) : IntRange + fun upto(other : Char) : IntRange + + fun downto(other : Double) : DoubleRange + fun downto(other : Float) : FloatRange + fun downto(other : Long) : LongRange + fun downto(other : Int) : IntRange + fun downto(other : Short) : IntRange + fun downto(other : Byte) : IntRange + fun downto(other : Char) : IntRange + + fun inc() : Int + fun dec() : Int + fun plus() : Int + fun minus() : Int + + fun shl(bits : Int) : Int + fun shr(bits : Int) : Int + fun ushr(bits : Int) : Int + fun and(other : Int) : Int + fun or(other : Int) : Int + fun xor(other : Int) : Int + fun inv() : Int +} + +class Char : Number, Comparable { + fun compareTo(other : Double) : Int + fun compareTo(other : Float) : Int + fun compareTo(other : Long) : Int + fun compareTo(other : Int) : Int + fun compareTo(other : Short) : Int + override fun compareTo(other : Char) : Int + fun compareTo(other : Byte) : Int + + fun plus(other : Double) : Double + fun plus(other : Float) : Float + fun plus(other : Long) : Long + fun plus(other : Int) : Int + fun plus(other : Short) : Int + fun plus(other : Byte) : Int +// fun plus(other : Char) : Int + + fun minus(other : Double) : Double + fun minus(other : Float) : Float + fun minus(other : Long) : Long + fun minus(other : Int) : Int + fun minus(other : Short) : Int + fun minus(other : Byte) : Int + fun minus(other : Char) : Int + + fun times(other : Double) : Double + fun times(other : Float) : Float + fun times(other : Long) : Long + fun times(other : Int) : Int + fun times(other : Short) : Int + fun times(other : Byte) : Int +// fun times(other : Char) : Int + + fun div(other : Double) : Double + fun div(other : Float) : Float + fun div(other : Long) : Long + fun div(other : Int) : Int + fun div(other : Short) : Int + fun div(other : Byte) : Int +// fun div(other : Char) : Int + + fun mod(other : Double) : Double + fun mod(other : Float) : Float + fun mod(other : Long) : Long + fun mod(other : Int) : Int + fun mod(other : Short) : Int + fun mod(other : Byte) : Int +// fun mod(other : Char) : Int + + fun rangeTo(other : Double) : DoubleRange + fun rangeTo(other : Float) : FloatRange + fun rangeTo(other : Long) : LongRange + fun rangeTo(other : Int) : IntRange + fun rangeTo(other : Short) : ShortRange + fun rangeTo(other : Byte) : CharRange + fun rangeTo(other : Char) : CharRange + + fun upto(other : Double) : DoubleRange + fun upto(other : Float) : FloatRange + fun upto(other : Long) : LongRange + fun upto(other : Int) : IntRange + fun upto(other : Short) : ShortRange + fun upto(other : Byte) : CharRange + fun upto(other : Char) : CharRange + + fun downto(other : Double) : DoubleRange + fun downto(other : Float) : FloatRange + fun downto(other : Long) : LongRange + fun downto(other : Int) : IntRange + fun downto(other : Short) : ShortRange + fun downto(other : Byte) : CharRange + fun downto(other : Char) : CharRange + + fun inc() : Char + fun dec() : Char + fun plus() : Int + fun minus() : Int +} + +class Short : Number, Comparable { + fun compareTo(other : Double) : Int + fun compareTo(other : Float) : Int + fun compareTo(other : Long) : Int + fun compareTo(other : Int) : Int + override fun compareTo(other : Short) : Int + fun compareTo(other : Byte) : Int + fun compareTo(other : Char) : Int + + fun plus(other : Double) : Double + fun plus(other : Float) : Float + fun plus(other : Long) : Long + fun plus(other : Int) : Int + fun plus(other : Short) : Int + fun plus(other : Byte) : Int + fun plus(other : Char) : Int + + fun minus(other : Double) : Double + fun minus(other : Float) : Float + fun minus(other : Long) : Long + fun minus(other : Int) : Int + fun minus(other : Short) : Int + fun minus(other : Byte) : Int + fun minus(other : Char) : Int + + fun times(other : Double) : Double + fun times(other : Float) : Float + fun times(other : Long) : Long + fun times(other : Int) : Int + fun times(other : Short) : Int + fun times(other : Byte) : Int + fun times(other : Char) : Int + + fun div(other : Double) : Double + fun div(other : Float) : Float + fun div(other : Long) : Long + fun div(other : Int) : Int + fun div(other : Short) : Int + fun div(other : Byte) : Int + fun div(other : Char) : Int + + fun mod(other : Double) : Double + fun mod(other : Float) : Float + fun mod(other : Long) : Long + fun mod(other : Int) : Int + fun mod(other : Short) : Int + fun mod(other : Byte) : Int + fun mod(other : Char) : Int + + fun rangeTo(other : Double) : DoubleRange + fun rangeTo(other : Float) : FloatRange + fun rangeTo(other : Long) : LongRange + fun rangeTo(other : Int) : IntRange + fun rangeTo(other : Short) : ShortRange + fun rangeTo(other : Byte) : ShortRange + fun rangeTo(other : Char) : ShortRange + + fun upto(other : Double) : DoubleRange + fun upto(other : Float) : FloatRange + fun upto(other : Long) : LongRange + fun upto(other : Int) : IntRange + fun upto(other : Short) : ShortRange + fun upto(other : Byte) : ShortRange + fun upto(other : Char) : ShortRange + + fun downto(other : Double) : DoubleRange + fun downto(other : Float) : FloatRange + fun downto(other : Long) : LongRange + fun downto(other : Int) : IntRange + fun downto(other : Short) : ShortRange + fun downto(other : Byte) : ShortRange + fun downto(other : Char) : ShortRange + + fun inc() : Short + fun dec() : Short + fun plus() : Short + fun minus() : Short +} + +class Byte : Number, Comparable { + fun compareTo(other : Double) : Int + fun compareTo(other : Float) : Int + fun compareTo(other : Long) : Int + fun compareTo(other : Int) : Int + fun compareTo(other : Short) : Int + fun compareTo(other : Char) : Int + override fun compareTo(other : Byte) : Int + + fun plus(other : Double) : Double + fun plus(other : Float) : Float + fun plus(other : Long) : Long + fun plus(other : Int) : Int + fun plus(other : Short) : Int + fun plus(other : Byte) : Int + fun plus(other : Char) : Int + + fun minus(other : Double) : Double + fun minus(other : Float) : Float + fun minus(other : Long) : Long + fun minus(other : Int) : Int + fun minus(other : Short) : Int + fun minus(other : Byte) : Int + fun minus(other : Char) : Int + + fun times(other : Double) : Double + fun times(other : Float) : Float + fun times(other : Long) : Long + fun times(other : Int) : Int + fun times(other : Short) : Int + fun times(other : Byte) : Int + fun times(other : Char) : Int + + fun div(other : Double) : Double + fun div(other : Float) : Float + fun div(other : Long) : Long + fun div(other : Int) : Int + fun div(other : Short) : Int + fun div(other : Byte) : Int + fun div(other : Char) : Int + + fun mod(other : Double) : Double + fun mod(other : Float) : Float + fun mod(other : Long) : Long + fun mod(other : Int) : Int + fun mod(other : Short) : Int + fun mod(other : Byte) : Int + fun mod(other : Char) : Int + + fun rangeTo(other : Double) : DoubleRange + fun rangeTo(other : Float) : FloatRange + fun rangeTo(other : Long) : LongRange + fun rangeTo(other : Int) : IntRange + fun rangeTo(other : Short) : ShortRange + fun rangeTo(other : Byte) : ByteRange + fun rangeTo(other : Char) : CharRange + + fun upto(other : Double) : DoubleRange + fun upto(other : Float) : FloatRange + fun upto(other : Long) : LongRange + fun upto(other : Int) : IntRange + fun upto(other : Short) : ShortRange + fun upto(other : Byte) : ByteRange + fun upto(other : Char) : CharRange + + fun downto(other : Double) : DoubleRange + fun downto(other : Float) : FloatRange + fun downto(other : Long) : LongRange + fun downto(other : Int) : IntRange + fun downto(other : Short) : ShortRange + fun downto(other : Byte) : ByteRange + fun downto(other : Char) : CharRange + + fun inc() : Byte + fun dec() : Byte + fun plus() : Byte + fun minus() : Byte +} \ No newline at end of file diff --git a/k2js/out/production/frontend/jet/Ranges.jet b/k2js/out/production/frontend/jet/Ranges.jet new file mode 100644 index 00000000000..2426900bf78 --- /dev/null +++ b/k2js/out/production/frontend/jet/Ranges.jet @@ -0,0 +1,109 @@ +package jet + +trait Range> { + fun contains(item : T) : Boolean +} + +class IntRange(val start : Int, val size : Int) : Range, IntIterable { + fun iterator () : IntIterator + + fun contains (elem: Int) : Boolean + + val end : Int + + val iteratorStart : Int + + fun minus() : IntRange + + fun step(step: Int) : IntIterator + + val isReversed : Boolean +} + +class LongRange(val start : Long, val size : Long) : Range, LongIterable { + fun iterator () : LongIterator + + fun contains (elem: Long) : Boolean + + val iteratorStart : Long + + val end : Long + + fun minus() : LongRange + + fun step(step: Long) : LongIterator + + val isReversed : Boolean +} + +class ByteRange(val start : Byte, val size : Int) : Range, ByteIterable { + fun iterator () : ByteIterator + + fun contains (elem: Byte) : Boolean + + val end : Byte + + val iteratorStart : Byte + + fun minus() : ByteRange + + fun step(step: Int) : ByteIterator + + val isReversed : Boolean +} + +class ShortRange(val start : Short, val size : Int) : Range, ShortIterable { + fun iterator () : ShortIterator + + fun contains (elem: Byte) : Boolean + + val iteratorStart : Short + + val end : Short + + fun minus() : ShortRange + + fun step(step: Int) : ShortIterator + + val isReversed : Boolean +} + +class CharRange(val start : Char, val size : Int) : Range, CharIterable { + fun iterator () : CharIterator + + fun contains (elem: Char) : Boolean + + val iteratorStart : Char + + val end : Char + + fun minus() : CharRange + + fun step(step: Int) : CharIterator + + val isReversed : Boolean +} + +class FloatRange(val start : Float, val size : Float) : Range { + fun contains (elem: Float) : Boolean + + val end : Float + + fun minus() : FloatRange + + fun step(step: Float) : FloatIterator + + val isReversed : Boolean +} + +class DoubleRange(val start : Double, val size : Double) : Range { + fun contains (elem: Double) : Boolean + + val end : Double + + fun minus() : DoubleRange + + fun step(step: Double) : DoubleIterator + + val isReversed : Boolean +} diff --git a/k2js/out/production/frontend/org/jetbrains/jet/JetNodeType.class b/k2js/out/production/frontend/org/jetbrains/jet/JetNodeType.class new file mode 100644 index 00000000000..441961cbe76 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/JetNodeType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/JetNodeTypes.class b/k2js/out/production/frontend/org/jetbrains/jet/JetNodeTypes.class new file mode 100644 index 00000000000..47ea6ccb58f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/JetNodeTypes.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$1.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$1.class new file mode 100644 index 00000000000..a50f8459484 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$2.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$2.class new file mode 100644 index 00000000000..79356c8d5ac Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosedRange.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosedRange.class new file mode 100644 index 00000000000..c275931edbb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosedRange.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosticDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosticDescriptor.class new file mode 100644 index 00000000000..1b2273e634b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosticDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosticDiffCallbacks.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosticDiffCallbacks.class new file mode 100644 index 00000000000..9eedf7f4631 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$DiagnosticDiffCallbacks.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$SyntaxErrorDiagnostic.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$SyntaxErrorDiagnostic.class new file mode 100644 index 00000000000..6985743bc1b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$SyntaxErrorDiagnostic.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$SyntaxErrorDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$SyntaxErrorDiagnosticFactory.class new file mode 100644 index 00000000000..d12b7e57a04 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil$SyntaxErrorDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil.class new file mode 100644 index 00000000000..ca05ae6ce62 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/checkers/CheckerTestUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/Configuration$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/Configuration$1.class new file mode 100644 index 00000000000..fb5ba788b34 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/Configuration$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/Configuration.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/Configuration.class new file mode 100644 index 00000000000..b54d750a6f1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/Configuration.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/JetSemanticServices.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/JetSemanticServices.class new file mode 100644 index 00000000000..1e6ccc540fc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/JetSemanticServices.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/StandardConfiguration.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/StandardConfiguration.class new file mode 100644 index 00000000000..2bea3366203 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/StandardConfiguration.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/BlockInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/BlockInfo.class new file mode 100644 index 00000000000..8adca3ba009 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/BlockInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/BreakableBlockInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/BreakableBlockInfo.class new file mode 100644 index 00000000000..d0805e6d9bf Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/BreakableBlockInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/GenerationTrigger.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/GenerationTrigger.class new file mode 100644 index 00000000000..de475f9bb0e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/GenerationTrigger.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowBuilder.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowBuilder.class new file mode 100644 index 00000000000..6790cba4ed8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowBuilder.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowBuilderAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowBuilderAdapter.class new file mode 100644 index 00000000000..712dab40ee2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowBuilderAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser$InstructionDataAnalyzeStrategy.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser$InstructionDataAnalyzeStrategy.class new file mode 100644 index 00000000000..af3d25b7f87 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser$InstructionDataAnalyzeStrategy.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser$InstructionDataMergeStrategy.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser$InstructionDataMergeStrategy.class new file mode 100644 index 00000000000..0651c0732af Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser$InstructionDataMergeStrategy.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser.class new file mode 100644 index 00000000000..a87f4230f19 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowGraphTraverser.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$1.class new file mode 100644 index 00000000000..90be101e433 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$1.class new file mode 100644 index 00000000000..f6927bd8aea Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$2.class new file mode 100644 index 00000000000..7c399f9ba8c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$3.class new file mode 100644 index 00000000000..c762df3436d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor.class new file mode 100644 index 00000000000..aae041ba08f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor$CFPVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.class new file mode 100644 index 00000000000..e498a964bf7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetControlFlowProcessor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$1.class new file mode 100644 index 00000000000..87eeccbf604 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$10.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$10.class new file mode 100644 index 00000000000..ba856584de3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$10.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$11.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$11.class new file mode 100644 index 00000000000..bbccb0d42ac Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$11.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$12.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$12.class new file mode 100644 index 00000000000..ca4275fd8c7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$12.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$2.class new file mode 100644 index 00000000000..e12b4f2e3ac Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$3.class new file mode 100644 index 00000000000..b84a3fe2cce Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$4.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$4.class new file mode 100644 index 00000000000..89940ab6001 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$4.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$5.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$5.class new file mode 100644 index 00000000000..3600462081a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$5.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$6.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$6.class new file mode 100644 index 00000000000..af783720dcd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$6.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$7.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$7.class new file mode 100644 index 00000000000..398902a282b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$7.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$8.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$8.class new file mode 100644 index 00000000000..ab17225e2ca Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$8.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$9.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$9.class new file mode 100644 index 00000000000..b479b5c3ae7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$9.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$VariableInitializers.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$VariableInitializers.class new file mode 100644 index 00000000000..dce1b31d67e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$VariableInitializers.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$VariableStatus.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$VariableStatus.class new file mode 100644 index 00000000000..cb36600c529 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider$VariableStatus.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider.class new file mode 100644 index 00000000000..62df65d8225 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/JetFlowInformationProvider.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/Label.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/Label.class new file mode 100644 index 00000000000..a20ab42e4b5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/Label.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/LoopInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/LoopInfo.class new file mode 100644 index 00000000000..8b1529d76cc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/LoopInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/WhenChecker.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/WhenChecker.class new file mode 100644 index 00000000000..b48b5e9a03a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/WhenChecker.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/AbstractJumpInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/AbstractJumpInstruction.class new file mode 100644 index 00000000000..054916098e0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/AbstractJumpInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ConditionalJumpInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ConditionalJumpInstruction.class new file mode 100644 index 00000000000..a87949fa968 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ConditionalJumpInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Instruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Instruction.class new file mode 100644 index 00000000000..6a14eb49ee2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Instruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionImpl.class new file mode 100644 index 00000000000..f1978d1cafc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionVisitor.class new file mode 100644 index 00000000000..68f2bf3bfda Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionWithNext.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionWithNext.class new file mode 100644 index 00000000000..bf58be40cf2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/InstructionWithNext.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowDataTraceFactory$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowDataTraceFactory$1.class new file mode 100644 index 00000000000..56ece0c3fd1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowDataTraceFactory$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowDataTraceFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowDataTraceFactory.class new file mode 100644 index 00000000000..4f8ad115efb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowDataTraceFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$1.class new file mode 100644 index 00000000000..6de521549ac Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$JetControlFlowInstructionsGeneratorWorker.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$JetControlFlowInstructionsGeneratorWorker.class new file mode 100644 index 00000000000..3887707eae6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$JetControlFlowInstructionsGeneratorWorker.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$TryFinallyBlockInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$TryFinallyBlockInfo.class new file mode 100644 index 00000000000..2e9a8e64cc2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator$TryFinallyBlockInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator.class new file mode 100644 index 00000000000..7ff0d2dd269 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetControlFlowInstructionsGenerator.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetElementInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetElementInstruction.class new file mode 100644 index 00000000000..322e1656c02 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetElementInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetElementInstructionImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetElementInstructionImpl.class new file mode 100644 index 00000000000..14edffaa28b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetElementInstructionImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetPseudocodeTrace$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetPseudocodeTrace$1.class new file mode 100644 index 00000000000..60f1da6b34b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetPseudocodeTrace$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetPseudocodeTrace.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetPseudocodeTrace.class new file mode 100644 index 00000000000..211a73e7126 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/JetPseudocodeTrace.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/LocalDeclarationInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/LocalDeclarationInstruction.class new file mode 100644 index 00000000000..201bc7e9628 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/LocalDeclarationInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/NondeterministicJumpInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/NondeterministicJumpInstruction.class new file mode 100644 index 00000000000..4fd78533bec Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/NondeterministicJumpInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode$1.class new file mode 100644 index 00000000000..c0f9c6d3815 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode$PseudocodeLabel.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode$PseudocodeLabel.class new file mode 100644 index 00000000000..fcab94a3fa5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode$PseudocodeLabel.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode.class new file mode 100644 index 00000000000..27be70a75af Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/Pseudocode.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReadUnitValueInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReadUnitValueInstruction.class new file mode 100644 index 00000000000..32360706ae9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReadUnitValueInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReadValueInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReadValueInstruction.class new file mode 100644 index 00000000000..3d8452fe879 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReadValueInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReturnNoValueInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReturnNoValueInstruction.class new file mode 100644 index 00000000000..2b08b05b4a2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReturnNoValueInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReturnValueInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReturnValueInstruction.class new file mode 100644 index 00000000000..364ced86fad Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/ReturnValueInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineEnterInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineEnterInstruction.class new file mode 100644 index 00000000000..124b7967eaf Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineEnterInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineExitInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineExitInstruction.class new file mode 100644 index 00000000000..6a660b05323 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineExitInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineSinkInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineSinkInstruction.class new file mode 100644 index 00000000000..8c93d7f716f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/SubroutineSinkInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/UnconditionalJumpInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/UnconditionalJumpInstruction.class new file mode 100644 index 00000000000..4c1aa8ba49d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/UnconditionalJumpInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/UnsupportedElementInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/UnsupportedElementInstruction.class new file mode 100644 index 00000000000..3b33ed4d238 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/UnsupportedElementInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/VariableDeclarationInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/VariableDeclarationInstruction.class new file mode 100644 index 00000000000..75262ef842f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/VariableDeclarationInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/WriteValueInstruction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/WriteValueInstruction.class new file mode 100644 index 00000000000..59c47f66b94 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/cfg/pseudocode/WriteValueInstruction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/AbstractNamespaceDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/AbstractNamespaceDescriptorImpl.class new file mode 100644 index 00000000000..a98b526c103 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/AbstractNamespaceDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Annotation.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Annotation.class new file mode 100644 index 00000000000..8acd377f3d9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Annotation.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableDescriptor.class new file mode 100644 index 00000000000..bc6332ab191 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableMemberDescriptor$Kind.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableMemberDescriptor$Kind.class new file mode 100644 index 00000000000..f52dadbd1c4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableMemberDescriptor$Kind.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableMemberDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableMemberDescriptor.class new file mode 100644 index 00000000000..d671ce470b4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/CallableMemberDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassDescriptor.class new file mode 100644 index 00000000000..22c2260e213 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassDescriptorImpl.class new file mode 100644 index 00000000000..dd60027ebbc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassKind.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassKind.class new file mode 100644 index 00000000000..58f74f3d395 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassKind.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassOrNamespaceDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassOrNamespaceDescriptor.class new file mode 100644 index 00000000000..38e843e919c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassOrNamespaceDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassifierDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassifierDescriptor.class new file mode 100644 index 00000000000..673cd0ceaa0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ClassifierDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ConstructorDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ConstructorDescriptor.class new file mode 100644 index 00000000000..1f8088c49ca Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ConstructorDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ConstructorDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ConstructorDescriptorImpl.class new file mode 100644 index 00000000000..0142dde888d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ConstructorDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptor.class new file mode 100644 index 00000000000..33e9461456e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorImpl.class new file mode 100644 index 00000000000..ba631eae149 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorVisitor.class new file mode 100644 index 00000000000..880cf3c942d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorWithVisibility.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorWithVisibility.class new file mode 100644 index 00000000000..b69108560da Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/DeclarationDescriptorWithVisibility.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ExtensionDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ExtensionDescriptor.class new file mode 100644 index 00000000000..d76e85766b3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ExtensionDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptor.class new file mode 100644 index 00000000000..f5f6bd32932 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorImpl.class new file mode 100644 index 00000000000..262c8a74158 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorUtil$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorUtil$1.class new file mode 100644 index 00000000000..530f89d9348 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorUtil$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorUtil.class new file mode 100644 index 00000000000..e3c89441bed Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/FunctionDescriptorUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/LazySubstitutingClassDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/LazySubstitutingClassDescriptor.class new file mode 100644 index 00000000000..6d27eafca74 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/LazySubstitutingClassDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/LocalVariableDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/LocalVariableDescriptor.class new file mode 100644 index 00000000000..02d9cc076e7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/LocalVariableDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MemberDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MemberDescriptor.class new file mode 100644 index 00000000000..55980253950 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MemberDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Modality.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Modality.class new file mode 100644 index 00000000000..d6cca985d91 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Modality.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ModuleDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ModuleDescriptor.class new file mode 100644 index 00000000000..4a09a36b4c2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ModuleDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptor$1.class new file mode 100644 index 00000000000..518e67a4720 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptor.class new file mode 100644 index 00000000000..45075d49e9e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptorLite.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptorLite.class new file mode 100644 index 00000000000..539397f5ec6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableClassDescriptorLite.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableDeclarationDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableDeclarationDescriptor.class new file mode 100644 index 00000000000..2bd2be7ba3a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableDeclarationDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableValueParameterDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableValueParameterDescriptor.class new file mode 100644 index 00000000000..341f4edeb92 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/MutableValueParameterDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Named.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Named.class new file mode 100644 index 00000000000..f6c4ff15010 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Named.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamedFunctionDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamedFunctionDescriptor.class new file mode 100644 index 00000000000..b12d6d5c109 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamedFunctionDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamedFunctionDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamedFunctionDescriptorImpl.class new file mode 100644 index 00000000000..f76ace63206 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamedFunctionDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceDescriptor.class new file mode 100644 index 00000000000..2059ed094a5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceDescriptorImpl.class new file mode 100644 index 00000000000..a1e9c5ec121 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike$Adapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike$Adapter.class new file mode 100644 index 00000000000..17831853f6c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike$Adapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike$ClassObjectStatus.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike$ClassObjectStatus.class new file mode 100644 index 00000000000..a6bc4629de8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike$ClassObjectStatus.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike.class new file mode 100644 index 00000000000..0eb08bbdc2e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/NamespaceLike.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyAccessorDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyAccessorDescriptor.class new file mode 100644 index 00000000000..1eb00ee9267 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyAccessorDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyDescriptor.class new file mode 100644 index 00000000000..a4b83f4915b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyGetterDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyGetterDescriptor.class new file mode 100644 index 00000000000..5c39212e234 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertyGetterDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertySetterDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertySetterDescriptor.class new file mode 100644 index 00000000000..e75d96ba5e1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/PropertySetterDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/TypeParameterDescriptor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/TypeParameterDescriptor$1.class new file mode 100644 index 00000000000..a9baed1a21e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/TypeParameterDescriptor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/TypeParameterDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/TypeParameterDescriptor.class new file mode 100644 index 00000000000..36d1714ea64 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/TypeParameterDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ValueParameterDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ValueParameterDescriptor.class new file mode 100644 index 00000000000..a424f94e510 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ValueParameterDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ValueParameterDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ValueParameterDescriptorImpl.class new file mode 100644 index 00000000000..118c2ed2735 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/ValueParameterDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableAsFunctionDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableAsFunctionDescriptor.class new file mode 100644 index 00000000000..1d1c72eec32 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableAsFunctionDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableDescriptor.class new file mode 100644 index 00000000000..bda2f38b816 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableDescriptorImpl.class new file mode 100644 index 00000000000..48d742e2acc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/VariableDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Visibility.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Visibility.class new file mode 100644 index 00000000000..45bd92f3dcb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/Visibility.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/Annotated.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/Annotated.class new file mode 100644 index 00000000000..93aed1ba923 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/Annotated.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotatedImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotatedImpl.class new file mode 100644 index 00000000000..5b422d22db5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotatedImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotationArgumentVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotationArgumentVisitor.class new file mode 100644 index 00000000000..8c09876a8b6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotationArgumentVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotationDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotationDescriptor.class new file mode 100644 index 00000000000..1062df6f9a4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/descriptors/annotations/AnnotationDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/AbstractDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/AbstractDiagnosticFactory.class new file mode 100644 index 00000000000..9101bbc29c3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/AbstractDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/AmbiguousDescriptorDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/AmbiguousDescriptorDiagnosticFactory.class new file mode 100644 index 00000000000..f377a609e8a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/AmbiguousDescriptorDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Diagnostic.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Diagnostic.class new file mode 100644 index 00000000000..a87a3c4f2d2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Diagnostic.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactory.class new file mode 100644 index 00000000000..a2143811227 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithMessageFormat.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithMessageFormat.class new file mode 100644 index 00000000000..12fdcba54b0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithMessageFormat.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement1.class new file mode 100644 index 00000000000..ca7e9c4d751 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement2.class new file mode 100644 index 00000000000..f140d8c3c89 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement3.class new file mode 100644 index 00000000000..0d0029ade2f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithPsiElement3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithSeverity.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithSeverity.class new file mode 100644 index 00000000000..c9b580ab7ff Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticFactoryWithSeverity.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder$1.class new file mode 100644 index 00000000000..4682da2eeb7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder$2.class new file mode 100644 index 00000000000..753c31e7a4f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder.class new file mode 100644 index 00000000000..8580c99e0c7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticHolder.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameter.class new file mode 100644 index 00000000000..6463d345593 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameterImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameterImpl.class new file mode 100644 index 00000000000..025a3ab99a7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameterImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameters.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameters.class new file mode 100644 index 00000000000..dba843045bd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticParameters.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticUtils.class new file mode 100644 index 00000000000..5d8909193b8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithParameterFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithParameterFactory.class new file mode 100644 index 00000000000..481fd8e7fc7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithParameterFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithParameters.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithParameters.class new file mode 100644 index 00000000000..98c8d75c2bd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithParameters.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithPsiElement.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithPsiElement.class new file mode 100644 index 00000000000..0163a2ef918 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithPsiElement.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithPsiElementImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithPsiElementImpl.class new file mode 100644 index 00000000000..c8da99fe0c7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithPsiElementImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithTextRange.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithTextRange.class new file mode 100644 index 00000000000..f6bbf9d31d2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/DiagnosticWithTextRange.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$1.class new file mode 100644 index 00000000000..194b1200421 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$10.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$10.class new file mode 100644 index 00000000000..4ea29d34e24 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$10.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$11.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$11.class new file mode 100644 index 00000000000..6383619fc84 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$11.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$12.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$12.class new file mode 100644 index 00000000000..eac7063b351 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$12.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$13.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$13.class new file mode 100644 index 00000000000..1361e20ec8a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$13.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$14.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$14.class new file mode 100644 index 00000000000..e4880ff6397 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$14.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$15.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$15.class new file mode 100644 index 00000000000..e937d9ffa7a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$15.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$16.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$16.class new file mode 100644 index 00000000000..bed389f38b0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$16.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$17.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$17.class new file mode 100644 index 00000000000..aecc53e05db Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$17.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$18.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$18.class new file mode 100644 index 00000000000..04050415760 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$18.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$19.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$19.class new file mode 100644 index 00000000000..861493ebab9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$19.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$2.class new file mode 100644 index 00000000000..03d6e5eb8c2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$20.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$20.class new file mode 100644 index 00000000000..6be9d7699b9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$20.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$21.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$21.class new file mode 100644 index 00000000000..27c9c274592 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$21.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$3.class new file mode 100644 index 00000000000..78554c8b93a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$4.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$4.class new file mode 100644 index 00000000000..0a592dabff9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$4.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$5.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$5.class new file mode 100644 index 00000000000..d0eed611738 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$5.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$6.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$6.class new file mode 100644 index 00000000000..ae270320b45 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$6.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$7.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$7.class new file mode 100644 index 00000000000..c9b0cec891b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$7.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$8.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$8.class new file mode 100644 index 00000000000..8d43ef08f26 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$8.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$9.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$9.class new file mode 100644 index 00000000000..3273b6f799e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$9.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$Initializer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$Initializer.class new file mode 100644 index 00000000000..d5d5e2b675b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors$Initializer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors.class new file mode 100644 index 00000000000..3a42f40a2a9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Errors.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/FunctionSignatureDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/FunctionSignatureDiagnosticFactory.class new file mode 100644 index 00000000000..940389e579d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/FunctionSignatureDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/GenericDiagnostic.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/GenericDiagnostic.class new file mode 100644 index 00000000000..398742220ee Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/GenericDiagnostic.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory1.class new file mode 100644 index 00000000000..f03f9beadaa Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory2.class new file mode 100644 index 00000000000..0ca320b4962 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory3.class new file mode 100644 index 00000000000..67dfece8dab Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/ParameterizedDiagnosticFactory3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory.class new file mode 100644 index 00000000000..974f3a4cef5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory1.class new file mode 100644 index 00000000000..8fb1e780e83 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory2.class new file mode 100644 index 00000000000..3606977743f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory3.class new file mode 100644 index 00000000000..bd69e29a91e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/PsiElementOnlyDiagnosticFactory3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic$RedeclarationDiagnosticWithDeferredResolution.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic$RedeclarationDiagnosticWithDeferredResolution.class new file mode 100644 index 00000000000..0bd14b4255d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic$RedeclarationDiagnosticWithDeferredResolution.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic$SimpleRedeclarationDiagnostic.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic$SimpleRedeclarationDiagnostic.class new file mode 100644 index 00000000000..46b2f46422b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic$SimpleRedeclarationDiagnostic.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic.class new file mode 100644 index 00000000000..543d2aa1492 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnostic.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnosticFactory.class new file mode 100644 index 00000000000..9316171544a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/RedeclarationDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Renderer$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Renderer$1.class new file mode 100644 index 00000000000..fd741f270be Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Renderer$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Renderer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Renderer.class new file mode 100644 index 00000000000..4bfcbae11bf Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Renderer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Severity.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Severity.class new file mode 100644 index 00000000000..5714d8c3a44 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/Severity.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimpleDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimpleDiagnosticFactory.class new file mode 100644 index 00000000000..f0ba7e8f798 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimpleDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimpleDiagnosticFactoryWithPsiElement.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimpleDiagnosticFactoryWithPsiElement.class new file mode 100644 index 00000000000..952e37fbb83 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimpleDiagnosticFactoryWithPsiElement.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimplePsiElementOnlyDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimplePsiElementOnlyDiagnosticFactory.class new file mode 100644 index 00000000000..cf989fb1a89 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/SimplePsiElementOnlyDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnresolvedReferenceDiagnostic.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnresolvedReferenceDiagnostic.class new file mode 100644 index 00000000000..f6d09387318 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnresolvedReferenceDiagnostic.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnresolvedReferenceDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnresolvedReferenceDiagnosticFactory.class new file mode 100644 index 00000000000..60d93722d82 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnresolvedReferenceDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnusedElementDiagnosticFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnusedElementDiagnosticFactory.class new file mode 100644 index 00000000000..288aa19c25f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/diagnostics/UnusedElementDiagnosticFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$At.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$At.class new file mode 100644 index 00000000000..5d3bba872bb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$At.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtFirstTokenOfTokens.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtFirstTokenOfTokens.class new file mode 100644 index 00000000000..ebc33ce1be8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtFirstTokenOfTokens.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtOffset.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtOffset.class new file mode 100644 index 00000000000..1b3f397ec1d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtOffset.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtSet.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtSet.class new file mode 100644 index 00000000000..0e26ef16bcd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing$AtSet.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing.class new file mode 100644 index 00000000000..6365cba4d2d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractJetParsing.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPattern.class new file mode 100644 index 00000000000..285445d047f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPredicate$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPredicate$1.class new file mode 100644 index 00000000000..59ce724c183 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPredicate$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPredicate.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPredicate.class new file mode 100644 index 00000000000..9110aa4afb9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/AbstractTokenStreamPredicate.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/Consumer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/Consumer.class new file mode 100644 index 00000000000..8b545ee979e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/Consumer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/FirstBefore.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/FirstBefore.class new file mode 100644 index 00000000000..809cc6ddfa0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/FirstBefore.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$1.class new file mode 100644 index 00000000000..36637c403c0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$1.class new file mode 100644 index 00000000000..aa3fd345d5f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$2.class new file mode 100644 index 00000000000..73f681631a7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$3.class new file mode 100644 index 00000000000..59fbbd66dc1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence.class new file mode 100644 index 00000000000..61627b2a9f0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing$Precedence.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing.class new file mode 100644 index 00000000000..bafbbd1da09 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetExpressionParsing.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParser.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParser.class new file mode 100644 index 00000000000..bb4425f0c0b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParser.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParserDefinition.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParserDefinition.class new file mode 100644 index 00000000000..8f32e0babd5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParserDefinition.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$1.class new file mode 100644 index 00000000000..3829fd714df Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$2.class new file mode 100644 index 00000000000..f0f9994d0c0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$TokenDetector.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$TokenDetector.class new file mode 100644 index 00000000000..3958059a680 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing$TokenDetector.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing.class new file mode 100644 index 00000000000..07fbe5b54d7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/JetParsing.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/LastBefore.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/LastBefore.class new file mode 100644 index 00000000000..95018ababec Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/LastBefore.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/MarkerAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/MarkerAdapter.class new file mode 100644 index 00000000000..73fe4fa5fe2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/MarkerAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilder.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilder.class new file mode 100644 index 00000000000..2cc223e7731 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilder.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderAdapter.class new file mode 100644 index 00000000000..adb2b23cdf4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderForByClause.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderForByClause.class new file mode 100644 index 00000000000..9c3d75566c3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderForByClause.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderImpl.class new file mode 100644 index 00000000000..f7275192187 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/SemanticWhitespaceAwarePsiBuilderImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TokenStreamPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TokenStreamPattern.class new file mode 100644 index 00000000000..16e0f1edd4b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TokenStreamPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TokenStreamPredicate.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TokenStreamPredicate.class new file mode 100644 index 00000000000..ce73a88834f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TokenStreamPredicate.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TruncatedSemanticWhitespaceAwarePsiBuilder.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TruncatedSemanticWhitespaceAwarePsiBuilder.class new file mode 100644 index 00000000000..06aaaa8e69d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/parsing/TruncatedSemanticWhitespaceAwarePsiBuilder.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/Call.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/Call.class new file mode 100644 index 00000000000..c7ac0323b47 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/Call.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotatedExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotatedExpression.class new file mode 100644 index 00000000000..dd1a9eae0b7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotatedExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotation.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotation.class new file mode 100644 index 00000000000..901ab6c86e5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotation.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotationEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotationEntry.class new file mode 100644 index 00000000000..6b17911cd90 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetAnnotationEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetArrayAccessExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetArrayAccessExpression.class new file mode 100644 index 00000000000..e6912ac6f72 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetArrayAccessExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBinaryExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBinaryExpression.class new file mode 100644 index 00000000000..180736ef0f4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBinaryExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBinaryExpressionWithTypeRHS.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBinaryExpressionWithTypeRHS.class new file mode 100644 index 00000000000..c1f067c8ea5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBinaryExpressionWithTypeRHS.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBindingPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBindingPattern.class new file mode 100644 index 00000000000..abdba24c021 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBindingPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBlockExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBlockExpression.class new file mode 100644 index 00000000000..293d335d144 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBlockExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBlockStringTemplateEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBlockStringTemplateEntry.class new file mode 100644 index 00000000000..74236af1aa3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBlockStringTemplateEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBreakExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBreakExpression.class new file mode 100644 index 00000000000..828e619fbd9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetBreakExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCallElement.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCallElement.class new file mode 100644 index 00000000000..bbd2a6db034 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCallElement.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCallExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCallExpression.class new file mode 100644 index 00000000000..f1861928211 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCallExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCatchClause.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCatchClause.class new file mode 100644 index 00000000000..210ee9a4d0c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetCatchClause.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClass.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClass.class new file mode 100644 index 00000000000..b95572a1b0b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClass.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassBody.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassBody.class new file mode 100644 index 00000000000..3f9338f0436 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassBody.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassInitializer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassInitializer.class new file mode 100644 index 00000000000..387fb341ce8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassInitializer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassObject.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassObject.class new file mode 100644 index 00000000000..2c0ed64d89c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassObject.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassOrObject.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassOrObject.class new file mode 100644 index 00000000000..623b4aad2a3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetClassOrObject.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetConstantExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetConstantExpression.class new file mode 100644 index 00000000000..67ef9a99f84 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetConstantExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetConstructorCalleeExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetConstructorCalleeExpression.class new file mode 100644 index 00000000000..f73cd423ffe Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetConstructorCalleeExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetContainerNode.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetContainerNode.class new file mode 100644 index 00000000000..75769b198f3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetContainerNode.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetContinueExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetContinueExpression.class new file mode 100644 index 00000000000..c5b6735a258 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetContinueExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDeclaration.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDeclaration.class new file mode 100644 index 00000000000..e41968e86cf Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDeclaration.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDeclarationWithBody.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDeclarationWithBody.class new file mode 100644 index 00000000000..d53a9d74082 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDeclarationWithBody.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDecomposerPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDecomposerPattern.class new file mode 100644 index 00000000000..5d2731b94e1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDecomposerPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegationSpecifier.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegationSpecifier.class new file mode 100644 index 00000000000..4d7da3e416a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegationSpecifier.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegationSpecifierList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegationSpecifierList.class new file mode 100644 index 00000000000..a68a4250c22 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegationSpecifierList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorByExpressionSpecifier.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorByExpressionSpecifier.class new file mode 100644 index 00000000000..8b88641d7b9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorByExpressionSpecifier.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToSuperCall.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToSuperCall.class new file mode 100644 index 00000000000..863b95174e9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToSuperCall.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToSuperClass.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToSuperClass.class new file mode 100644 index 00000000000..37041b2e5f7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToSuperClass.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToThisCall.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToThisCall.class new file mode 100644 index 00000000000..d3842e854b5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDelegatorToThisCall.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDoWhileExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDoWhileExpression.class new file mode 100644 index 00000000000..6131dffa9cd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDoWhileExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDotQualifiedExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDotQualifiedExpression.class new file mode 100644 index 00000000000..4fc13f479f3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetDotQualifiedExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetElement$IfNotParsed.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetElement$IfNotParsed.class new file mode 100644 index 00000000000..4ca366696bc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetElement$IfNotParsed.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetElement.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetElement.class new file mode 100644 index 00000000000..6fc0cdef755 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetElement.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetEnumEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetEnumEntry.class new file mode 100644 index 00000000000..656f65ab778 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetEnumEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetEscapeStringTemplateEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetEscapeStringTemplateEntry.class new file mode 100644 index 00000000000..1404c219861 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetEscapeStringTemplateEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetExpression.class new file mode 100644 index 00000000000..b1749da1af1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetExpressionPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetExpressionPattern.class new file mode 100644 index 00000000000..ee3a368b7f1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetExpressionPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFile.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFile.class new file mode 100644 index 00000000000..2ac0739afb5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFile.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFinallySection.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFinallySection.class new file mode 100644 index 00000000000..a129576ca75 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFinallySection.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetForExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetForExpression.class new file mode 100644 index 00000000000..940f68bc316 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetForExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunction.class new file mode 100644 index 00000000000..866ae120300 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionLiteral.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionLiteral.class new file mode 100644 index 00000000000..2e3635fb987 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionLiteral.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionLiteralExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionLiteralExpression.class new file mode 100644 index 00000000000..a95fb61defa Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionLiteralExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionType.class new file mode 100644 index 00000000000..1f8fa6e179a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetFunctionType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetHashQualifiedExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetHashQualifiedExpression.class new file mode 100644 index 00000000000..1caabc9cf31 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetHashQualifiedExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIdeTemplateExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIdeTemplateExpression.class new file mode 100644 index 00000000000..fd5536453fe Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIdeTemplateExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIfExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIfExpression.class new file mode 100644 index 00000000000..dc642d20c0c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIfExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetImportDirective.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetImportDirective.class new file mode 100644 index 00000000000..fb803bf3d14 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetImportDirective.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetInitializerList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetInitializerList.class new file mode 100644 index 00000000000..fe984a34bf8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetInitializerList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIsExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIsExpression.class new file mode 100644 index 00000000000..abb91eebbcd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetIsExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLabelQualifiedExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLabelQualifiedExpression.class new file mode 100644 index 00000000000..fd6249dc3c1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLabelQualifiedExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLabelQualifiedInstanceExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLabelQualifiedInstanceExpression.class new file mode 100644 index 00000000000..469254e7f2e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLabelQualifiedInstanceExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLiteralStringTemplateEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLiteralStringTemplateEntry.class new file mode 100644 index 00000000000..af796350a2d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLiteralStringTemplateEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLoopExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLoopExpression.class new file mode 100644 index 00000000000..be2b69f290a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetLoopExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetModifierList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetModifierList.class new file mode 100644 index 00000000000..68358338524 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetModifierList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetModifierListOwner.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetModifierListOwner.class new file mode 100644 index 00000000000..dcaf91100c9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetModifierListOwner.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedArgumentImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedArgumentImpl.class new file mode 100644 index 00000000000..18f06d70fc8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedArgumentImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedDeclaration.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedDeclaration.class new file mode 100644 index 00000000000..fd49be525e4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedDeclaration.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedFunction.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedFunction.class new file mode 100644 index 00000000000..0077bb0a066 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamedFunction.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamespaceBody.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamespaceBody.class new file mode 100644 index 00000000000..d3103115372 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamespaceBody.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamespaceHeader.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamespaceHeader.class new file mode 100644 index 00000000000..0b78e9381ad Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNamespaceHeader.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNullableType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNullableType.class new file mode 100644 index 00000000000..bdb1d073a87 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetNullableType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectDeclaration.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectDeclaration.class new file mode 100644 index 00000000000..ef581b089f1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectDeclaration.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectDeclarationName.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectDeclarationName.class new file mode 100644 index 00000000000..b5cfefc48b9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectDeclarationName.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectLiteralExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectLiteralExpression.class new file mode 100644 index 00000000000..c5c1fb5e53d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetObjectLiteralExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetOperationExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetOperationExpression.class new file mode 100644 index 00000000000..38eb5df8a0c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetOperationExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParameter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParameter.class new file mode 100644 index 00000000000..b0cc607208a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParameter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParameterList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParameterList.class new file mode 100644 index 00000000000..1b0214ad3ac Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParameterList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParenthesizedExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParenthesizedExpression.class new file mode 100644 index 00000000000..53f42ab0d0b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetParenthesizedExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPattern.class new file mode 100644 index 00000000000..ff64fac5c82 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPostfixExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPostfixExpression.class new file mode 100644 index 00000000000..be9fbe7e7a0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPostfixExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPredicateExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPredicateExpression.class new file mode 100644 index 00000000000..d888c17f348 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPredicateExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPrefixExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPrefixExpression.class new file mode 100644 index 00000000000..8257aae7cc2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPrefixExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetProjectionKind.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetProjectionKind.class new file mode 100644 index 00000000000..1e2a9b8e289 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetProjectionKind.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetProperty.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetProperty.class new file mode 100644 index 00000000000..8f0de269a32 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetProperty.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPropertyAccessor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPropertyAccessor.class new file mode 100644 index 00000000000..56f41172362 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPropertyAccessor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiFactory.class new file mode 100644 index 00000000000..3d9c1aae2ed Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiUtil$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiUtil$1.class new file mode 100644 index 00000000000..cf16bcf8521 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiUtil$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiUtil.class new file mode 100644 index 00000000000..bd5dc5ad145 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetPsiUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetQualifiedExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetQualifiedExpression.class new file mode 100644 index 00000000000..8fa28c3a48b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetQualifiedExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetReferenceExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetReferenceExpression.class new file mode 100644 index 00000000000..b138ee56931 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetReferenceExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetReturnExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetReturnExpression.class new file mode 100644 index 00000000000..e297c34fbf5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetReturnExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetRootNamespaceExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetRootNamespaceExpression.class new file mode 100644 index 00000000000..56740c4613c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetRootNamespaceExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSafeQualifiedExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSafeQualifiedExpression.class new file mode 100644 index 00000000000..176ff3e99e0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSafeQualifiedExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSecondaryConstructor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSecondaryConstructor.class new file mode 100644 index 00000000000..96143b46d6d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSecondaryConstructor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSelfType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSelfType.class new file mode 100644 index 00000000000..61c41d0cf01 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSelfType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSimpleNameExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSimpleNameExpression.class new file mode 100644 index 00000000000..ac9c289165e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSimpleNameExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSimpleNameStringTemplateEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSimpleNameStringTemplateEntry.class new file mode 100644 index 00000000000..d97022c59f7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSimpleNameStringTemplateEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStatementExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStatementExpression.class new file mode 100644 index 00000000000..089f3fa8cad Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStatementExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateEntry.class new file mode 100644 index 00000000000..303dc8bac01 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateEntryWithExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateEntryWithExpression.class new file mode 100644 index 00000000000..6e7d48e71aa Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateEntryWithExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateExpression.class new file mode 100644 index 00000000000..b5fa824b051 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetStringTemplateExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSuperExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSuperExpression.class new file mode 100644 index 00000000000..996ab22e63d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetSuperExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThisExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThisExpression.class new file mode 100644 index 00000000000..6050c837760 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThisExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThisReferenceExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThisReferenceExpression.class new file mode 100644 index 00000000000..92d4bb771b7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThisReferenceExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThrowExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThrowExpression.class new file mode 100644 index 00000000000..3086e82bfc5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetThrowExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTreeVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTreeVisitor.class new file mode 100644 index 00000000000..a11ddde2581 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTreeVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTryExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTryExpression.class new file mode 100644 index 00000000000..d644cdfcd95 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTryExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTupleExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTupleExpression.class new file mode 100644 index 00000000000..00fcebbb194 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTupleExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTuplePattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTuplePattern.class new file mode 100644 index 00000000000..b2da11e351d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTuplePattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTuplePatternEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTuplePatternEntry.class new file mode 100644 index 00000000000..b20dffd0749 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTuplePatternEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTupleType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTupleType.class new file mode 100644 index 00000000000..7c687d1a34a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTupleType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeArgumentList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeArgumentList.class new file mode 100644 index 00000000000..ec272f2a750 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeArgumentList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeConstraint.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeConstraint.class new file mode 100644 index 00000000000..6b6233fd42c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeConstraint.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeConstraintList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeConstraintList.class new file mode 100644 index 00000000000..f4ee6a34a36 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeConstraintList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeElement.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeElement.class new file mode 100644 index 00000000000..b452339ba6b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeElement.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameter.class new file mode 100644 index 00000000000..e1386853f0f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameterList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameterList.class new file mode 100644 index 00000000000..7f2c050a081 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameterList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameterListOwner.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameterListOwner.class new file mode 100644 index 00000000000..eb3cb4c63ab Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeParameterListOwner.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypePattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypePattern.class new file mode 100644 index 00000000000..510ef717920 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypePattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeProjection.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeProjection.class new file mode 100644 index 00000000000..2254a9d92aa Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeProjection.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeReference.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeReference.class new file mode 100644 index 00000000000..71f63ad545f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypeReference.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypedef.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypedef.class new file mode 100644 index 00000000000..cb3adcbba2f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetTypedef.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetUnaryExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetUnaryExpression.class new file mode 100644 index 00000000000..a9f53dce1fe Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetUnaryExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetUserType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetUserType.class new file mode 100644 index 00000000000..f802ec788a4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetUserType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgument.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgument.class new file mode 100644 index 00000000000..d85e8c26680 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgument.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgumentList.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgumentList.class new file mode 100644 index 00000000000..9cace34c7e2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgumentList.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgumentName.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgumentName.class new file mode 100644 index 00000000000..8f09cde3432 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetValueArgumentName.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetVisitor.class new file mode 100644 index 00000000000..79abc416886 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetVisitorVoid.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetVisitorVoid.class new file mode 100644 index 00000000000..38f7ace5401 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetVisitorVoid.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenCondition.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenCondition.class new file mode 100644 index 00000000000..50c3cbc04be Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenCondition.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionInRange.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionInRange.class new file mode 100644 index 00000000000..bf2d0941806 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionInRange.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionIsPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionIsPattern.class new file mode 100644 index 00000000000..53bd23af924 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionIsPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionWithExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionWithExpression.class new file mode 100644 index 00000000000..9dd3620d485 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenConditionWithExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenEntry.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenEntry.class new file mode 100644 index 00000000000..3e7a8556c9f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenEntry.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenExpression.class new file mode 100644 index 00000000000..459774194f4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhenExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhileExpression.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhileExpression.class new file mode 100644 index 00000000000..c5753302f27 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWhileExpression.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWildcardPattern.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWildcardPattern.class new file mode 100644 index 00000000000..ce5618cb149 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/JetWildcardPattern.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/ValueArgument.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/ValueArgument.class new file mode 100644 index 00000000000..f47c2dc2622 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/ValueArgument.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetClassStub.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetClassStub.class new file mode 100644 index 00000000000..99ca48f179c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetClassStub.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetFileStub.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetFileStub.class new file mode 100644 index 00000000000..a325f811f41 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetFileStub.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetFunctionStub.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetFunctionStub.class new file mode 100644 index 00000000000..d74f3944ca8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/PsiJetFunctionStub.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetClassElementType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetClassElementType.class new file mode 100644 index 00000000000..99ebc96bd33 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetClassElementType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFileElementType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFileElementType.class new file mode 100644 index 00000000000..e988141e429 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFileElementType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFileStubBuilder.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFileStubBuilder.class new file mode 100644 index 00000000000..de771321708 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFileStubBuilder.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFunctionElementType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFunctionElementType.class new file mode 100644 index 00000000000..9eba021fa1f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetFunctionElementType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetStubElementType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetStubElementType.class new file mode 100644 index 00000000000..711b1a14021 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetStubElementType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetStubElementTypes.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetStubElementTypes.class new file mode 100644 index 00000000000..5b41a785823 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/JetStubElementTypes.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexService$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexService$1.class new file mode 100644 index 00000000000..f2e6f03569a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexService$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexService.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexService.class new file mode 100644 index 00000000000..56c5f1e0e17 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexService.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexServiceFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexServiceFactory.class new file mode 100644 index 00000000000..9adc74ca5cf Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/elements/StubIndexServiceFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetClassStubImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetClassStubImpl.class new file mode 100644 index 00000000000..0f6f14ae38b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetClassStubImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetFileStubImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetFileStubImpl.class new file mode 100644 index 00000000000..b0d8b8b57c0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetFileStubImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetFunctionStubImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetFunctionStubImpl.class new file mode 100644 index 00000000000..fc588a62dde Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/psi/stubs/impl/PsiJetFunctionStubImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AbstractScopeAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AbstractScopeAdapter.class new file mode 100644 index 00000000000..af970c9624b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AbstractScopeAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$1.class new file mode 100644 index 00000000000..7e69bd109e4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$2.class new file mode 100644 index 00000000000..41042a2fb06 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$3.class new file mode 100644 index 00000000000..5e4a6c5e936 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils.class new file mode 100644 index 00000000000..e223f04a20c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnalyzingUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnnotationResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnnotationResolver$1.class new file mode 100644 index 00000000000..030b457aba2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnnotationResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnnotationResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnnotationResolver.class new file mode 100644 index 00000000000..fcb386be8eb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/AnnotationResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$1.class new file mode 100644 index 00000000000..ac7104871a9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$2.class new file mode 100644 index 00000000000..39987628f98 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$3.class new file mode 100644 index 00000000000..37f019f17dc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext.class new file mode 100644 index 00000000000..360ea6535e2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContext.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContextUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContextUtils.class new file mode 100644 index 00000000000..277085c22e6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingContextUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTrace.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTrace.class new file mode 100644 index 00000000000..2a07b082889 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTrace.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTraceContext$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTraceContext$1.class new file mode 100644 index 00000000000..2e5082d5028 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTraceContext$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTraceContext.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTraceContext.class new file mode 100644 index 00000000000..2d77a9a3c19 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BindingTraceContext.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$1.class new file mode 100644 index 00000000000..0086a259692 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$2.class new file mode 100644 index 00000000000..436dfc9325f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$3.class new file mode 100644 index 00000000000..3d0cd23087e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$4.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$4.class new file mode 100644 index 00000000000..66a19e596ae Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver$4.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver.class new file mode 100644 index 00000000000..a829b0c03cc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/BodyResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ControlFlowAnalyzer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ControlFlowAnalyzer.class new file mode 100644 index 00000000000..440fd687e89 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ControlFlowAnalyzer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationResolver$1.class new file mode 100644 index 00000000000..fd38a314219 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationResolver.class new file mode 100644 index 00000000000..603911c6e8a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationsChecker.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationsChecker.class new file mode 100644 index 00000000000..636258db55e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DeclarationsChecker.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegatingBindingTrace$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegatingBindingTrace$1.class new file mode 100644 index 00000000000..ed371116764 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegatingBindingTrace$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegatingBindingTrace.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegatingBindingTrace.class new file mode 100644 index 00000000000..54519b23dbe Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegatingBindingTrace.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegationResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegationResolver.class new file mode 100644 index 00000000000..a68d782dec0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DelegationResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver$1.class new file mode 100644 index 00000000000..e0c8bc1a7ae Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver$2.class new file mode 100644 index 00000000000..278454aef4a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver.class new file mode 100644 index 00000000000..e67dd7e18cd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$1.class new file mode 100644 index 00000000000..17767f69efd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$2.class new file mode 100644 index 00000000000..42647f7ff8f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$3.class new file mode 100644 index 00000000000..27fae4f56ac Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils.class new file mode 100644 index 00000000000..5778d233a92 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/DescriptorUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer$DelayedImporter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer$DelayedImporter.class new file mode 100644 index 00000000000..7e24e879eef Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer$DelayedImporter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer$StandardImporter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer$StandardImporter.class new file mode 100644 index 00000000000..7910ec8931c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer$StandardImporter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer.class new file mode 100644 index 00000000000..5bbcc907d43 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/Importer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver$1.class new file mode 100644 index 00000000000..7cc70bf0dcb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver$2.class new file mode 100644 index 00000000000..e951a1408de Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver.class new file mode 100644 index 00000000000..9b8ace2f65c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver$ImportResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver.class new file mode 100644 index 00000000000..1012a9e8012 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ImportsResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/JetModuleUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/JetModuleUtil.class new file mode 100644 index 00000000000..58b3276d1e9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/JetModuleUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/JetVisibilityChecker.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/JetVisibilityChecker.class new file mode 100644 index 00000000000..52d6c24c746 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/JetVisibilityChecker.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ObservableBindingTrace$RecordHandler.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ObservableBindingTrace$RecordHandler.class new file mode 100644 index 00000000000..7989dfe7170 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ObservableBindingTrace$RecordHandler.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ObservableBindingTrace.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ObservableBindingTrace.class new file mode 100644 index 00000000000..3a446bf475c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/ObservableBindingTrace.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadResolver$Key.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadResolver$Key.class new file mode 100644 index 00000000000..f2e90e4b6f9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadResolver$Key.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadResolver.class new file mode 100644 index 00000000000..d15dfd4bf53 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadUtil$OverloadCompatibilityInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadUtil$OverloadCompatibilityInfo.class new file mode 100644 index 00000000000..df0541ef302 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadUtil$OverloadCompatibilityInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadUtil.class new file mode 100644 index 00000000000..2cf60b2c57f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverloadUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$1.class new file mode 100644 index 00000000000..cbbd0a54aa5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$2.class new file mode 100644 index 00000000000..5daf2017411 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$DescriptorSink.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$DescriptorSink.class new file mode 100644 index 00000000000..3636b186c46 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver$DescriptorSink.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver.class new file mode 100644 index 00000000000..f5e22452815 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverrideResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverridingUtil$OverrideCompatibilityInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverridingUtil$OverrideCompatibilityInfo.class new file mode 100644 index 00000000000..a2d9cad60e3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverridingUtil$OverrideCompatibilityInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverridingUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverridingUtil.class new file mode 100644 index 00000000000..d6198fc92bd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/OverridingUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TemporaryBindingTrace.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TemporaryBindingTrace.class new file mode 100644 index 00000000000..ba174955bdd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TemporaryBindingTrace.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalysisContext.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalysisContext.class new file mode 100644 index 00000000000..cc567599dd1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalysisContext.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalyzer$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalyzer$1.class new file mode 100644 index 00000000000..cf1ace71b21 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalyzer$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalyzer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalyzer.class new file mode 100644 index 00000000000..2d1c21ce39f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TopDownAnalyzer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TraceBasedRedeclarationHandler.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TraceBasedRedeclarationHandler.class new file mode 100644 index 00000000000..539a52fe770 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TraceBasedRedeclarationHandler.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$1$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$1$1.class new file mode 100644 index 00000000000..4fd8c885553 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$1$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$1.class new file mode 100644 index 00000000000..715d0e0d1b9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$2.class new file mode 100644 index 00000000000..dc8a647426d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter$1.class new file mode 100644 index 00000000000..93e0e9f9b73 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter$2.class new file mode 100644 index 00000000000..bb19bb7d8ea Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter.class new file mode 100644 index 00000000000..fab3f508ff3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver$Filter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver.class new file mode 100644 index 00000000000..8b35edb62bc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeHierarchyResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$1.class new file mode 100644 index 00000000000..ce357ca378a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$2.class new file mode 100644 index 00000000000..9317929118b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$3.class new file mode 100644 index 00000000000..ea56e6c90da Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver.class new file mode 100644 index 00000000000..5c2c422abc8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/TypeResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/AutoCastReceiver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/AutoCastReceiver.class new file mode 100644 index 00000000000..437031754cc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/AutoCastReceiver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$1.class new file mode 100644 index 00000000000..cd9368af037 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$CallImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$CallImpl.class new file mode 100644 index 00000000000..7295a51b82a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$CallImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$ExpressionValueArgument.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$ExpressionValueArgument.class new file mode 100644 index 00000000000..98f1d61965d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker$ExpressionValueArgument.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker.class new file mode 100644 index 00000000000..bb215ff2425 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallMaker.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver$1.class new file mode 100644 index 00000000000..d5630105ff5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver$2.class new file mode 100644 index 00000000000..bcb3b022589 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver.class new file mode 100644 index 00000000000..9feafed1669 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/CallResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/DefaultValueArgument.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/DefaultValueArgument.class new file mode 100644 index 00000000000..a5ed66f6888 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/DefaultValueArgument.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ExpressionAsFunctionDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ExpressionAsFunctionDescriptor.class new file mode 100644 index 00000000000..335325383a6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ExpressionAsFunctionDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ExpressionValueArgument.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ExpressionValueArgument.class new file mode 100644 index 00000000000..d8e4db7a259 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ExpressionValueArgument.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/JetFakeReference.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/JetFakeReference.class new file mode 100644 index 00000000000..62aca8c3767 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/JetFakeReference.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResults$Code.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResults$Code.class new file mode 100644 index 00000000000..299f1b30b28 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResults$Code.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResults.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResults.class new file mode 100644 index 00000000000..cb4fd48794e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResults.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResultsImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResultsImpl.class new file mode 100644 index 00000000000..f392a54482d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResultsImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResultsUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResultsUtil.class new file mode 100644 index 00000000000..447412deb5c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadResolutionResultsUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadingConflictResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadingConflictResolver$1.class new file mode 100644 index 00000000000..af379ea2993 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadingConflictResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadingConflictResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadingConflictResolver.class new file mode 100644 index 00000000000..0ad6f570be4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/OverloadingConflictResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$1.class new file mode 100644 index 00000000000..39de974084e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$2.class new file mode 100644 index 00000000000..384e8ce8834 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$AbstractData.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$AbstractData.class new file mode 100644 index 00000000000..b99d547a64d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$AbstractData.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$Data.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$Data.class new file mode 100644 index 00000000000..f5f638e4960 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$Data.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$DataImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$DataImpl.class new file mode 100644 index 00000000000..26447d250cd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$DataImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$One.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$One.class new file mode 100644 index 00000000000..45b9d282013 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo$One.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo.class new file mode 100644 index 00000000000..2048c7a75f6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionDebugInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionStatus.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionStatus.class new file mode 100644 index 00000000000..a49254c7a3c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionStatus.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionTask$DescriptorCheckStrategy.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionTask$DescriptorCheckStrategy.class new file mode 100644 index 00000000000..9a9db3b0e53 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionTask$DescriptorCheckStrategy.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionTask.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionTask.class new file mode 100644 index 00000000000..5f64556102d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolutionTask.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCall.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCall.class new file mode 100644 index 00000000000..c0979aeb1e8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCall.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl$1.class new file mode 100644 index 00000000000..1a3505f0226 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl$2.class new file mode 100644 index 00000000000..f129760219a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl.class new file mode 100644 index 00000000000..d12fa25d2a5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedCallImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedValueArgument.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedValueArgument.class new file mode 100644 index 00000000000..dcf48cbd6d8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ResolvedValueArgument.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizer.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizer.class new file mode 100644 index 00000000000..c356e2a3835 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$1.class new file mode 100644 index 00000000000..056b8453286 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$2$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$2$1.class new file mode 100644 index 00000000000..fd225deea5d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$2$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$2.class new file mode 100644 index 00000000000..7bca0cf32d5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$3.class new file mode 100644 index 00000000000..2775de1db6b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers.class new file mode 100644 index 00000000000..dd130c39858 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TaskPrioritizers.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TracingStrategy$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TracingStrategy$1.class new file mode 100644 index 00000000000..c88e4126d0a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TracingStrategy$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TracingStrategy.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TracingStrategy.class new file mode 100644 index 00000000000..9099fb5d836 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/TracingStrategy.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ValueArgumentsToParametersMapper.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ValueArgumentsToParametersMapper.class new file mode 100644 index 00000000000..96030e5e9f2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/ValueArgumentsToParametersMapper.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/VarargValueArgument.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/VarargValueArgument.class new file mode 100644 index 00000000000..46d8dd45c96 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/VarargValueArgument.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastService$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastService$1.class new file mode 100644 index 00000000000..044e99bffba Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastService$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastService.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastService.class new file mode 100644 index 00000000000..5d483323864 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastService.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastServiceImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastServiceImpl.class new file mode 100644 index 00000000000..ca0a9859a98 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastServiceImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastUtils$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastUtils$1.class new file mode 100644 index 00000000000..345775606fa Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastUtils$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastUtils.class new file mode 100644 index 00000000000..8f2e646a2b0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/AutoCastUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$1.class new file mode 100644 index 00000000000..b43fdf78510 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$2.class new file mode 100644 index 00000000000..0c3cf0a02ea Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$CompositionOperator.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$CompositionOperator.class new file mode 100644 index 00000000000..375b14fb948 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo$CompositionOperator.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo.class new file mode 100644 index 00000000000..9a1b2c53c5d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowInfo.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowValue.class new file mode 100644 index 00000000000..578df72a7e6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowValueFactory.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowValueFactory.class new file mode 100644 index 00000000000..0b5ae60941e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/DataFlowValueFactory.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/Nullability$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/Nullability$1.class new file mode 100644 index 00000000000..07d04f6307d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/Nullability$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/Nullability.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/Nullability.class new file mode 100644 index 00000000000..cdc945b9f95 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/autocasts/Nullability.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/BoundsOwner.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/BoundsOwner.class new file mode 100644 index 00000000000..94d707f6594 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/BoundsOwner.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintResolutionListener$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintResolutionListener$1.class new file mode 100644 index 00000000000..97d382f22d9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintResolutionListener$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintResolutionListener.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintResolutionListener.class new file mode 100644 index 00000000000..ef6001026e1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintResolutionListener.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystem.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystem.class new file mode 100644 index 00000000000..ffc953c782c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystem.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$1.class new file mode 100644 index 00000000000..e1e35fa83b2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$2.class new file mode 100644 index 00000000000..660d2f646a3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Error.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Error.class new file mode 100644 index 00000000000..c6385a84e7f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Error.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$KnownType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$KnownType.class new file mode 100644 index 00000000000..e1ed388ea4a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$KnownType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$LoopInTypeVariableConstraintsException.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$LoopInTypeVariableConstraintsException.class new file mode 100644 index 00000000000..a9ccf3016e9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$LoopInTypeVariableConstraintsException.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Solution$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Solution$1.class new file mode 100644 index 00000000000..20187847e8e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Solution$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Solution.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Solution.class new file mode 100644 index 00000000000..e317b3bb72a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$Solution.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$TypeConstraintBuilderAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$TypeConstraintBuilderAdapter.class new file mode 100644 index 00000000000..d8872666d36 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$TypeConstraintBuilderAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$TypeValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$TypeValue.class new file mode 100644 index 00000000000..f03cdf76e71 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$TypeValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$UnknownType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$UnknownType.class new file mode 100644 index 00000000000..1eef3e46ff4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl$UnknownType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.class new file mode 100644 index 00000000000..f93dff55fa9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemSolution.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemSolution.class new file mode 100644 index 00000000000..5962ff08fa4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemSolution.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$1.class new file mode 100644 index 00000000000..bb900749ef4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$2.class new file mode 100644 index 00000000000..d1fa5d7f6e5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Error.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Error.class new file mode 100644 index 00000000000..092b0d622cc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Error.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$LoopInTypeVariableConstraintsException.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$LoopInTypeVariableConstraintsException.class new file mode 100644 index 00000000000..3da73c0a39e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$LoopInTypeVariableConstraintsException.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Solution$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Solution$1.class new file mode 100644 index 00000000000..597f862ee92 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Solution$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Solution.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Solution.class new file mode 100644 index 00000000000..169636f63e6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$Solution.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$TypeConstraintBuilderAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$TypeConstraintBuilderAdapter.class new file mode 100644 index 00000000000..87cd8bf6e30 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities$TypeConstraintBuilderAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities.class new file mode 100644 index 00000000000..ee958dc7ed0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemWithPriorities.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintType.class new file mode 100644 index 00000000000..8ac8a439418 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/DebugConstraintResolutionListener.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/DebugConstraintResolutionListener.class new file mode 100644 index 00000000000..021559ecd8a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/DebugConstraintResolutionListener.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/PrintingConstraintResolutionListener.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/PrintingConstraintResolutionListener.class new file mode 100644 index 00000000000..ec2d53927e9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/PrintingConstraintResolutionListener.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SolutionStatus$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SolutionStatus$1.class new file mode 100644 index 00000000000..2e499b3c7f2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SolutionStatus$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SolutionStatus.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SolutionStatus.class new file mode 100644 index 00000000000..6b06fecf970 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SolutionStatus.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SubtypingConstraint.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SubtypingConstraint.class new file mode 100644 index 00000000000..e84e7a149e8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/SubtypingConstraint.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/TypeValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/TypeValue.class new file mode 100644 index 00000000000..fd679f83df3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/calls/inference/TypeValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/BooleanValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/BooleanValue.class new file mode 100644 index 00000000000..f4557c5a626 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/BooleanValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ByteValue$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ByteValue$1.class new file mode 100644 index 00000000000..14dec1a43cc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ByteValue$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ByteValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ByteValue.class new file mode 100644 index 00000000000..b0809cefe9d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ByteValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CharValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CharValue.class new file mode 100644 index 00000000000..c29adf23559 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CharValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstant.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstant.class new file mode 100644 index 00000000000..dc1f661ed63 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstant.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstantResolver$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstantResolver$1.class new file mode 100644 index 00000000000..1ffb79b8a6d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstantResolver$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstantResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstantResolver.class new file mode 100644 index 00000000000..befe17ff1f3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/CompileTimeConstantResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/DoubleValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/DoubleValue.class new file mode 100644 index 00000000000..5d698d22457 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/DoubleValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ErrorValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ErrorValue.class new file mode 100644 index 00000000000..3829b1f14e9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ErrorValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/FloatValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/FloatValue.class new file mode 100644 index 00000000000..647a757a213 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/FloatValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/IntValue$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/IntValue$1.class new file mode 100644 index 00000000000..d2386bd082a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/IntValue$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/IntValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/IntValue.class new file mode 100644 index 00000000000..5dfcea0bc3d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/IntValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/LongValue$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/LongValue$1.class new file mode 100644 index 00000000000..3b2ae1c6297 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/LongValue$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/LongValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/LongValue.class new file mode 100644 index 00000000000..7530a14876c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/LongValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/NullValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/NullValue.class new file mode 100644 index 00000000000..ff6d9afb4f6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/NullValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ShortValue$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ShortValue$1.class new file mode 100644 index 00000000000..f8e9bab8c5b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ShortValue$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ShortValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ShortValue.class new file mode 100644 index 00000000000..6fb039880ab Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/ShortValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/StringValue.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/StringValue.class new file mode 100644 index 00000000000..3bb73292a0e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/constants/StringValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/ChainedScope.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/ChainedScope.class new file mode 100644 index 00000000000..772eb6c3df3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/ChainedScope.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScope$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScope$1.class new file mode 100644 index 00000000000..5a75eb03f82 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScope$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScope.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScope.class new file mode 100644 index 00000000000..a8c11ff1ad2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScope.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeAdapter.class new file mode 100644 index 00000000000..742f0748158 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeImpl.class new file mode 100644 index 00000000000..d94a55a2250 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeUtils.class new file mode 100644 index 00000000000..66923d77173 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/JetScopeUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/LazyScopeAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/LazyScopeAdapter.class new file mode 100644 index 00000000000..8e30dbee50d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/LazyScopeAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler$1.class new file mode 100644 index 00000000000..1df28725960 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler$2.class new file mode 100644 index 00000000000..de64ca80373 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler.class new file mode 100644 index 00000000000..153ea9d9440 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/RedeclarationHandler.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.class new file mode 100644 index 00000000000..af0f77faf4f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScope$LockLevel.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScope$LockLevel.class new file mode 100644 index 00000000000..62fd43d442d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScope$LockLevel.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScope.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScope.class new file mode 100644 index 00000000000..e0c1c8f07ab Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScope.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.class new file mode 100644 index 00000000000..110b87e36be Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScopeWithImports.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScopeWithImports.class new file mode 100644 index 00000000000..0f99c57bc20 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WritableScopeWithImports.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WriteThroughScope.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WriteThroughScope.class new file mode 100644 index 00000000000..8b04947e527 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/WriteThroughScope.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/AbstractReceiverDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/AbstractReceiverDescriptor.class new file mode 100644 index 00000000000..6e51d316c84 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/AbstractReceiverDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ClassReceiver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ClassReceiver.class new file mode 100644 index 00000000000..1697daf2555 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ClassReceiver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ExpressionReceiver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ExpressionReceiver.class new file mode 100644 index 00000000000..6af7e42c24a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ExpressionReceiver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ExtensionReceiver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ExtensionReceiver.class new file mode 100644 index 00000000000..ac3a2a8c555 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ExtensionReceiver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptor$1.class new file mode 100644 index 00000000000..c087bbb1b86 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptor.class new file mode 100644 index 00000000000..465528bd6e8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptorVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptorVisitor.class new file mode 100644 index 00000000000..ff61115fdf0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ReceiverDescriptorVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ThisReceiverDescriptor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ThisReceiverDescriptor.class new file mode 100644 index 00000000000..c4cece0afe7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/ThisReceiverDescriptor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/TransientReceiver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/TransientReceiver.class new file mode 100644 index 00000000000..ed4741d4566 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/resolve/scopes/receivers/TransientReceiver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$1.class new file mode 100644 index 00000000000..8fa770b5138 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$2.class new file mode 100644 index 00000000000..e1152f28511 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$DfsNodeHandler.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$DfsNodeHandler.class new file mode 100644 index 00000000000..5eb5c165846 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes$DfsNodeHandler.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes.class new file mode 100644 index 00000000000..9d4addcd252 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CommonSupertypes.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CompositeTypeSubstitution.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CompositeTypeSubstitution.class new file mode 100644 index 00000000000..1d22d5c9d68 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/CompositeTypeSubstitution.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DeferredType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DeferredType.class new file mode 100644 index 00000000000..dd3ea5874e7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DeferredType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DescriptorSubstitutor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DescriptorSubstitutor$1.class new file mode 100644 index 00000000000..9992fd69e25 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DescriptorSubstitutor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DescriptorSubstitutor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DescriptorSubstitutor.class new file mode 100644 index 00000000000..cdbfb1eb209 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/DescriptorSubstitutor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$1.class new file mode 100644 index 00000000000..a1ad0599271 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$ErrorScope.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$ErrorScope.class new file mode 100644 index 00000000000..7709292fb90 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$ErrorScope.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$ErrorTypeImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$ErrorTypeImpl.class new file mode 100644 index 00000000000..ad1c3b91e99 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils$ErrorTypeImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils.class new file mode 100644 index 00000000000..1e2f325ed0d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/ErrorUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses$1.class new file mode 100644 index 00000000000..57c08b5e451 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses$2.class new file mode 100644 index 00000000000..50421396c5f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses.class new file mode 100644 index 00000000000..66bb5c7cbcf Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardClasses.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardLibrary.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardLibrary.class new file mode 100644 index 00000000000..83979a8ee4e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetStandardLibrary.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetType.class new file mode 100644 index 00000000000..cba4ffdc210 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetTypeImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetTypeImpl.class new file mode 100644 index 00000000000..0dbe7e70894 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/JetTypeImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/NamespaceType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/NamespaceType.class new file mode 100644 index 00000000000..2a4f25c5ad0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/NamespaceType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/PrimitiveType.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/PrimitiveType.class new file mode 100644 index 00000000000..e2e47965136 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/PrimitiveType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeConstructor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeConstructor.class new file mode 100644 index 00000000000..4fd1c7871f5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeConstructor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeConstructorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeConstructorImpl.class new file mode 100644 index 00000000000..100666f8992 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeConstructorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeProjection.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeProjection.class new file mode 100644 index 00000000000..4be5a3925d3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeProjection.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$1.class new file mode 100644 index 00000000000..249087a3616 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$2.class new file mode 100644 index 00000000000..5ed8e38d0b6 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$MapToTypeSubstitutionAdapter.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$MapToTypeSubstitutionAdapter.class new file mode 100644 index 00000000000..abb2e1d2f7b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$MapToTypeSubstitutionAdapter.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$SubstitutionException.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$SubstitutionException.class new file mode 100644 index 00000000000..28cb25e2874 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$SubstitutionException.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$TypeSubstitution$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$TypeSubstitution$1.class new file mode 100644 index 00000000000..6a5efc2a76d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$TypeSubstitution$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$TypeSubstitution.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$TypeSubstitution.class new file mode 100644 index 00000000000..c54b65456fd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor$TypeSubstitution.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor.class new file mode 100644 index 00000000000..fd12f31d383 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeSubstitutor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$1.class new file mode 100644 index 00000000000..9cb6583fee9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$2.class new file mode 100644 index 00000000000..a49afa270dc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$3.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$3.class new file mode 100644 index 00000000000..9f494a92d71 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils.class new file mode 100644 index 00000000000..2dbe9bee6a3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/TypeUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/Variance$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/Variance$1.class new file mode 100644 index 00000000000..0b7413e58fa Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/Variance$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/Variance.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/Variance.class new file mode 100644 index 00000000000..75b16814762 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/Variance.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker$1.class new file mode 100644 index 00000000000..c0aa764cb51 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker$TypeCheckerTypingConstraints.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker$TypeCheckerTypingConstraints.class new file mode 100644 index 00000000000..7ae6aafe94d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker$TypeCheckerTypingConstraints.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker.class new file mode 100644 index 00000000000..562ea668e3c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/JetTypeChecker.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/TypeCheckingProcedure.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/TypeCheckingProcedure.class new file mode 100644 index 00000000000..933bac881c4 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/TypeCheckingProcedure.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/TypingConstraints.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/TypingConstraints.class new file mode 100644 index 00000000000..82d3caacf9d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/checker/TypingConstraints.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/error/ErrorNamedFunctionDescriptorImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/error/ErrorNamedFunctionDescriptorImpl.class new file mode 100644 index 00000000000..0c1cf1f6342 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/error/ErrorNamedFunctionDescriptorImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor$1.class new file mode 100644 index 00000000000..d9ed3b7fcf5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.class new file mode 100644 index 00000000000..ac247379607 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/BasicExpressionTypingVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor$1$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor$1$1.class new file mode 100644 index 00000000000..5bc6cb3ae1c Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor$1$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor$1.class new file mode 100644 index 00000000000..5eb31f47200 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor.class new file mode 100644 index 00000000000..bc66ac826c2 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ClosureExpressionsTypingVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/CoercionStrategy.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/CoercionStrategy.class new file mode 100644 index 00000000000..1021ce24709 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/CoercionStrategy.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ControlStructureTypingVisitor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ControlStructureTypingVisitor$1.class new file mode 100644 index 00000000000..6cf74d60c96 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ControlStructureTypingVisitor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ControlStructureTypingVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ControlStructureTypingVisitor.class new file mode 100644 index 00000000000..9c7cb36d053 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ControlStructureTypingVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/DataFlowUtils$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/DataFlowUtils$1.class new file mode 100644 index 00000000000..49f51194d10 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/DataFlowUtils$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/DataFlowUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/DataFlowUtils.class new file mode 100644 index 00000000000..2e0cd4a9b28 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/DataFlowUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingContext.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingContext.class new file mode 100644 index 00000000000..3005c9df877 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingContext.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingFacade.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingFacade.class new file mode 100644 index 00000000000..13674b6dfff Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingFacade.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingInternals.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingInternals.class new file mode 100644 index 00000000000..601e1ae51bb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingInternals.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices$1.class new file mode 100644 index 00000000000..302901afdf0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices$2.class new file mode 100644 index 00000000000..fa272d715e5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices.class new file mode 100644 index 00000000000..38982754885 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingServices.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.class new file mode 100644 index 00000000000..d4284dbff64 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingUtils.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitor.class new file mode 100644 index 00000000000..2a4f8f59c2d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitorDispatcher.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitorDispatcher.class new file mode 100644 index 00000000000..6676a721def Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitorDispatcher.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitorForStatements.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitorForStatements.class new file mode 100644 index 00000000000..32da6ce3cf8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/ExpressionTypingVisitorForStatements.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/LabelResolver.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/LabelResolver.class new file mode 100644 index 00000000000..4446b771d2b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/LabelResolver.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/OperatorConventions.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/OperatorConventions.class new file mode 100644 index 00000000000..173da326548 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/OperatorConventions.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor$1.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor$1.class new file mode 100644 index 00000000000..0d21d4c5477 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor$2.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor$2.class new file mode 100644 index 00000000000..0e713855d1f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor.class new file mode 100644 index 00000000000..3f3192bc0bb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lang/types/expressions/PatternMatchingTypingVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetKeywordToken.class b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetKeywordToken.class new file mode 100644 index 00000000000..4f5365d22d5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetKeywordToken.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetLexer.class b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetLexer.class new file mode 100644 index 00000000000..d97bed10e90 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetLexer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetToken.class b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetToken.class new file mode 100644 index 00000000000..dd73472f508 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetToken.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetTokens.class b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetTokens.class new file mode 100644 index 00000000000..62f64f8f290 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lexer/JetTokens.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lexer/_JetLexer$State.class b/k2js/out/production/frontend/org/jetbrains/jet/lexer/_JetLexer$State.class new file mode 100644 index 00000000000..a04260caade Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lexer/_JetLexer$State.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/lexer/_JetLexer.class b/k2js/out/production/frontend/org/jetbrains/jet/lexer/_JetLexer.class new file mode 100644 index 00000000000..5adc082c353 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/lexer/_JetLexer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetFileType$1.class b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetFileType$1.class new file mode 100644 index 00000000000..ca3927dbdc0 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetFileType$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetFileType.class b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetFileType.class new file mode 100644 index 00000000000..68ef012e5b7 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetFileType.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetLanguage.class b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetLanguage.class new file mode 100644 index 00000000000..7aa640b7bea Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetLanguage.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetMainDetector.class b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetMainDetector.class new file mode 100644 index 00000000000..84594b2d03f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/plugin/JetMainDetector.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$1.class b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$1.class new file mode 100644 index 00000000000..d73f9d78499 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$2.class b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$2.class new file mode 100644 index 00000000000..2860f258204 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$3.class b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$3.class new file mode 100644 index 00000000000..264b9e5b769 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$RenderDeclarationDescriptorVisitor.class b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$RenderDeclarationDescriptorVisitor.class new file mode 100644 index 00000000000..6b699636305 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer$RenderDeclarationDescriptorVisitor.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer.class b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer.class new file mode 100644 index 00000000000..509ae302200 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/resolve/DescriptorRenderer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/Box.class b/k2js/out/production/frontend/org/jetbrains/jet/util/Box.class new file mode 100644 index 00000000000..a812cfdf150 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/Box.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$1.class new file mode 100644 index 00000000000..82b5cd0adbf Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$2.class b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$2.class new file mode 100644 index 00000000000..68e77400e46 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$3.class b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$3.class new file mode 100644 index 00000000000..930959e961f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers$3.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers.class b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers.class new file mode 100644 index 00000000000..2e7aec2a284 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/CommonSuppliers.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/QualifiedNamesUtil.class b/k2js/out/production/frontend/org/jetbrains/jet/util/QualifiedNamesUtil.class new file mode 100644 index 00000000000..6895d4ce192 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/QualifiedNamesUtil.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue$1.class new file mode 100644 index 00000000000..1c72f2bb1a8 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue$State.class b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue$State.class new file mode 100644 index 00000000000..a77f73044fc Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue$State.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue.class b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue.class new file mode 100644 index 00000000000..0678c3e9251 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValue.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValueWithDefault.class b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValueWithDefault.class new file mode 100644 index 00000000000..fd90b95434f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/LazyValueWithDefault.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/ReenteringLazyValueComputationException.class b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/ReenteringLazyValueComputationException.class new file mode 100644 index 00000000000..040e092b9d9 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/lazy/ReenteringLazyValueComputationException.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/BasicWritableSlice$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/BasicWritableSlice$1.class new file mode 100644 index 00000000000..0c6d743fea3 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/BasicWritableSlice$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/BasicWritableSlice.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/BasicWritableSlice.class new file mode 100644 index 00000000000..ccb5efa8f0d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/BasicWritableSlice.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/DelegatingSlice.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/DelegatingSlice.class new file mode 100644 index 00000000000..aa37270d94d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/DelegatingSlice.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier$1.class new file mode 100644 index 00000000000..f4367ce193e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier$2.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier$2.class new file mode 100644 index 00000000000..97f3e87a214 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier.class new file mode 100644 index 00000000000..8178ed7bc70 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MapSupplier.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MutableSlicedMap.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MutableSlicedMap.class new file mode 100644 index 00000000000..f512cd4be59 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/MutableSlicedMap.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/ReadOnlySlice.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/ReadOnlySlice.class new file mode 100644 index 00000000000..a79ff6c447f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/ReadOnlySlice.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RemovableSlice.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RemovableSlice.class new file mode 100644 index 00000000000..76bca87817d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RemovableSlice.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RewritePolicy$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RewritePolicy$1.class new file mode 100644 index 00000000000..8e0aa9e67a1 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RewritePolicy$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RewritePolicy.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RewritePolicy.class new file mode 100644 index 00000000000..c72f0301972 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/RewritePolicy.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMap$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMap$1.class new file mode 100644 index 00000000000..ffb4605a274 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMap$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMap.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMap.class new file mode 100644 index 00000000000..746919e6e0b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMap.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMapImpl.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMapImpl.class new file mode 100644 index 00000000000..3f7cab3121e Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMapImpl.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMapKey.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMapKey.class new file mode 100644 index 00000000000..1089949a15f Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/SlicedMapKey.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$1.class new file mode 100644 index 00000000000..aa44838517d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$BasicRemovableSlice.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$BasicRemovableSlice.class new file mode 100644 index 00000000000..7de302ad3e5 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$BasicRemovableSlice.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$KeyNormalizer$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$KeyNormalizer$1.class new file mode 100644 index 00000000000..56127f12ccd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$KeyNormalizer$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$KeyNormalizer.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$KeyNormalizer.class new file mode 100644 index 00000000000..9fbb414f2cd Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$KeyNormalizer.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SetSlice.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SetSlice.class new file mode 100644 index 00000000000..06da9c1439b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SetSlice.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder$1.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder$1.class new file mode 100644 index 00000000000..3d5567c86bb Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder$1.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder$2.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder$2.class new file mode 100644 index 00000000000..6d43b1c998a Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder$2.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder.class new file mode 100644 index 00000000000..f747dc4941d Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceBuilder.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceWithOpposite.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceWithOpposite.class new file mode 100644 index 00000000000..5f356d8c59b Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices$SliceWithOpposite.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices.class new file mode 100644 index 00000000000..33e1015e5ac Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/Slices.class differ diff --git a/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/WritableSlice.class b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/WritableSlice.class new file mode 100644 index 00000000000..181bf6c5169 Binary files /dev/null and b/k2js/out/production/frontend/org/jetbrains/jet/util/slicedmap/WritableSlice.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/InternalCompilerException.class b/k2js/out/production/js/com/google/dart/compiler/InternalCompilerException.class new file mode 100644 index 00000000000..e90e21f352b Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/InternalCompilerException.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/Source.class b/k2js/out/production/js/com/google/dart/compiler/Source.class new file mode 100644 index 00000000000..c1bbb35bbdd Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/Source.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/Cloner.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/Cloner.class new file mode 100644 index 00000000000..f98d0647b07 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/Cloner.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsConstructExpressionVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsConstructExpressionVisitor.class new file mode 100644 index 00000000000..bd899df681e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsConstructExpressionVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsFirstExpressionVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsFirstExpressionVisitor.class new file mode 100644 index 00000000000..d29f46c9242 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsFirstExpressionVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNamer.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNamer.class new file mode 100644 index 00000000000..a2f3be662d5 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNamer.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer$1.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer$1.class new file mode 100644 index 00000000000..4f5caf72c85 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer$1.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer$JsNormalizing.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer$JsNormalizing.class new file mode 100644 index 00000000000..9f224885d3b Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer$JsNormalizing.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer.class new file mode 100644 index 00000000000..a1a2d171ba0 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsNormalizer.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsParserException$SourceDetail.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsParserException$SourceDetail.class new file mode 100644 index 00000000000..7530587299c Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsParserException$SourceDetail.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsParserException.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsParserException.class new file mode 100644 index 00000000000..261c4e62b1a Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsParserException.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsPrecedenceVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsPrecedenceVisitor.class new file mode 100644 index 00000000000..8590bb12921 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsPrecedenceVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsPrettyNamer.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsPrettyNamer.class new file mode 100644 index 00000000000..ec7ea5d1c55 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsPrettyNamer.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsRequiresSemiVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsRequiresSemiVisitor.class new file mode 100644 index 00000000000..c1fee06ba8b Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsRequiresSemiVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsReservedIdentifiers.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsReservedIdentifiers.class new file mode 100644 index 00000000000..447a2842d95 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsReservedIdentifiers.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsSourceGenerationVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsSourceGenerationVisitor.class new file mode 100644 index 00000000000..86b0c5fc0a1 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsSourceGenerationVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/JsToStringGenerationVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsToStringGenerationVisitor.class new file mode 100644 index 00000000000..483876a133a Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/JsToStringGenerationVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/UncheckedJsParserException.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/UncheckedJsParserException.class new file mode 100644 index 00000000000..bf1ea91ee01 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/UncheckedJsParserException.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/CanBooleanEval.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/CanBooleanEval.class new file mode 100644 index 00000000000..0f8c465b259 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/CanBooleanEval.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasArguments.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasArguments.class new file mode 100644 index 00000000000..08c78a57dd9 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasArguments.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasCondition.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasCondition.class new file mode 100644 index 00000000000..feb9659dee5 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasCondition.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasName.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasName.class new file mode 100644 index 00000000000..e713e590e4c Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/HasName.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsArrayAccess.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsArrayAccess.class new file mode 100644 index 00000000000..4f12989a7dd Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsArrayAccess.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsArrayLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsArrayLiteral.class new file mode 100644 index 00000000000..a2d486bbdbd Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsArrayLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBinaryOperation.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBinaryOperation.class new file mode 100644 index 00000000000..080e4cb0a90 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBinaryOperation.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBinaryOperator.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBinaryOperator.class new file mode 100644 index 00000000000..c2f33de9503 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBinaryOperator.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBlock.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBlock.class new file mode 100644 index 00000000000..0ca29337506 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBlock.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBooleanLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBooleanLiteral.class new file mode 100644 index 00000000000..e3bd7cbab2f Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBooleanLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBreak.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBreak.class new file mode 100644 index 00000000000..2ef7b216557 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsBreak.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCase.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCase.class new file mode 100644 index 00000000000..01164ddc925 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCase.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatch.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatch.class new file mode 100644 index 00000000000..69754fe5aa0 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatch.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatchScope$1.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatchScope$1.class new file mode 100644 index 00000000000..c302d9fd1a0 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatchScope$1.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatchScope.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatchScope.class new file mode 100644 index 00000000000..b8182b27596 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsCatchScope.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsConditional.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsConditional.class new file mode 100644 index 00000000000..93c438e5696 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsConditional.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsContext.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsContext.class new file mode 100644 index 00000000000..67151644783 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsContext.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsContinue.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsContinue.class new file mode 100644 index 00000000000..74bd3e0192e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsContinue.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDebugger.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDebugger.class new file mode 100644 index 00000000000..56e908cbb5b Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDebugger.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDefault.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDefault.class new file mode 100644 index 00000000000..3e725b1cb6c Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDefault.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDoWhile.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDoWhile.class new file mode 100644 index 00000000000..e2b0a2f833f Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsDoWhile.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsEmpty.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsEmpty.class new file mode 100644 index 00000000000..6903d45f4b9 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsEmpty.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsExprStmt.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsExprStmt.class new file mode 100644 index 00000000000..8bedf484039 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsExprStmt.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsExpression.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsExpression.class new file mode 100644 index 00000000000..46042c4047e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsExpression.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsFor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsFor.class new file mode 100644 index 00000000000..55252602ad8 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsFor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsForIn.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsForIn.class new file mode 100644 index 00000000000..c7c9f723fe0 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsForIn.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsFunction.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsFunction.class new file mode 100644 index 00000000000..981d3a8a86a Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsFunction.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsGlobalBlock.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsGlobalBlock.class new file mode 100644 index 00000000000..d2551ba57e3 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsGlobalBlock.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsIf.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsIf.class new file mode 100644 index 00000000000..ac1a529bc78 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsIf.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsInvocation.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsInvocation.class new file mode 100644 index 00000000000..79397ce516a Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsInvocation.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsLabel.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsLabel.class new file mode 100644 index 00000000000..9458fff5d62 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsLabel.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsLiteral.class new file mode 100644 index 00000000000..aa95bc0b81e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$1.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$1.class new file mode 100644 index 00000000000..cf2dfd079ce Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$1.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$ListContext.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$ListContext.class new file mode 100644 index 00000000000..875e314b49e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$ListContext.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$LvalueContext.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$LvalueContext.class new file mode 100644 index 00000000000..39052ed7ff0 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$LvalueContext.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$NodeContext.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$NodeContext.class new file mode 100644 index 00000000000..2aa9d3e97b8 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor$NodeContext.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor.class new file mode 100644 index 00000000000..3b17c877718 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsModVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsName.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsName.class new file mode 100644 index 00000000000..06cdd835eaa Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsName.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNameRef.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNameRef.class new file mode 100644 index 00000000000..4f321ba01b4 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNameRef.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNew.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNew.class new file mode 100644 index 00000000000..ec1eb5eec96 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNew.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNode.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNode.class new file mode 100644 index 00000000000..1d6645609ad Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNode.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNullLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNullLiteral.class new file mode 100644 index 00000000000..5125d7d6734 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNullLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNumberLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNumberLiteral.class new file mode 100644 index 00000000000..306ec87b9e1 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsNumberLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsObjectLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsObjectLiteral.class new file mode 100644 index 00000000000..c7a311a68eb Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsObjectLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsOperator.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsOperator.class new file mode 100644 index 00000000000..5aa8ee16f29 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsOperator.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsParameter.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsParameter.class new file mode 100644 index 00000000000..0a6a39dedb7 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsParameter.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPostfixOperation.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPostfixOperation.class new file mode 100644 index 00000000000..c0cc818da1d Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPostfixOperation.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPrefixOperation.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPrefixOperation.class new file mode 100644 index 00000000000..f310664e665 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPrefixOperation.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsProgram.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsProgram.class new file mode 100644 index 00000000000..d14a8704abc Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsProgram.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsProgramFragment.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsProgramFragment.class new file mode 100644 index 00000000000..610b487220a Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsProgramFragment.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPropertyInitializer.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPropertyInitializer.class new file mode 100644 index 00000000000..1d4c754e71e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsPropertyInitializer.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsRegExp.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsRegExp.class new file mode 100644 index 00000000000..269aeb19cb8 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsRegExp.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsReturn.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsReturn.class new file mode 100644 index 00000000000..32af8941698 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsReturn.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsRootScope.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsRootScope.class new file mode 100644 index 00000000000..675ec034567 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsRootScope.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsScope.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsScope.class new file mode 100644 index 00000000000..ce11a8356dc Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsScope.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsStatement.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsStatement.class new file mode 100644 index 00000000000..4e2da233947 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsStatement.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsStringLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsStringLiteral.class new file mode 100644 index 00000000000..aecd3760012 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsStringLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsSwitch.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsSwitch.class new file mode 100644 index 00000000000..fb06aa9d5fc Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsSwitch.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsSwitchMember.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsSwitchMember.class new file mode 100644 index 00000000000..22974f03fe4 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsSwitchMember.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsThisRef.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsThisRef.class new file mode 100644 index 00000000000..6f2c76e92f4 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsThisRef.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsThrow.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsThrow.class new file mode 100644 index 00000000000..816f332556e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsThrow.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsTry.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsTry.class new file mode 100644 index 00000000000..c0e40e2af87 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsTry.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsUnaryOperation.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsUnaryOperation.class new file mode 100644 index 00000000000..c51260cb92c Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsUnaryOperation.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsUnaryOperator.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsUnaryOperator.class new file mode 100644 index 00000000000..72c8784bb7a Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsUnaryOperator.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsValueLiteral.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsValueLiteral.class new file mode 100644 index 00000000000..5481c5cd317 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsValueLiteral.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVars$JsVar.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVars$JsVar.class new file mode 100644 index 00000000000..93212c2af77 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVars$JsVar.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVars.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVars.class new file mode 100644 index 00000000000..c369ad56705 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVars.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitable.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitable.class new file mode 100644 index 00000000000..10651420c8c Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitable.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor$1.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor$1.class new file mode 100644 index 00000000000..f801d2780d4 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor$1.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor$2.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor$2.class new file mode 100644 index 00000000000..a5437dce68c Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor$2.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor.class new file mode 100644 index 00000000000..09102391519 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsVisitor.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsWhile.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsWhile.class new file mode 100644 index 00000000000..d8ad387e9cb Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/JsWhile.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/NodeKind.class b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/NodeKind.class new file mode 100644 index 00000000000..a81b8f957ec Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/backend/js/ast/NodeKind.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/common/AbstractNode.class b/k2js/out/production/js/com/google/dart/compiler/common/AbstractNode.class new file mode 100644 index 00000000000..956f713b4f3 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/common/AbstractNode.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/common/HasSourceInfo.class b/k2js/out/production/js/com/google/dart/compiler/common/HasSourceInfo.class new file mode 100644 index 00000000000..9cd3d54d59c Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/common/HasSourceInfo.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/common/Name.class b/k2js/out/production/js/com/google/dart/compiler/common/Name.class new file mode 100644 index 00000000000..62dbf1c9281 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/common/Name.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/common/NameFactory$FakeKey.class b/k2js/out/production/js/com/google/dart/compiler/common/NameFactory$FakeKey.class new file mode 100644 index 00000000000..2b72e01fc04 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/common/NameFactory$FakeKey.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/common/NameFactory$RealKey.class b/k2js/out/production/js/com/google/dart/compiler/common/NameFactory$RealKey.class new file mode 100644 index 00000000000..6e75def2dc7 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/common/NameFactory$RealKey.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/common/NameFactory.class b/k2js/out/production/js/com/google/dart/compiler/common/NameFactory.class new file mode 100644 index 00000000000..49ab0778638 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/common/NameFactory.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/common/SourceInfo.class b/k2js/out/production/js/com/google/dart/compiler/common/SourceInfo.class new file mode 100644 index 00000000000..d519868779d Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/common/SourceInfo.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/AbstractTextOutput.class b/k2js/out/production/js/com/google/dart/compiler/util/AbstractTextOutput.class new file mode 100644 index 00000000000..c7fb5102c0a Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/AbstractTextOutput.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/AstUtil$Mutator.class b/k2js/out/production/js/com/google/dart/compiler/util/AstUtil$Mutator.class new file mode 100644 index 00000000000..4ad65a73be1 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/AstUtil$Mutator.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/AstUtil$SaveLastExpressionMutator.class b/k2js/out/production/js/com/google/dart/compiler/util/AstUtil$SaveLastExpressionMutator.class new file mode 100644 index 00000000000..544df59a35e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/AstUtil$SaveLastExpressionMutator.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/AstUtil.class b/k2js/out/production/js/com/google/dart/compiler/util/AstUtil.class new file mode 100644 index 00000000000..55145d5c001 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/AstUtil.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/DefaultTextOutput.class b/k2js/out/production/js/com/google/dart/compiler/util/DefaultTextOutput.class new file mode 100644 index 00000000000..e8b8e9bba94 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/DefaultTextOutput.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/Hack.class b/k2js/out/production/js/com/google/dart/compiler/util/Hack.class new file mode 100644 index 00000000000..1e8fa5d2c8e Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/Hack.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/Lists.class b/k2js/out/production/js/com/google/dart/compiler/util/Lists.class new file mode 100644 index 00000000000..835e058e9c0 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/Lists.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/Maps.class b/k2js/out/production/js/com/google/dart/compiler/util/Maps.class new file mode 100644 index 00000000000..729c1d10a67 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/Maps.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/Paths.class b/k2js/out/production/js/com/google/dart/compiler/util/Paths.class new file mode 100644 index 00000000000..6f2e67fa4b4 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/Paths.class differ diff --git a/k2js/out/production/js/com/google/dart/compiler/util/TextOutput.class b/k2js/out/production/js/com/google/dart/compiler/util/TextOutput.class new file mode 100644 index 00000000000..0bcead984a9 Binary files /dev/null and b/k2js/out/production/js/com/google/dart/compiler/util/TextOutput.class differ diff --git a/k2js/out/production/jslib/core/Dummy.class b/k2js/out/production/jslib/core/Dummy.class new file mode 100644 index 00000000000..513f8142ae4 Binary files /dev/null and b/k2js/out/production/jslib/core/Dummy.class differ diff --git a/k2js/out/production/jslib/core/annotations.kt b/k2js/out/production/jslib/core/annotations.kt new file mode 100644 index 00000000000..f63aff178ae --- /dev/null +++ b/k2js/out/production/jslib/core/annotations.kt @@ -0,0 +1,5 @@ +package js; +native +annotation class native(name : String = "") {} +native +annotation class library(name : String = "") {} \ No newline at end of file diff --git a/k2js/out/production/jslib/core/core.kt b/k2js/out/production/jslib/core/core.kt new file mode 100644 index 00000000000..1edf565e29d --- /dev/null +++ b/k2js/out/production/jslib/core/core.kt @@ -0,0 +1,39 @@ +package js; + +import js.library +import js.native +import java.util.*; + + + +native +val noImpl : Nothing = throw Exception(); + +library("println") +fun println() {} +library("println") +fun println(s : Any?) {} +library("print") +fun print(s : Any?) {} +library("parseInt") +fun parseInt(s : String) : Int = 0 +library +open class Exception() {} +library +class NumberFormatException() : Exception() {} + +native +fun setTimeout(callback : ()-> Unit) {} + +native +fun setInterval(callback : ()-> Unit, ms : Int) {} +native +fun setInterval(callback : ()-> Unit) {} + + +native +open class DomElement() { + val offsetLeft = 0.0; + val offsetTop = 0.0; + val offsetParent : DomElement? = DomElement(); +} diff --git a/k2js/out/production/jslib/core/javalang.kt b/k2js/out/production/jslib/core/javalang.kt new file mode 100644 index 00000000000..1cb140116f0 --- /dev/null +++ b/k2js/out/production/jslib/core/javalang.kt @@ -0,0 +1,14 @@ +package java.lang + +import java.util.Iterator; +import js.library + +library +trait Iterable { + fun iterator() : java.util.Iterator {} +} + +library("splitString") +public fun String.split(regex : String) : Array { +} + diff --git a/k2js/out/production/jslib/core/javautil.kt b/k2js/out/production/jslib/core/javautil.kt new file mode 100644 index 00000000000..64a5101bc46 --- /dev/null +++ b/k2js/out/production/jslib/core/javautil.kt @@ -0,0 +1,175 @@ +package java.util + +import js.*; + + +library("collectionsMax") +public fun max(col : Collection, comp : Comparator) : T {} + +library +public trait Comparator { + fun compare(obj1 : T, obj2 : T) : Int; +} + +library("comparator") +public fun comparator(f : (T, T) -> Int) : Comparator {} + + +library +public open class Iterator() { + open fun next() : T {} + open fun hasNext() : Boolean {} +} + +library +val Collections = object { + library("collectionsMax") + public fun max(col : Collection, comp : Comparator) : T = js.noImpl +} + +library +public open class ArrayList() : java.util.List { + override public fun size() : Int {} + override public fun isEmpty() : Boolean {} + override public fun contains(o : Any?) : Boolean {} + override public fun iterator() : Iterator {} + // override public fun indexOf(o : Any?) : Int {} + // override public fun lastIndexOf(o : Any?) : Int {} + // override public fun toArray() : Array {} + // override public fun toArray(a : Array) : Array {} + override public fun get(index : Int) : E {} + override public fun set(index : Int, element : E) : E {} + override public fun add(e : E) : Boolean {} + override public fun add(index : Int, element : E) : Unit {} + override public fun remove(index : Int) : E {} + override public fun remove(o : Any?) : Boolean {} + override public fun clear() : Unit {} + override public fun addAll(c : java.util.Collection) : Boolean {} + // override public fun addAll(index : Int, c : java.util.Collection) : Boolean {} +} + +library +public trait Collection : java.lang.Iterable { + open fun size() : Int + open fun isEmpty() : Boolean + open fun contains(o : Any?) : Boolean + override fun iterator() : java.util.Iterator + // open fun toArray() : Array + // open fun toArray(a : Array) : Array + open fun add(e : E) : Boolean + open fun remove(o : Any?) : Boolean + //open fun containsAll(c : java.util.Collection<*>) : Boolean + open fun addAll(c : java.util.Collection) : Boolean + //open fun removeAll(c : java.util.Collection<*>) : Boolean + //open fun retainAll(c : java.util.Collection<*>) : Boolean + open fun clear() : Unit +} + +library +public trait List : Collection { + override fun size() : Int + override fun isEmpty() : Boolean + override fun contains(o : Any?) : Boolean + override fun iterator() : java.util.Iterator + // override fun toArray() : Array + // Simulate Java's array covariance + // override fun toArray(a : Array) : Array + override fun add(e : E) : Boolean + override fun remove(o : Any?) : Boolean + // override fun containsAll(c : java.util.Collection<*>) : Boolean + override fun addAll(c : java.util.Collection) : Boolean + // open fun addAll(index : Int, c : java.util.Collection) : Boolean + // override fun removeAll(c : java.util.Collection<*>) : Boolean + // override fun retainAll(c : java.util.Collection<*>) : Boolean + override fun clear() : Unit + open fun get(index : Int) : E + open fun set(index : Int, element : E) : E + open fun add(index : Int, element : E) : Unit + open fun remove(index : Int) : E + // open fun indexOf(o : Any?) : Int + // open fun lastIndexOf(o : Any?) : Int +} + +library +public trait Set : Collection { + override fun size() : Int + override fun isEmpty() : Boolean + override fun contains(o : Any?) : Boolean + override fun iterator() : java.util.Iterator + // override fun toArray() : Array + // override fun toArray(a : Array) : Array + override fun add(e : E) : Boolean + override fun remove(o : Any?) : Boolean + //override fun containsAll(c : java.util.Collection<*>) : Boolean + override fun addAll(c : java.util.Collection) : Boolean + //override fun retainAll(c : java.util.Collection<*>) : Boolean + //override fun removeAll(c : java.util.Collection<*>) : Boolean + override fun clear() : Unit +} + +library +public open class HashSet() : java.util.Set { + override public fun iterator() : java.util.Iterator {} + override public fun size() : Int {} + override public fun isEmpty() : Boolean {} + override public fun contains(o : Any?) : Boolean {} + override public fun add(e : E) : Boolean {} + override public fun remove(o : Any?) : Boolean {} + override public fun clear() : Unit {} + override fun addAll(c : java.util.Collection) : Boolean +} + +library +public trait Map { + open fun size() : Int + open fun isEmpty() : Boolean + open fun containsKey(key : Any?) : Boolean + open fun containsValue(value : Any?) : Boolean + open fun get(key : Any?) : V? + open fun put(key : K, value : V) : V? + open fun remove(key : Any?) : V? + open fun putAll(m : java.util.Map) : Unit + open fun clear() : Unit + open fun keySet() : java.util.Set + open fun values() : java.util.Collection +} + +library +public open class HashMap() : java.util.Map { + override public fun size() : Int {} + override public fun isEmpty() : Boolean {} + override public fun get(key : Any?) : V {} + override public fun containsKey(key : Any?) : Boolean {} + override public fun put(key : K, value : V) : V {} + override public fun putAll(m : java.util.Map) : Unit {} + override public fun remove(key : Any?) : V? {} + override public fun clear() : Unit {} + override public fun containsValue(value : Any?) : Boolean {} + override public fun keySet() : java.util.Set {} + override public fun values() : java.util.Collection {} +} + +library +public open class LinkedList() : List { + override public fun iterator() : java.util.Iterator {} + override public fun isEmpty() : Boolean {} + override public fun contains(o : Any?) : Boolean {} + override public fun size() : Int {} + override public fun add(e : E) : Boolean {} + override public fun remove(o : Any?) : Boolean {} + override public fun addAll(c : java.util.Collection) : Boolean {} + override public fun clear() : Unit {} + override public fun get(index : Int) : E {} + override public fun set(index : Int, element : E) : E {} + override public fun add(index : Int, element : E) : Unit {} + override public fun remove(index : Int) : E {} + public fun poll() : E? {} + public fun peek() : E? {} + public fun offer(e : E) : Boolean {} +} + +library +public class StringBuilder() { + public fun append(obj : Any) : StringBuilder + public fun toString() : String +} \ No newline at end of file diff --git a/k2js/out/production/jslib/core/json.kt b/k2js/out/production/jslib/core/json.kt new file mode 100644 index 00000000000..df624aad0be --- /dev/null +++ b/k2js/out/production/jslib/core/json.kt @@ -0,0 +1,18 @@ +package js + +import java.util.*; +import js.library + +native +class Json() { + +} + +library("jsonSet") +fun Json.set(paramName : String, value : Any?) : Unit {} + +library("jsonGet") +fun Json.get(paramName : String) : Any? = null + +library("jsonFromTuples") +fun json(vararg pairs : Tuple2) = Json() diff --git a/k2js/out/production/jslib/core/math.kt b/k2js/out/production/jslib/core/math.kt new file mode 100644 index 00000000000..3566b782aa6 --- /dev/null +++ b/k2js/out/production/jslib/core/math.kt @@ -0,0 +1,32 @@ +package js; + +import js.native + +native +class MathClass() { + val PI : Double = 1.0; + fun random() : Double = 0.0; + fun abs(value : Double) = 0.0 + fun acos(value : Double) = 0.0 + fun asin(value : Double) = 0.0 + fun atan(value : Double) = 0.0 + fun atan2(x : Double, y : Double) = 0.0 + fun cos(value : Double) = 0.0 + fun sin(value : Double) = 0.0 + fun exp(value : Double) = 0.0 + fun max(vararg values : Double) = 0.0 + fun max(vararg values : Int) : Int = js.noImpl + fun min(vararg values : Int) : Int = js.noImpl + fun min(vararg values : Double) = 0.0 + fun sqrt(value : Double) = 0.0 + fun tan(value : Double) = 0.0 + fun log(value : Double) = 0.0 + fun pow(base : Double, exp : Double) = 0.0 + fun round(value : Double) = 0.0 + fun floor(value : Double) = 0.0 + fun ceil(value : Double) = 0.0 + +} + +native +val Math = MathClass(); \ No newline at end of file diff --git a/k2js/out/production/jslib/helper/ip.kt b/k2js/out/production/jslib/helper/ip.kt new file mode 100644 index 00000000000..d6f47cc8296 --- /dev/null +++ b/k2js/out/production/jslib/helper/ip.kt @@ -0,0 +1,7 @@ +package ip.helper + +import html5.HTMLInputElement +import js.native + +native +fun getInputElement() : HTMLInputElement = js.noImpl \ No newline at end of file diff --git a/k2js/out/production/jslib/html5/canvas.kt b/k2js/out/production/jslib/html5/canvas.kt new file mode 100644 index 00000000000..6caa62ab6d4 --- /dev/null +++ b/k2js/out/production/jslib/html5/canvas.kt @@ -0,0 +1,117 @@ +package html5 + +import js.native +import js.DomElement + +native +class Context() { + fun save() { + } + fun restore() { + } + + fun scale(x : Double, y : Double) { + } + fun rotate(angle : Double) { + } + fun translate(x : Double, y : Double) { + } + + fun clearRect(x : Double, y : Double, w : Double, h : Double) { + } + fun fillRect(x : Double, y : Double, w : Double, h : Double) { + } + fun strokeRect(x : Double, y : Double, w : Double, h : Double) { + } + + var globalAlpha : Double = 1.0; + var strokeStyle : Any = "" + var fillStyle : Any = "" + var lineWidth : Double = 1.0 + var shadowOffsetX : Double = 0.0 + var shadowOffsetY : Double = 0.0 + var shadowBlur : Double = 0.0 + var shadowColor : String = "" + var font : String = "" + + fun beginPath() { + } + fun moveTo(x : Double, y : Double) { + } + fun closePath() { + } + + fun lineTo(x : Double, y : Double) { + } + fun quadraticCurveTo(cpx : Double, cpy : Double, x : Double, y : Double) { + } + fun bezierCurveTo(cp1x : Double, cp1y : Double, cp2x : Double, cp2y : Double, x : Double, y : Double) { + } + fun arcTo(x1 : Double, y1 : Double, x2 : Double, y2 : Double, radius : Double) { + } + fun arc(x : Double, y : Double, radius : Double, startAngle : Double, endAngle : Double, anticlockwise : Boolean) { + } + + fun rect(x : Double, y : Double, w : Double, h : Double) { + } + fun fill() { + } + fun stroke() { + } + + fun fillText(text : String, x : Double, y : Double) { + } + fun fillText(text : String, x : Double, y : Double, maxWidth : Double) { + } + fun strokeText(text : String, x : Double, y : Double) { + } + fun strokeText(text : String, x : Double, y : Double, maxWidth : Double) { + } + + fun measureText(text : String) : TextMetrics = TextMetrics(); + + fun drawImage(image : HTMLImageElement, dx : Double, dy : Double) { + } + fun drawImage(image : HTMLImageElement, dx: Double, dy: Double, dw: Double, dh: Double) { + } + fun drawImage(image : HTMLImageElement, sx: Double, sy: Double, + sw: Double, sh: Double, dx: Double, dy: Double, dw: Double, dh: Double) { + } + + fun createLinearGradient(x0 : Double, y0 : Double, x1 : Double, y1 : Double) : CanvasGradient = CanvasGradient() + fun createRadialGradient(x0 : Double, y0 : Double, r0 : Double, x1 : Double, y1 : Double, r1 : Double) : CanvasGradient = CanvasGradient(); + +} + +native +open class HTMLImageElement() : DomElement() { +} + +native +class CanvasGradient() { + fun addColorStop(offset : Double, color : String) {} +} + + +native +class Canvas() : DomElement() { + var width = 0.0; + var height = 0.0; + + //DOMString toDataURL(in optional DOMString type, in any... args); + fun toDataURL() : String = js.noImpl + fun toDataURL(typ : String) : String = js.noImpl +} + +native +class TextMetrics() { + val width : Int = 0 +} + +/*custom helpers*/ +native +fun getContext() : Context = Context(); +native +fun getCanvas() : Canvas = Canvas(); +native +fun getKotlinLogo() : HTMLImageElement = HTMLImageElement(); \ No newline at end of file diff --git a/k2js/out/production/jslib/html5/files.kt b/k2js/out/production/jslib/html5/files.kt new file mode 100644 index 00000000000..8e05d2af4ef --- /dev/null +++ b/k2js/out/production/jslib/html5/files.kt @@ -0,0 +1,37 @@ +package html5.files + +import js.native + +native +class FileReader() { + var onloadend : ((FileReaderEvent)->Unit)? = js.noImpl // + fun readAsDataURL(blob : Blob) = js.noImpl + val result : File = js.noImpl +} + +native +class FileReaderEvent() { + val target : FileReader = js.noImpl +} + +native +class FileList() { + fun item(index : Int) : File? = js.noImpl + val length : Int = js.noImpl +} + +native +class File() : Blob() { + val name : String = js.noImpl + // readonly attribute Date lastModifiedDate; +} + +native +open class Blob() { + val size : Int = js.noImpl + val `type` : String = js.noImpl + //Blob slice(optional long long start, + //optional long long end, + //optional DOMString contentType); + // +} diff --git a/k2js/out/production/jslib/html5/image.kt b/k2js/out/production/jslib/html5/image.kt new file mode 100644 index 00000000000..dc1ec502959 --- /dev/null +++ b/k2js/out/production/jslib/html5/image.kt @@ -0,0 +1,25 @@ +package html5 + +import js.Exception +import js.native +import js.DomElement +import html5.files.FileList + +native +class HTMLInputElement() : DomElement() { + val files : FileList = js.noImpl + var onchange : (HTMLInputElementEvent)->Unit = js.noImpl +} + +native +class HTMLInputElementEvent() { + val target : HTMLInputElement = js.noImpl +} + +native +class Image() : HTMLImageElement() { + var height : Int = js.noImpl + var width : Int = js.noImpl + var src : String = js.noImpl + var onload : ()->Unit = js.noImpl +} \ No newline at end of file diff --git a/k2js/out/production/jslib/jquery/common.kt b/k2js/out/production/jslib/jquery/common.kt new file mode 100644 index 00000000000..54ad3feb9dd --- /dev/null +++ b/k2js/out/production/jslib/jquery/common.kt @@ -0,0 +1,72 @@ +package jquery; + +import js.*; +import js.DomElement + +native +class JQuery() { + fun addClass(className : String) : JQuery = js.noImpl; + fun addClass(f : DomElement.(Int, String)->String) = js.noImpl; + + fun attr(attrName : String) = ""; + fun attr(attrName : String, value : String) = this; + + fun html() : String = ""; + fun html(s : String) = this; + fun html(f : DomElement.(Int, String)->String) = this; + + + fun hasClass(className : String) = true + fun removeClass(className : String) = this + fun height() = 0 + fun width() = 0 + + fun click() = this; + + fun mousedown(handler : DomElement.(MouseEvent)->Unit) = this; + fun mouseup(handler : DomElement.(MouseEvent)->Unit) = this; + fun mousemove(handler : DomElement.(MouseEvent)->Unit) = this; + + fun dblclick(handler : DomElement.(MouseClickEvent)->Unit) = this; + fun click(handler : DomElement.(MouseClickEvent)->Unit) = this; + + fun load(handler : DomElement.()->Unit) = this; + fun change(handler : DomElement.()->Unit) = this; + + fun append(str : String) = this; + fun ready(handler : ()->Unit) = this; + fun text(text : String) = this; + fun slideUp() = this; + fun hover(handlerInOut : DomElement.() -> Unit) = this; + fun hover(handlerIn : DomElement.() -> Unit, handlerOut : DomElement.() -> Unit) = this; + fun next() : JQuery = js.noImpl + fun parent() : JQuery = js.noImpl +} + +native +open class MouseEvent() { + val pageX : Double = 0.0; + val pageY : Double = 0.0; + fun preventDefault() {} + fun isDefaultPrevented() : Boolean = true; +} + +native +class MouseClickEvent() : MouseEvent() { + val which : Int = 0; +} + + + +native("$") +fun jq(selector : String) = JQuery(); +native("$") +fun jq(selector : String, context : DomElement) = JQuery(); +native("$") +fun jq(callback : () -> Unit) = JQuery(); +native("$") +fun jq(obj : JQuery) = JQuery(); +native("$") +fun jq(el : DomElement) = JQuery(); +native("$") +fun jq() = JQuery(); diff --git a/k2js/out/production/jslib/jquery/ui.kt b/k2js/out/production/jslib/jquery/ui.kt new file mode 100644 index 00000000000..e9ca87be43a --- /dev/null +++ b/k2js/out/production/jslib/jquery/ui.kt @@ -0,0 +1,15 @@ +package jquery.ui + + +//jquery UI +import jquery.JQuery +import js.native + +native +fun JQuery.buttonset() : JQuery = js.noImpl; +native +fun JQuery.dialog() : JQuery = js.noImpl; +native +fun JQuery.button() : JQuery = js.noImpl; +native +fun JQuery.accordion() : JQuery = js.noImpl diff --git a/k2js/out/production/jslib/pixastic/pixastic.kt b/k2js/out/production/jslib/pixastic/pixastic.kt new file mode 100644 index 00000000000..66bcf91bf97 --- /dev/null +++ b/k2js/out/production/jslib/pixastic/pixastic.kt @@ -0,0 +1,11 @@ +package jquery.pixastic + +import jquery.JQuery +import js.native + +native +fun JQuery.pixastic(actionName : String) = js.noImpl + +native +fun addAction(actionName : String, + process : (oldData : Array, newData : Array, width : Int, height : Int)->Unit) = js.noImpl \ No newline at end of file diff --git a/k2js/out/production/jslib/raphael/raphael.kt b/k2js/out/production/jslib/raphael/raphael.kt new file mode 100644 index 00000000000..e30b63b15c1 --- /dev/null +++ b/k2js/out/production/jslib/raphael/raphael.kt @@ -0,0 +1,62 @@ +package raphael + +import js.*; +import js.*; + +native +open class Element() { + + fun attr(name : String, value : Any?) : Element = this + fun attr(nameToValue : Json) : Element = this + + fun click(handler : Element.()-> Unit) = this; + + fun mouseover(handler : Element.() -> Unit) = this + fun mouseout(handler : Element.() -> Unit) = this + + + fun getTotalLength() : Double = 0.0 + fun getPointAtLength(length : Double) : Point {} + + fun animate(params : Json, ms : Int, callback : ()-> Unit) : Element {} + fun animate(params : Json, ms : Int, s : String) : Element {} + fun animate(params : Json, ms : Int) : Element {} + //fun mouse +} + +native +class Set() : Element() { + fun push(el : Element) {} +} + +native +class Paper() { + fun path(pathString : String) : Element = Element(); + fun path() : Element = Element(); + + fun ellipse(x : Int, y : Int, rx : Int, ry : Int) : Element {} + fun circle(x : Int, y : Int, r : Int) : Element {} + fun set() : Set {} + + val customAttributes : Json = Json(); +} + +native("Raphael") +fun Raphael(elementId : String, width : Int, height : Int) : Paper = Paper(); +native("Raphael") +fun Raphael(elementId : String, width : Int, height : Int, initFun : Paper.() -> Unit) : Unit {} + +native +fun getColor() : Color {} +native +fun resetColors() {} + +native +class Color() {} + +native +class Point() { + val x = 0 + val y = 0 + val alpha = 0 +} diff --git a/k2js/out/production/stdlib/Arrays.kt b/k2js/out/production/stdlib/Arrays.kt new file mode 100644 index 00000000000..48e1c8fc595 --- /dev/null +++ b/k2js/out/production/stdlib/Arrays.kt @@ -0,0 +1,103 @@ +package std + +import java.io.ByteArrayInputStream + +import java.util.Arrays + +// Array "constructor" +inline fun array(vararg t : T) : Array = t + +// "constructors" for primitive types array +inline fun doubleArray(vararg content : Double) = content + +inline fun floatArray(vararg content : Float) = content + +inline fun longArray(vararg content : Long) = content + +inline fun intArray(vararg content : Int) = content + +inline fun charArray(vararg content : Char) = content + +inline fun shortArray(vararg content : Short) = content + +inline fun byteArray(vararg content : Byte) = content + +inline fun booleanArray(vararg content : Boolean) = content + +inline fun ByteArray.binarySearch(key: Byte) = Arrays.binarySearch(this, key) +inline fun ShortArray.binarySearch(key: Short) = Arrays.binarySearch(this, key) +inline fun IntArray.binarySearch(key: Int) = Arrays.binarySearch(this, key) +inline fun LongArray.binarySearch(key: Long) = Arrays.binarySearch(this, key) +inline fun FloatArray.binarySearch(key: Float) = Arrays.binarySearch(this, key) +inline fun DoubleArray.binarySearch(key: Double) = Arrays.binarySearch(this, key) +inline fun CharArray.binarySearch(key: Char) = Arrays.binarySearch(this, key) + +inline fun ByteArray.binarySearch(fromIndex: Int, toIndex: Int, key: Byte) = Arrays.binarySearch(this, fromIndex, toIndex, key) +inline fun ShortArray.binarySearch(fromIndex: Int, toIndex: Int, key: Short) = Arrays.binarySearch(this, fromIndex, toIndex, key) +inline fun IntArray.binarySearch(fromIndex: Int, toIndex: Int, key: Int) = Arrays.binarySearch(this, fromIndex, toIndex, key) +inline fun LongArray.binarySearch(fromIndex: Int, toIndex: Int, key: Long) = Arrays.binarySearch(this, fromIndex, toIndex, key) +inline fun FloatArray.binarySearch(fromIndex: Int, toIndex: Int, key: Float) = Arrays.binarySearch(this, fromIndex, toIndex, key) +inline fun DoubleArray.binarySearch(fromIndex: Int, toIndex: Int, key: Double) = Arrays.binarySearch(this, fromIndex, toIndex, key) +inline fun CharArray.binarySearch(fromIndex: Int, toIndex: Int, key: Char) = Arrays.binarySearch(this, fromIndex, toIndex, key) + +/* +inline fun Array.binarySearch(key: T, comparator: fun(T,T):Int) = Arrays.binarySearch(this, key, object: java.util.Comparator { + override fun compare(a: T, b: T) = comparator(a, b) + + override fun equals(obj: Any?) = obj.identityEquals(this) +}) +*/ +inline fun BooleanArray.fill(value: Boolean) = Arrays.fill(this, value) +inline fun ByteArray.fill(value: Byte) = Arrays.fill(this, value) +inline fun ShortArray.fill(value: Short) = Arrays.fill(this, value) +inline fun IntArray.fill(value: Int) = Arrays.fill(this, value) +inline fun LongArray.fill(value: Long) = Arrays.fill(this, value) +inline fun FloatArray.fill(value: Float) = Arrays.fill(this, value) +inline fun DoubleArray.fill(value: Double) = Arrays.fill(this, value) +inline fun CharArray.fill(value: Char) = Arrays.fill(this, value) + +inline fun Array.fill(value: T) = Arrays.fill(this as Array, value) + +inline fun ByteArray.sort() = Arrays.sort(this) +inline fun ShortArray.sort() = Arrays.sort(this) +inline fun IntArray.sort() = Arrays.sort(this) +inline fun LongArray.sort() = Arrays.sort(this) +inline fun FloatArray.sort() = Arrays.sort(this) +inline fun DoubleArray.sort() = Arrays.sort(this) +inline fun CharArray.sort() = Arrays.sort(this) + +inline fun ByteArray.sort(fromIndex: Int, toIndex: Int) = Arrays.sort(this, fromIndex, toIndex) +inline fun ShortArray.sort(fromIndex: Int, toIndex: Int) = Arrays.sort(this, fromIndex, toIndex) +inline fun IntArray.sort(fromIndex: Int, toIndex: Int) = Arrays.sort(this, fromIndex, toIndex) +inline fun LongArray.sort(fromIndex: Int, toIndex: Int) = Arrays.sort(this, fromIndex, toIndex) +inline fun FloatArray.sort(fromIndex: Int, toIndex: Int) = Arrays.sort(this, fromIndex, toIndex) +inline fun DoubleArray.sort(fromIndex: Int, toIndex: Int) = Arrays.sort(this, fromIndex, toIndex) +inline fun CharArray.sort(fromIndex: Int, toIndex: Int) = Arrays.sort(this, fromIndex, toIndex) + +inline fun BooleanArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) +inline fun ByteArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) +inline fun ShortArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) +inline fun IntArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) +inline fun LongArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) +inline fun FloatArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) +inline fun DoubleArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) +inline fun CharArray.copyOf(newLength: Int = this.size) = Arrays.copyOf(this, newLength) + +inline fun Array.copyOf(newLength: Int = this.size) : Array = Arrays.copyOf(this, newLength).sure() + +inline fun BooleanArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) +inline fun ByteArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) +inline fun ShortArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) +inline fun IntArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) +inline fun LongArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) +inline fun FloatArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) +inline fun DoubleArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) +inline fun CharArray.copyOfRange(from: Int, to: Int) = Arrays.copyOfRange(this, from, to) + +inline fun Array.copyOfRange(from: Int, to: Int) : Array = Arrays.copyOfRange(this, from, to).sure() + +inline val ByteArray.inputStream : ByteArrayInputStream + get() = ByteArrayInputStream(this) + +inline fun ByteArray.inputStream(offset: Int, length: Int) = ByteArrayInputStream(this, offset, length) + diff --git a/k2js/out/production/stdlib/Filter.kt b/k2js/out/production/stdlib/Filter.kt new file mode 100644 index 00000000000..bf458ae0fb8 --- /dev/null +++ b/k2js/out/production/stdlib/Filter.kt @@ -0,0 +1,64 @@ +package std + +import java.util.* +import java.lang.Iterable + +/* +Filters given iterator +*/ +inline fun java.util.Iterator.filter(f: (T)-> Boolean) : java.util.Iterator = FilterIterator(this, f) + +/* +Adds filtered elements in to given container +*/ +inline fun > java.lang.Iterable.filterTo(var container: U, filter: (T)->Boolean) : U { + for(element in this) { + if(filter(element)) + container.add(element) + } + return container +} + +/* +Create iterator filtering given java.lang.Iterable +*/ +/* +inline fun java.lang.Iterable.filter(f: (T)->Boolean) : java.util.Iterator = (iterator() as java.util.Iterator).filter(f) +*/ + +private class FilterIterator(val original: java.util.Iterator, val filter: (T)-> Boolean) : java.util.Iterator { + var state = 0 + var nextElement: T? = null + + override fun hasNext(): Boolean = + when(state) { + 1 -> true // checked and next present + 2 -> false // checked and next not present + else -> { + while(original.hasNext()) { + val candidate = original.next() + if((filter)(candidate)) { + nextElement = candidate + state = 1 + true + } + } + state = 2 + false + } + } + + override fun next(): T = + if(state != 1) + throw java.util.NoSuchElementException() + else { + val res = nextElement as T + nextElement = null + state = 0 + res + } + + override fun remove() { + throw java.lang.UnsupportedOperationException() + } +} diff --git a/k2js/out/production/stdlib/Integer.kt b/k2js/out/production/stdlib/Integer.kt new file mode 100644 index 00000000000..1010327414d --- /dev/null +++ b/k2js/out/production/stdlib/Integer.kt @@ -0,0 +1,18 @@ +package std + +inline fun Int.times(body : () -> Unit) { + var count = this; + while (count > 0) { + body() + count-- + } +} + +inline fun parseInt(str : String) : Int? { + try { + return Integer.parseInt(str).sure(); + } + catch (e : NumberFormatException) { + return null; + } +} diff --git a/k2js/out/production/stdlib/Iterators.kt b/k2js/out/production/stdlib/Iterators.kt new file mode 100644 index 00000000000..7b3087e952e --- /dev/null +++ b/k2js/out/production/stdlib/Iterators.kt @@ -0,0 +1,38 @@ +package std.util + +import java.util.* +import java.util.Iterator + +/* +Add iterated elements to given container +*/ +fun > java.util.Iterator.to(container: U) : U { + while(hasNext()) + container.add(next()) + return container +} + +/* +Add iterated elements to java.util.ArrayList +*/ +inline fun java.util.Iterator.toArrayList() = to(ArrayList()) + +/* +Add iterated elements to java.util.LinkedList +*/ +inline fun java.util.Iterator.toLinkedList() = to(LinkedList()) + +/* +Add iterated elements to java.util.HashSet +*/ +inline fun java.util.Iterator.toHashSet() = to(HashSet()) + +/* +Add iterated elements to java.util.LinkedHashSet +*/ +inline fun java.util.Iterator.toLinkedHashSet() = to(LinkedHashSet()) + +/* +Add iterated elements to java.util.TreeSet +*/ +inline fun java.util.Iterator.toTreeSet() = to(TreeSet()) diff --git a/k2js/out/production/stdlib/JavaCollections.kt b/k2js/out/production/stdlib/JavaCollections.kt new file mode 100644 index 00000000000..d788529d489 --- /dev/null +++ b/k2js/out/production/stdlib/JavaCollections.kt @@ -0,0 +1,10 @@ +package std.util + +import java.util.* + +/** Returns a new collection containing the results of applying the given function to each element in this collection */ +inline fun java.util.Collection.map(result: Collection = ArrayList(this.size), transform : (T) -> R) : Collection { + for (item in this) + result.add(transform(item)) + return result +} diff --git a/k2js/out/production/stdlib/JavaIo.kt b/k2js/out/production/stdlib/JavaIo.kt new file mode 100644 index 00000000000..5897db01e3f --- /dev/null +++ b/k2js/out/production/stdlib/JavaIo.kt @@ -0,0 +1,171 @@ +package std.io + +import java.io.* +import java.nio.charset.* +import java.util.NoSuchElementException + +inline fun print(message : Any?) { System.out?.print(message) } +inline fun print(message : Int) { System.out?.print(message) } +inline fun print(message : Long) { System.out?.print(message) } +inline fun print(message : Byte) { System.out?.print(message) } +inline fun print(message : Short) { System.out?.print(message) } +inline fun print(message : Char) { System.out?.print(message) } +inline fun print(message : Boolean) { System.out?.print(message) } +inline fun print(message : Float) { System.out?.print(message) } +inline fun print(message : Double) { System.out?.print(message) } +inline fun print(message : CharArray) { System.out?.print(message) } + +inline fun println(message : Any?) { System.out?.println(message) } +inline fun println(message : Int) { System.out?.println(message) } +inline fun println(message : Long) { System.out?.println(message) } +inline fun println(message : Byte) { System.out?.println(message) } +inline fun println(message : Short) { System.out?.println(message) } +inline fun println(message : Char) { System.out?.println(message) } +inline fun println(message : Boolean) { System.out?.println(message) } +inline fun println(message : Float) { System.out?.println(message) } +inline fun println(message : Double) { System.out?.println(message) } +inline fun println(message : CharArray) { System.out?.println(message) } +inline fun println() { System.out?.println() } + +private val stdin : BufferedReader = BufferedReader(InputStreamReader(object : InputStream() { + override fun read() : Int { + return System.`in`?.read() ?: -1 + } + + override fun reset() { + System.`in`?.reset() + } + + override fun read(b: ByteArray?): Int { + return System.`in`?.read(b) ?: -1 + } + + override fun close() { + System.`in`?.close() + } + + override fun mark(readlimit: Int) { + System.`in`?.mark(readlimit) + } + + override fun skip(n: Long): Long { + return System.`in`?.skip(n) ?: -1.lng + } + + override fun available(): Int { + return System.`in`?.available() ?: 0 + } + + override fun markSupported(): Boolean { + return System.`in`?.markSupported() ?: false + } + + override fun read(b: ByteArray?, off: Int, len: Int): Int { + return System.`in`?.read(b, off, len) ?: -1 + } +})) + +inline fun readLine() : String? = stdin.readLine() + +/** Uses the given resource then closes it to ensure its closed again */ +inline fun T.foreach(block: (T)-> R) : R { + var closed = false + try { + return block(this) + } catch (e: Exception) { + closed = true + try { + this.close() + } catch (closeException: Exception) { + // eat the closeException as we are already throwing the original cause + // and we don't want to mask the real exception + + // TODO on Java 7 we should call + // e.addSuppressed(closeException) + // to work like try-with-resources + // http://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html#suppressed-exceptions + } + throw e + } finally { + if (!closed) { + this.close() + } + } +} + +fun InputStream.iterator() : ByteIterator = + object: ByteIterator() { + override val hasNext : Boolean + get() = available() > 0 + + override fun nextByte() = read().byt + } + +inline fun InputStream.buffered(bufferSize: Int) = BufferedInputStream(this, bufferSize) + +inline val InputStream.reader : InputStreamReader + get() = InputStreamReader(this) + +inline val InputStream.bufferedReader : BufferedReader + get() = BufferedReader(reader) + +inline fun InputStream.reader(charset: Charset) : InputStreamReader = InputStreamReader(this, charset) + +inline fun InputStream.reader(charsetName: String) = InputStreamReader(this, charsetName) + +inline fun InputStream.reader(charsetDecoder: CharsetDecoder) = InputStreamReader(this, charsetDecoder) + +inline val InputStream.buffered : BufferedInputStream + get() = if(this is BufferedInputStream) this else BufferedInputStream(this) + +// inline val Reader.buffered : BufferedReader +// get() = if(this is BufferedReader) this else BufferedReader(this) + +inline fun Reader.buffered(): BufferedReader = if(this is BufferedReader) this else BufferedReader(this) + +inline fun Reader.buffered(bufferSize: Int) = BufferedReader(this, bufferSize) + +inline fun Reader.foreachLine(block: (String) -> Unit): Unit { + this.foreach{ + val iter = buffered().lineIterator() + while (iter.hasNext) { + val elem = iter.next() + block(elem) + } + } +} + +inline fun Reader.useLines(block: (Iterator) -> T): T = this.buffered().foreach{block(it.lineIterator())} +/** + * Returns an iterator over each line. + * Note the caller must close the underlying BufferedReader + * when the iteration is finished; as the user may not complete the iteration loop (e.g. using a method like find() or any() on the iterator + * may terminate the iteration early. + *
+ * We suggest you try the method useLines() instead which closes the stream when the processing is complete. + */ +inline fun BufferedReader.lineIterator() : Iterator = LineIterator(this) + +protected class LineIterator(val reader: BufferedReader) : Iterator { + private var nextValue: String? = null + private var done = false + + override val hasNext: Boolean + get() { + if (nextValue == null && !done) { + nextValue = reader.readLine() + if (nextValue == null) done = true + } + return nextValue != null + } + + override fun next(): String { + if (!hasNext) { + throw NoSuchElementException() + } + val answer = nextValue + nextValue = null + return answer.sure() + } +} + diff --git a/k2js/out/production/stdlib/JavaIterables.kt b/k2js/out/production/stdlib/JavaIterables.kt new file mode 100644 index 00000000000..8815f7e929d --- /dev/null +++ b/k2js/out/production/stdlib/JavaIterables.kt @@ -0,0 +1,163 @@ +package std.util + +import java.util.* + +/** Returns true if any elements in the collection match the given predicate */ +inline fun java.lang.Iterable.any(predicate: (T)-> Boolean) : Boolean { + for (elem in this) { + if (predicate(elem)) { + return true + } + } + return false +} + +/** Returns true if all elements in the collection match the given predicate */ +inline fun java.lang.Iterable.all(predicate: (T)-> Boolean) : Boolean { + for (elem in this) { + if (!predicate(elem)) { + return false + } + } + return true +} + +/** Returns the number of items which match the given predicate */ +inline fun java.lang.Iterable.count(predicate: (T)-> Boolean) : Int { + var answer = 0 + for (elem in this) { + if (predicate(elem)) + answer += 1 + } + return answer +} + +/** Returns the first item in the collection which matches the given predicate or null if none matched */ +inline fun java.lang.Iterable.find(predicate: (T)-> Boolean) : T? { + for (elem in this) { + if (predicate(elem)) + return elem + } + return null +} + +/** Returns a new collection containing all elements in this collection which match the given predicate */ +inline fun java.lang.Iterable.filter(result: Collection = ArrayList(), predicate: (T)-> Boolean) : Collection { + for (elem in this) { + if (predicate(elem)) + result.add(elem) + } + return result +} + +/** Returns a new collection containing all elements in this collection which do not match the given predicate */ +inline fun java.lang.Iterable.filterNot(result: Collection = ArrayList(), predicate: (T)-> Boolean) : Collection { + for (elem in this) { + if (!predicate(elem)) + result.add(elem) + } + return result +} + +/** + * Returns the result of transforming each item in the collection to a one or more values which + * are concatenated together into a single collection + */ +inline fun java.lang.Iterable.flatMap(result: Collection = ArrayList(), transform: (T)-> Collection) : Collection { + for (elem in this) { + val coll = transform(elem) + if (coll != null) { + for (r in coll) { + result.add(r) + } + } + } + return result +} + +/** Performs the given operation on each element inside the collection */ +inline fun java.lang.Iterable.foreach(operation: (element: T) -> Unit) { + for (elem in this) + operation(elem) +} + +/** + * Folds all the values from from left to right with the initial value to perform the operation on sequential pairs of values + * + * For example to sum together all numeric values in a collection of numbers it would be + * {code}val total = numbers.fold(0){(a, b) -> a + b}{code} + */ +inline fun java.lang.Iterable.fold(initial: T, operation: (it: T, it2: T) -> T): T { + var answer = initial + for (elem in this) { + answer = operation(answer, elem) + } + return answer +} + +/** + * Folds all the values from right to left with the initial value to perform the operation on sequential pairs of values + */ +inline fun java.lang.Iterable.foldRight(initial: T, operation: (it: T, it2: T) -> T): T { + val reversed = this.reverse() + return reversed.fold(initial, operation) +} + +/** + * Iterates through the collection performing the transformation on each element and using the result + * as the key in a map to group elements by the result + */ +inline fun java.lang.Iterable.groupBy(result: Map> = HashMap>(), toKey: (T)-> K) : Map> { + for (elem in this) { + val key = toKey(elem) + val list = result.getOrElseUpdate(key){ ArrayList() } + list.add(elem) + } + return result +} + + +/** Creates a String from all the elements in the collection, using the seperator between them and using the given prefix and postfix if supplied */ +inline fun java.lang.Iterable.join(separator: String, prefix: String = "", postfix: String = "") : String { + val buffer = StringBuilder(prefix) + var first = true + for (elem in this) { + if (first) + first = false + else + buffer.append(separator) + buffer.append(elem) + } + buffer.append(postfix) + return buffer.toString().sure() +} + +/** Returns a reversed List of this collection */ +inline fun java.lang.Iterable.reverse() : List { + val answer = LinkedList() + for (elem in this) { + answer.addFirst(elem) + } + return answer +} + +inline fun > java.lang.Iterable.to(result: C) : C { + for (elem in this) + result.add(elem) + return result +} + +inline fun java.lang.Iterable.toLinkedList() : LinkedList = this.to(LinkedList()) + +inline fun java.lang.Iterable.toList() : List = this.to(ArrayList()) + +inline fun java.lang.Iterable.toSet() : Set = this.to(HashSet()) + +/** + TODO figure out necessary variance/generics ninja stuff... :) +inline fun java.lang.Iterable.toSortedList(transform: fun(T) : java.lang.Comparable<*>) : List { + val answer = this.toList() + answer.sort(transform) + return answer +} +*/ diff --git a/k2js/out/production/stdlib/JavaIterablesSpecial.kt b/k2js/out/production/stdlib/JavaIterablesSpecial.kt new file mode 100644 index 00000000000..3a564fabeb8 --- /dev/null +++ b/k2js/out/production/stdlib/JavaIterablesSpecial.kt @@ -0,0 +1,85 @@ +package std.util +// Number of extension function for ava.lang.Iterable that shouldn't participate in auto generation + +import java.util.Collection +import java.util.List +import java.util.AbstractList + +/** + * Count the number of elements in collection. + * + * If base collection implements Collection interface method Collection#size() will be used. + * Otherwise, this method determines the count by iterating through the all items. + */ +fun java.lang.Iterable.count() : Int { + if (this is Collection) { + return this.size() + } + + var number : Int = 0 + for (elem in this) { + ++number + } + return number +} + +/** + * Get the first element in the collection. + * + * Will throw an exception if there are no elements + * TODO: Specify type of the exception + */ +inline fun java.lang.Iterable.first() : T { + if (this is AbstractList) { + return this.get(0) + } + + return this.iterator().sure().next() +} + +/** + * Get the last element in the collection. + * + * If base collection implements List interface, the combination of size() and get() + * methods will be used for getting last element. Otherwise, this method determines the + * last item by iterating through the all items. + * + * Will throw an exception if there are no elements. + * TODO: Specify type of the exception + */ +fun java.lang.Iterable.last() : T { + if (this is List) { + return this.get(this.size() - 1); + } + + val iterator = this.iterator().sure() + var last : T = iterator.next() + + while (iterator.hasNext()) { + last = iterator.next() + } + + return last; +} + +/** + * Checks if collection contains given item. + * + * Method checks equality of the objects with T.equals method. + * If collection implements java.util.AbstractCollection an overridden implementation of the contains + * method will be used. + */ +fun java.lang.Iterable.contains(item : T) : Boolean { + std.io.println("!!!!!") + if (this is java.util.AbstractCollection) { + return this.contains(item); + } + + for (var elem in this) { + if (elem.equals(item)) { + return true + } + } + + return false +} diff --git a/k2js/out/production/stdlib/JavaLang.kt b/k2js/out/production/stdlib/JavaLang.kt new file mode 100644 index 00000000000..66009d500cf --- /dev/null +++ b/k2js/out/production/stdlib/JavaLang.kt @@ -0,0 +1,14 @@ +package std + +import java.lang.Class +import java.lang.Object + +val T.javaClass : Class + get() = jet.runtime.Intrinsics.getJavaClass(this) as Class + +fun javaClass() : Class = (typeinfo() as org.jetbrains.jet.rt.TypeInfoImpl).getJavaClass().sure() + +val TypeInfo.javaClassForType : Class + get() { + return (this as org.jetbrains.jet.rt.TypeInfoImpl).getJavaClass().sure() + } diff --git a/k2js/out/production/stdlib/JavaMath.kt b/k2js/out/production/stdlib/JavaMath.kt new file mode 100644 index 00000000000..726ad082f58 --- /dev/null +++ b/k2js/out/production/stdlib/JavaMath.kt @@ -0,0 +1,27 @@ +package std.math + +import java.math.BigInteger +import java.math.BigDecimal + +fun BigInteger.plus(other: BigInteger) = this.add(other).sure() + +fun BigInteger.minus(other: BigInteger) = this.subtract(other).sure() + +fun BigInteger.times(other: BigInteger) = this.multiply(other).sure() + +fun BigInteger.div(other: BigInteger) = this.divide(other).sure() + +fun BigInteger.minus() = this.negate().sure() + + +fun BigDecimal.plus(other: BigDecimal) = this.add(other).sure() + +fun BigDecimal.minus(other: BigDecimal) = this.subtract(other).sure() + +fun BigDecimal.times(other: BigDecimal) = this.multiply(other).sure() + +fun BigDecimal.div(other: BigDecimal) = this.divide(other).sure() + +fun BigDecimal.mod(other: BigDecimal) = this.remainder(other).sure() + +fun BigDecimal.minus() = this.negate().sure() \ No newline at end of file diff --git a/k2js/out/production/stdlib/JavaUtil.kt b/k2js/out/production/stdlib/JavaUtil.kt new file mode 100644 index 00000000000..36fc28165ec --- /dev/null +++ b/k2js/out/production/stdlib/JavaUtil.kt @@ -0,0 +1,86 @@ +package std.util + +import java.util.* + +/** Returns the size of the collection */ +val Collection<*>.size : Int + get() = size() + +/** Returns true if this collection is empty */ +val Collection<*>.empty : Boolean + get() = isEmpty() + +/** Returns a new ArrayList with a variable number of initial elements */ +inline fun arrayList(vararg values: T) : ArrayList = values.to(ArrayList(values.size)) + +/** Returns a new LinkedList with a variable number of initial elements */ +inline fun linkedList(vararg values: T) : LinkedList = values.to(LinkedList()) + +/** Returns a new HashSet with a variable number of initial elements */ +inline fun hashSet(vararg values: T) : HashSet = values.to(HashSet(values.size)) + +val Collection<*>.indices : IntRange + get() = 0..size-1 + +inline fun java.util.Collection.toArray() : Array { + val answer = Array(this.size) + var idx = 0 + for (elem in this) + answer[idx++] = elem + return answer as Array +} + +/** TODO these functions don't work when they generate the Array versions when they are in JavaIterables */ +inline fun > java.lang.Iterable.toSortedList() : List = toList().sort() + +inline fun > java.lang.Iterable.toSortedList(comparator: java.util.Comparator) : List = toList().sort(comparator) + + + +// List APIs + +inline fun > List.sort() : List { + Collections.sort(this) + return this +} + +inline fun > List.sort(comparator: java.util.Comparator) : List { + Collections.sort(this, comparator) + return this +} + +/** + TODO figure out necessary variance/generics ninja stuff... :) +inline fun List.sort(transform: fun(T) : java.lang.Comparable<*>) : List { + val comparator = java.util.Comparator() { + fun compare(o1: T, o2: T): Int { + val v1 = transform(o1) + val v2 = transform(o2) + if (v1 == v2) { + return 0 + } else { + return v1.compareTo(v2) + } + } + } + answer.sort(comparator) +} +*/ + +val List.head : T? + get() = this.get(0) + +val List.first : T? + get() = this.head + +val List.tail : T? + get() { + val s = this.size + return if (s > 0) this.get(s - 1) else null + } + +val List.last : T? + get() = this.tail + + + diff --git a/k2js/out/production/stdlib/JavaUtilMap.kt b/k2js/out/production/stdlib/JavaUtilMap.kt new file mode 100644 index 00000000000..cafdafc967d --- /dev/null +++ b/k2js/out/production/stdlib/JavaUtilMap.kt @@ -0,0 +1,52 @@ +package std.util + +import java.util.Map as JMap + +// Temporary workaround: commenting out +//import java.util.Map.Entry as JEntry + +// Map APIs + +/** Returns the size of the map */ +val JMap<*,*>.size : Int + get() = size() + +/** Returns true if this map is empty */ +val JMap<*,*>.empty : Boolean + get() = isEmpty() + +/** Provides [] access to maps */ +fun JMap.set(key : K, value : V) = this.put(key, value) + + +/** Returns the key of the entry */ +// Temporary workaround: commenting out +//val JEntry.key : K +// get() = getKey().sure() + +/** Returns the value of the entry */ +// Temporary workaround: commenting out +//val JEntry.value : V +// get() = getValue().sure() + +/** Returns the value for the given key or returns the result of the defaultValue function if there was no entry for the given key */ +inline fun java.util.Map.getOrElse(key: K, defaultValue: ()-> V) : V { + val current = this.get(key) + if (current != null) { + return current + } else { + return defaultValue() + } +} + +/** Returns the value for the given key or the result of the defaultValue function is put into the map for the given value and returned */ +inline fun java.util.Map.getOrElseUpdate(key: K, defaultValue: ()-> V) : V { + val current = this.get(key) + if (current != null) { + return current + } else { + val answer = defaultValue() + this.put(key, answer) + return answer + } +} diff --git a/k2js/out/production/stdlib/Standard.kt b/k2js/out/production/stdlib/Standard.kt new file mode 100644 index 00000000000..bcbd9db2ac1 --- /dev/null +++ b/k2js/out/production/stdlib/Standard.kt @@ -0,0 +1,71 @@ +package std + +import java.util.Collection +import java.util.ArrayList +import java.util.LinkedList +import java.util.HashSet +import java.util.LinkedHashSet +import java.util.TreeSet + +/* +Helper to make jet.Iterator usable in for +*/ +inline fun jet.Iterator.iterator() = this + +/* +Helper to make java.util.Iterator usable in for +*/ +inline fun java.util.Iterator.iterator() = this + +/* +Helper to make java.util.Enumeration usable in for +*/ +fun java.util.Enumeration.iterator(): Iterator = object: Iterator { + override val hasNext: Boolean + get() = hasMoreElements() + + override fun next() = nextElement() +} + +/* + * Extension functions on the standard Kotlin types to behave like the java.lang.* and java.util.* collections + */ + +/* +Add iterated elements to given container +*/ +fun > Iterator.to(container: U) : U { + while(hasNext) + container.add(next()) + return container +} + +/* +Add iterated elements to java.util.ArrayList +*/ +inline fun Iterator.toArrayList() = to(ArrayList()) + +/* +Add iterated elements to java.util.LinkedList +*/ +inline fun Iterator.toLinkedList() = to(LinkedList()) + +/* +Add iterated elements to java.util.HashSet +*/ +inline fun Iterator.toHashSet() = to(HashSet()) + +/* +Add iterated elements to java.util.LinkedHashSet +*/ +inline fun Iterator.toLinkedHashSet() = to(LinkedHashSet()) + +/* +Add iterated elements to java.util.TreeSet +*/ +inline fun Iterator.toTreeSet() = to(TreeSet()) + +/* +Run function f +*/ +inline fun run(f: () -> T) = f() diff --git a/k2js/out/production/stdlib/String.kt b/k2js/out/production/stdlib/String.kt new file mode 100644 index 00000000000..e756e338ff4 --- /dev/null +++ b/k2js/out/production/stdlib/String.kt @@ -0,0 +1,83 @@ +package std + +import java.io.StringReader + +inline fun String.lastIndexOf(s: String) = (this as java.lang.String).lastIndexOf(s) + +inline fun String.lastIndexOf(s: Char) = (this as java.lang.String).lastIndexOf(s.toString()) + +inline fun String.equalsIgnoreCase(s: String) = (this as java.lang.String).equalsIgnoreCase(s) + +inline fun String.indexOf(s : String) = (this as java.lang.String).indexOf(s) + +inline fun String.indexOf(p0 : String, p1 : Int) = (this as java.lang.String).indexOf(p0, p1) + +inline fun String.replace(s: Char, s1 : Char) = (this as java.lang.String).replace(s, s1).sure() + +inline fun String.replaceAll(s: String, s1 : String) = (this as java.lang.String).replaceAll(s, s1).sure() + +inline fun String.trim() = (this as java.lang.String).trim().sure() + +inline fun String.toUpperCase() = (this as java.lang.String).toUpperCase().sure() + +inline fun String.toLowerCase() = (this as java.lang.String).toLowerCase().sure() + +inline fun String.length() = (this as java.lang.String).length() + +inline fun String.getBytes() = (this as java.lang.String).getBytes().sure() + +inline fun String.toCharArray() = (this as java.lang.String).toCharArray().sure() + +inline fun String.format(s : String, vararg objects : Any?) = java.lang.String.format(s, objects).sure() + +inline fun String.split(s : String) = (this as java.lang.String).split(s) + +inline fun String.substring(i : Int) = (this as java.lang.String).substring(i).sure() + +inline fun String.substring(i0 : Int, i1 : Int) = (this as java.lang.String).substring(i0, i1).sure() + +inline fun String.startsWith(prefix: String) = (this as java.lang.String).startsWith(prefix) + +inline fun String.startsWith(prefix: String, toffset: Int) = (this as java.lang.String).startsWith(prefix, toffset) + +inline fun String.contains(seq: CharSequence) : Boolean = (this as java.lang.String).contains(seq) + +inline fun String.endsWith(seq: String) : Boolean = (this as java.lang.String).endsWith(seq) + +inline val String.size : Int + get() = length() + +inline val String.reader : StringReader + get() = StringReader(this) + +// "constructors" for String + +inline fun String(bytes : ByteArray, i : Int, i1 : Int, s : String) = java.lang.String(bytes, i, i1, s) as String + +inline fun String(bytes : ByteArray, i : Int, i1 : Int, charset : java.nio.charset.Charset) = java.lang.String(bytes, i, i1, charset) as String + +inline fun String(bytes : ByteArray, s : String?) = java.lang.String(bytes, s) as String + +inline fun String(bytes : ByteArray, charset : java.nio.charset.Charset) = java.lang.String(bytes, charset) as String + +inline fun String(bytes : ByteArray, i : Int, i1 : Int) = java.lang.String(bytes, i, i1) as String + +inline fun String(bytes : ByteArray) = java.lang.String(bytes) as String + +inline fun String(chars : CharArray) = java.lang.String(chars) as String + +inline fun String(stringBuffer : java.lang.StringBuffer) = java.lang.String(stringBuffer) as String + +inline fun String(stringBuilder : java.lang.StringBuilder) = java.lang.String(stringBuilder) as String + +/* +Iterator for characters of given CharSequence +*/ +inline fun CharSequence.iterator() : CharIterator = object: jet.CharIterator() { + private var index = 0 + + public override fun nextChar(): Char = get(index++) + + public override val hasNext: Boolean + get() = index < length +} diff --git a/k2js/out/production/stdlib/System.kt b/k2js/out/production/stdlib/System.kt new file mode 100644 index 00000000000..bd761eac5fe --- /dev/null +++ b/k2js/out/production/stdlib/System.kt @@ -0,0 +1,19 @@ +package std.util + +/** +Executes current block and returns elapsed time in milliseconds +*/ +fun measureTimeMillis(block: () -> Unit) : Long { + val start = System.currentTimeMillis() + block() + return System.currentTimeMillis() - start +} + +/** +Executes current block and returns elapsed time in nanoseconds +*/ +fun measureTimeNano(block: () -> Unit) : Long { + val start = System.nanoTime() + block() + return System.nanoTime() - start +} diff --git a/k2js/out/production/stdlib/concurrent/FunctionalList.kt b/k2js/out/production/stdlib/concurrent/FunctionalList.kt new file mode 100644 index 00000000000..d3b4f2cd1ff --- /dev/null +++ b/k2js/out/production/stdlib/concurrent/FunctionalList.kt @@ -0,0 +1,57 @@ +package std.concurrent + +abstract class FunctionalList(public val size: Int) { + public abstract val head: T + public abstract val tail: FunctionalList + + val empty : Boolean + get() = size == 0 + + fun add(element: T) : FunctionalList = FunctionalList.Standard(element, this) + + fun reversed() : FunctionalList { + if(empty) + return this + + var cur = tail + var new = of(head) + + while(!cur.empty) { + new = new.add(cur.head) + cur = cur.tail + } + return new + } + + fun iterator() = object: Iterator { + var cur = this@FunctionalList + + override fun next(): T { + if(cur.empty) + throw java.util.NoSuchElementException() + + val head = cur.head + cur = cur.tail + return head + } + + override val hasNext: Boolean + get() = !cur.empty + } + + class object { + class Empty() : FunctionalList(0) { + override val head: T + get() = throw java.util.NoSuchElementException() + override val tail: FunctionalList + get() = throw java.util.NoSuchElementException() + } + + class Standard(override val head: T, override val tail: FunctionalList) : FunctionalList(tail.size+1) + + fun emptyList() = Empty() + + fun of(element: T) : FunctionalList = FunctionalList.Standard(element,emptyList()) + } +} + diff --git a/k2js/out/production/stdlib/concurrent/FunctionalQueue.kt b/k2js/out/production/stdlib/concurrent/FunctionalQueue.kt new file mode 100644 index 00000000000..3dc6ee83303 --- /dev/null +++ b/k2js/out/production/stdlib/concurrent/FunctionalQueue.kt @@ -0,0 +1,30 @@ +package std.concurrent + +import java.util.concurrent.Executor +import jet.Iterator + +class FunctionalQueue ( + val input: FunctionalList = FunctionalList.emptyList(), + val output: FunctionalList = FunctionalList.emptyList()) { + + val size : Int + get() = input.size + output.size + + val empty : Boolean + get() = size == 0 + + fun add(element: T) = FunctionalQueue(input add element, output) + + fun addFirst(element: T) = FunctionalQueue(input, output add element) + + fun removeFirst() : #(T,FunctionalQueue) = + if(output.empty) { + if(input.empty) + throw java.util.NoSuchElementException() + else + FunctionalQueue(FunctionalList.emptyList(), input.reversed()).removeFirst() + } + else { + #(output.head, FunctionalQueue(input, output.tail)) + } +} diff --git a/k2js/out/production/stdlib/concurrent/Locks.kt b/k2js/out/production/stdlib/concurrent/Locks.kt new file mode 100644 index 00000000000..54a5126f751 --- /dev/null +++ b/k2js/out/production/stdlib/concurrent/Locks.kt @@ -0,0 +1,58 @@ +package std.concurrent + +import java.util.concurrent.locks.Lock +import java.util.concurrent.locks.ReadWriteLock +import java.util.concurrent.locks.ReentrantReadWriteLock +import java.util.concurrent.locks.ReentrantReadWriteLock.ReadLock + +/* +Executes given calculation under lock +Returns result of the calculation +*/ +inline fun Lock.withLock(action: ()->T) : T { + lock() + try { + return action() + } + finally { + unlock(); + } +} + +/* +Executes given calculation under read lock +Returns result of the calculation +*/ +inline fun ReentrantReadWriteLock.read(action: ()->T) : T { + val rl = readLock().sure() + rl.lock() + try { + return action() + } + finally { + rl.unlock() + } +} + +/* +Executes given calculation under write lock. +The method does upgrade from read to write lock if needed +If such write has been initiated by checking some condition, the condition must be rechecked inside the action to avoid possible races +Returns result of the calculation +*/ +inline fun ReentrantReadWriteLock.write(action: ()->T) : T { + val rl = readLock().sure() + + val readCount = if (getWriteHoldCount() == 0) getReadHoldCount() else 0 + readCount times { rl.unlock() } + + val wl = writeLock().sure() + wl.lock() + try { + return action() + } + finally { + readCount times { rl.lock() } + wl.unlock() + } +} diff --git a/k2js/out/production/stdlib/concurrent/Thread.kt b/k2js/out/production/stdlib/concurrent/Thread.kt new file mode 100644 index 00000000000..a6ecf1eaee3 --- /dev/null +++ b/k2js/out/production/stdlib/concurrent/Thread.kt @@ -0,0 +1,53 @@ +package std.concurrent + +import java.lang.* +import java.util.concurrent.Executor + +inline val currentThread : Thread + get() = Thread.currentThread().sure() + +inline var Thread.name : String + get() = getName().sure() + set(name: String) { setName(name) } + +inline var Thread.daemon : Boolean + get() = isDaemon() + set(on: Boolean) { setDaemon(on) } + +inline val Thread.alive : Boolean + get() = isAlive() + +inline var Thread.priority : Int + get() = getPriority() + set(prio: Int) { setPriority(prio) } + +inline var Thread.contextClassLoader : ClassLoader? + get() = getContextClassLoader() + set(loader: ClassLoader?) { setContextClassLoader(loader) } + +fun thread(start: Boolean = true, daemon: Boolean = false, contextClassLoader: ClassLoader? = null, name: String? = null, priority: Int = -1, block: ()->Unit) : Thread { + val thread = object: Thread() { + override fun run() { + block() + } + } + if(daemon) + thread.setDaemon(true) + if(priority > 0) + thread.setPriority(priority) + if(name != null) + thread.setName(name) + if(contextClassLoader != null) + thread.setContextClassLoader(contextClassLoader) + if(start) + thread.start() + return thread +} + +inline fun Executor.execute(action: ()->Unit) { + execute(object: Runnable{ + override fun run() { + action() + } + }) +} diff --git a/k2js/out/production/stdlib/concurrent/Timer.kt b/k2js/out/production/stdlib/concurrent/Timer.kt new file mode 100644 index 00000000000..5278efcba4d --- /dev/null +++ b/k2js/out/production/stdlib/concurrent/Timer.kt @@ -0,0 +1,71 @@ +package std.concurrent + +import java.util.Timer +import java.util.TimerTask +import java.util.Date + +fun Timer.schedule(delay: Long, action: TimerTask.()->Unit) : TimerTask { + val task = createTask(action) + schedule(task, delay) + return task +} + +fun Timer.schedule(time: Date, action: TimerTask.()->Unit) : TimerTask { + val task = createTask(action) + schedule(task, time) + return task +} + +fun Timer.schedule(delay: Long, period: Long, action: TimerTask.()->Unit) : TimerTask { + val task = createTask(action) + schedule(task, delay, period) + return task +} + +fun Timer.schedule(time: Date, period: Long, action: TimerTask.()->Unit) : TimerTask { + val task = createTask(action) + schedule(task, time, period) + return task +} + +fun Timer.scheduleAtFixedRate(delay: Long, period: Long, action: TimerTask.()->Unit) : TimerTask { + val task = createTask(action) + scheduleAtFixedRate(task, delay, period) + return task +} + +fun Timer.scheduleAtFixedRate(time: Date, period: Long, action: TimerTask.()->Unit) : TimerTask { + val task = createTask(action) + scheduleAtFixedRate(task, time, period) + return task +} + +fun timer(name: String? = null, daemon: Boolean = false, initialDelay: Long = 0.lng, period: Long, action: TimerTask.()->Unit) : Timer { + val timer = if(name == null) Timer(daemon) else Timer(name, daemon) + timer.schedule(initialDelay, period, action) + return timer +} + +fun timer(name: String? = null, daemon: Boolean = false, startAt: Date, period: Long, action: TimerTask.()->Unit) : Timer { + val timer = if(name == null) Timer(daemon) else Timer(name, daemon) + timer.schedule(startAt, period, action) + return timer +} + +fun fixedRateTimer(name: String? = null, daemon: Boolean = false, initialDelay: Long = 0.lng, period: Long, action: TimerTask.()->Unit) : Timer { + val timer = if(name == null) Timer(daemon) else Timer(name, daemon) + timer.scheduleAtFixedRate(initialDelay, period, action) + return timer +} + +fun fixedRateTimer(name: String? = null, daemon: Boolean = false, startAt: Date, period : Long, action: TimerTask.()->Unit) : Timer { + val timer = if(name == null) Timer(daemon) else Timer(name, daemon) + timer.scheduleAtFixedRate(startAt, period, action) + return timer +} + +private fun createTask(action: TimerTask.()->Unit) : TimerTask = object: TimerTask() { + override fun run() { + action() + } +} \ No newline at end of file diff --git a/k2js/out/production/stdlib/dom/Dom.kt b/k2js/out/production/stdlib/dom/Dom.kt new file mode 100644 index 00000000000..268d58d4a2a --- /dev/null +++ b/k2js/out/production/stdlib/dom/Dom.kt @@ -0,0 +1,104 @@ +package std.dom + +import std.* +import org.w3c.dom.* + + +// Properties + +var Element.id : String +get() = this.getAttribute("id")?: "" +set(value) { + this.setAttribute("id", value) +} + +var Element.style : String +get() = this.getAttribute("style")?: "" +set(value) { + this.setAttribute("style", value) +} + +// TODO can we come up with a better name; 'class' is a reserved word? +var Element.cssClass : String +get() = this.getAttribute("class")?: "" +set(value) { + this.setAttribute("class", value) +} + +// Syntax sugar + +inline fun Node.plus(child: Node?): Node { + if (child != null) { + this.appendChild(child) + } + return this +} + +inline fun Element.plus(text: String?): Element = this.addText(text) + +inline fun Element.plusAssign(text: String?): Element = this.addText(text) + + +// Builder + +/* +Creates a new element which can be configured via a function +*/ +fun Document.createElement(name: String, init: Element.()-> Unit): Element { + val elem = this.createElement(name).sure() + elem.init() + return elem +} + +/* +Creates a new element to an element which has an owner Document which can be configured via a function +*/ +fun Element.createElement(name: String, doc: Document? = null, init: Element.()-> Unit): Element { + val elem = ownerDocument(doc).createElement(name).sure() + elem.init() + return elem +} + +/* +Returns the owner document of the element or uses the provided document +*/ +fun Node.ownerDocument(doc: Document? = null): Document { + val answer = if (this is Document) this as Document + else if (doc == null) this.getOwnerDocument() + else doc + + if (answer == null) { + throw IllegalArgumentException("Element does not have an ownerDocument and none was provided for: ${this}") + } else { + return answer + } +} + +/* +Adds a newly created element which can be configured via a function +*/ +fun Document.addElement(name: String, init: Element.()-> Unit): Element { + val child = createElement(name, init) + this.appendChild(child) + return child +} + +/* +Adds a newly created element to an element which has an owner Document which can be configured via a function +*/ +fun Element.addElement(name: String, doc: Document? = null, init: Element.()-> Unit): Element { + val child = createElement(name, doc, init) + this.appendChild(child) + return child +} + +/* +Adds a newly created text node to an element which either already has an owner Document or one must be provided as a parameter +*/ +fun Element.addText(text: String?, doc: Document? = null): Element { + if (text != null) { + val child = ownerDocument(doc).createTextNode(text) + this.appendChild(child) + } + return this +} diff --git a/k2js/out/production/stdlib/dom/DomJVM.kt b/k2js/out/production/stdlib/dom/DomJVM.kt new file mode 100644 index 00000000000..f281b56f358 --- /dev/null +++ b/k2js/out/production/stdlib/dom/DomJVM.kt @@ -0,0 +1,53 @@ +/** + * JVM specific API implementations using JAXB and so forth which would not be used when compiling to JS + */ +package std.dom + +import org.w3c.dom.* +import javax.xml.parsers.DocumentBuilder +import javax.xml.parsers.DocumentBuilderFactory +import javax.xml.transform.Transformer +import javax.xml.transform.TransformerFactory +import javax.xml.transform.Source +import javax.xml.transform.dom.DOMSource +import javax.xml.transform.stream.StreamResult + +import java.io.StringWriter +import javax.xml.transform.OutputKeys + +fun createDocument(builder: DocumentBuilder): Document { + return builder.newDocument().sure() +} + +fun createDocument(builderFactory: DocumentBuilderFactory = DocumentBuilderFactory.newInstance().sure()): Document { + return createDocument(builderFactory.newDocumentBuilder().sure()) +} + +fun createTransformer(source: Source? = null, factory: TransformerFactory = TransformerFactory.newInstance().sure()): Transformer { + val transformer = if (source != null) { + factory.newTransformer(source) + } else { + factory.newTransformer() + } + return transformer.sure() +} + +fun Node.toXmlString(xmlDeclaration: Boolean = this is Document): String { + return nodeToXmlString(this, xmlDeclaration) +} + +/* +fun Document.toXmlString(xmlDeclaration: Boolean = true): String { + return nodeToXmlString(this, xmlDeclaration) +} +*/ + +fun nodeToXmlString(node: Node, xmlDeclaration: Boolean): String { + val transformer = createTransformer() + transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, if (xmlDeclaration) "no" else "yes") + val buffer = StringWriter() + transformer.transform(DOMSource(node), StreamResult(buffer)) + return buffer.toString().sure() + +} + diff --git a/k2js/out/production/stdlib/generated/ArraysFromJavaCollections.kt b/k2js/out/production/stdlib/generated/ArraysFromJavaCollections.kt new file mode 100644 index 00000000000..12db122013e --- /dev/null +++ b/k2js/out/production/stdlib/generated/ArraysFromJavaCollections.kt @@ -0,0 +1,11 @@ +// NOTE this file is auto-generated from stdlib/ktSrc/JavaCollections.kt +package std + +import java.util.* + +/** Returns a new collection containing the results of applying the given function to each element in this collection */ +inline fun Array.map(result: Collection = ArrayList(this.size), transform : (T) -> R) : Collection { + for (item in this) + result.add(transform(item)) + return result +} diff --git a/k2js/out/production/stdlib/generated/ArraysFromJavaIterables.kt b/k2js/out/production/stdlib/generated/ArraysFromJavaIterables.kt new file mode 100644 index 00000000000..9794644f7d7 --- /dev/null +++ b/k2js/out/production/stdlib/generated/ArraysFromJavaIterables.kt @@ -0,0 +1,109 @@ +// NOTE this file is auto-generated from stdlib/ktSrc/JavaIterables.kt +package std + +import java.util.* + +/** Returns true if any elements in the collection match the given predicate */ +inline fun Array.any(predicate: (T)-> Boolean) : Boolean { + for (elem in this) { + if (predicate(elem)) { + return true + } + } + return false +} + +/** Returns true if all elements in the collection match the given predicate */ +inline fun Array.all(predicate: (T)-> Boolean) : Boolean { + for (elem in this) { + if (!predicate(elem)) { + return false + } + } + return true +} + +/** Returns the first item in the collection which matches the given predicate or null if none matched */ +inline fun Array.find(predicate: (T)-> Boolean) : T? { + for (elem in this) { + if (predicate(elem)) + return elem + } + return null +} + +/** Returns a new collection containing all elements in this collection which match the given predicate */ +inline fun Array.filter(result: Collection = ArrayList(), predicate: (T)-> Boolean) : Collection { + for (elem in this) { + if (predicate(elem)) + result.add(elem) + } + return result +} + +/** Returns a new collection containing all elements in this collection which do not match the given predicate */ +inline fun Array.filterNot(result: Collection = ArrayList(), predicate: (T)-> Boolean) : Collection { + for (elem in this) { + if (!predicate(elem)) + result.add(elem) + } + return result +} + +/** + * Returns the result of transforming each item in the collection to a one or more values which + * are concatenated together into a single collection + */ +inline fun Array.flatMap(result: Collection = ArrayList(), transform: (T)-> Collection) : Collection { + for (elem in this) { + val coll = transform(elem) + if (coll != null) { + for (r in coll) { + result.add(r) + } + } + } + return result +} + +/** Performs the given operation on each element inside the collection */ +inline fun Array.foreach(operation: (element: T) -> Unit) { + for (elem in this) + operation(elem) +} + +/** Creates a String from all the elements in the collection, using the seperator between them and using the given prefix and postfix if supplied */ +inline fun Array.join(separator: String, prefix: String = "", postfix: String = "") : String { + val buffer = StringBuilder(prefix) + var first = true + for (elem in this) { + if (first) + first = false + else + buffer.append(separator) + buffer.append(elem) + } + buffer.append(postfix) + return buffer.toString().sure() +} + +inline fun > Array.to(result: C) : C { + for (elem in this) + result.add(elem) + return result +} + +inline fun Array.toLinkedList() : LinkedList = this.to(LinkedList()) + +inline fun Array.toList() : List = this.to(ArrayList()) + +inline fun Array.toSet() : Set = this.to(HashSet()) + +/** + TODO figure out necessary variance/generics ninja stuff... :) +inline fun Array.toSortedList(transform: fun(T) : java.lang.Comparable<*>) : List { + val answer = this.toList() + answer.sort(transform) + return answer +} +*/ diff --git a/k2js/out/production/stdlib/generated/JavaUtilIterablesFromJavaCollections.kt b/k2js/out/production/stdlib/generated/JavaUtilIterablesFromJavaCollections.kt new file mode 100644 index 00000000000..e4592189fca --- /dev/null +++ b/k2js/out/production/stdlib/generated/JavaUtilIterablesFromJavaCollections.kt @@ -0,0 +1,11 @@ +// NOTE this file is auto-generated from stdlib/ktSrc/JavaCollections.kt +package std.util + +import java.util.* + +/** Returns a new collection containing the results of applying the given function to each element in this collection */ +inline fun java.lang.Iterable.map(result: Collection = ArrayList(), transform : (T) -> R) : Collection { + for (item in this) + result.add(transform(item)) + return result +} diff --git a/k2js/out/production/stdlib/generated/StandardFromJavaCollections.kt b/k2js/out/production/stdlib/generated/StandardFromJavaCollections.kt new file mode 100644 index 00000000000..e94ec1d52d3 --- /dev/null +++ b/k2js/out/production/stdlib/generated/StandardFromJavaCollections.kt @@ -0,0 +1,11 @@ +// NOTE this file is auto-generated from stdlib/ktSrc/JavaCollections.kt +package std + +import java.util.* + +/** Returns a new collection containing the results of applying the given function to each element in this collection */ +inline fun Iterable.map(result: Collection = ArrayList(), transform : (T) -> R) : Collection { + for (item in this) + result.add(transform(item)) + return result +} diff --git a/k2js/out/production/stdlib/generated/StandardFromJavaIterables.kt b/k2js/out/production/stdlib/generated/StandardFromJavaIterables.kt new file mode 100644 index 00000000000..00a566350ec --- /dev/null +++ b/k2js/out/production/stdlib/generated/StandardFromJavaIterables.kt @@ -0,0 +1,109 @@ +// NOTE this file is auto-generated from stdlib/ktSrc/JavaIterables.kt +package std + +import java.util.* + +/** Returns true if any elements in the collection match the given predicate */ +inline fun Iterable.any(predicate: (T)-> Boolean) : Boolean { + for (elem in this) { + if (predicate(elem)) { + return true + } + } + return false +} + +/** Returns true if all elements in the collection match the given predicate */ +inline fun Iterable.all(predicate: (T)-> Boolean) : Boolean { + for (elem in this) { + if (!predicate(elem)) { + return false + } + } + return true +} + +/** Returns the first item in the collection which matches the given predicate or null if none matched */ +inline fun Iterable.find(predicate: (T)-> Boolean) : T? { + for (elem in this) { + if (predicate(elem)) + return elem + } + return null +} + +/** Returns a new collection containing all elements in this collection which match the given predicate */ +inline fun Iterable.filter(result: Collection = ArrayList(), predicate: (T)-> Boolean) : Collection { + for (elem in this) { + if (predicate(elem)) + result.add(elem) + } + return result +} + +/** Returns a new collection containing all elements in this collection which do not match the given predicate */ +inline fun Iterable.filterNot(result: Collection = ArrayList(), predicate: (T)-> Boolean) : Collection { + for (elem in this) { + if (!predicate(elem)) + result.add(elem) + } + return result +} + +/** + * Returns the result of transforming each item in the collection to a one or more values which + * are concatenated together into a single collection + */ +inline fun Iterable.flatMap(result: Collection = ArrayList(), transform: (T)-> Collection) : Collection { + for (elem in this) { + val coll = transform(elem) + if (coll != null) { + for (r in coll) { + result.add(r) + } + } + } + return result +} + +/** Performs the given operation on each element inside the collection */ +inline fun Iterable.foreach(operation: (element: T) -> Unit) { + for (elem in this) + operation(elem) +} + +/** Creates a String from all the elements in the collection, using the seperator between them and using the given prefix and postfix if supplied */ +inline fun Iterable.join(separator: String, prefix: String = "", postfix: String = "") : String { + val buffer = StringBuilder(prefix) + var first = true + for (elem in this) { + if (first) + first = false + else + buffer.append(separator) + buffer.append(elem) + } + buffer.append(postfix) + return buffer.toString().sure() +} + +inline fun > Iterable.to(result: C) : C { + for (elem in this) + result.add(elem) + return result +} + +inline fun Iterable.toLinkedList() : LinkedList = this.to(LinkedList()) + +inline fun Iterable.toList() : List = this.to(ArrayList()) + +inline fun Iterable.toSet() : Set = this.to(HashSet()) + +/** + TODO figure out necessary variance/generics ninja stuff... :) +inline fun Iterable.toSortedList(transform: fun(T) : java.lang.Comparable<*>) : List { + val answer = this.toList() + answer.sort(transform) + return answer +} +*/ diff --git a/k2js/out/production/stdlib/jet/BooleanIterable.class b/k2js/out/production/stdlib/jet/BooleanIterable.class new file mode 100644 index 00000000000..0bbaeeb5f9f Binary files /dev/null and b/k2js/out/production/stdlib/jet/BooleanIterable.class differ diff --git a/k2js/out/production/stdlib/jet/BooleanIterator.class b/k2js/out/production/stdlib/jet/BooleanIterator.class new file mode 100644 index 00000000000..e5de89abd5f Binary files /dev/null and b/k2js/out/production/stdlib/jet/BooleanIterator.class differ diff --git a/k2js/out/production/stdlib/jet/ByteIterable.class b/k2js/out/production/stdlib/jet/ByteIterable.class new file mode 100644 index 00000000000..4c843f9f0d7 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ByteIterable.class differ diff --git a/k2js/out/production/stdlib/jet/ByteIterator.class b/k2js/out/production/stdlib/jet/ByteIterator.class new file mode 100644 index 00000000000..54942895d46 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ByteIterator.class differ diff --git a/k2js/out/production/stdlib/jet/ByteRange$MyIterator.class b/k2js/out/production/stdlib/jet/ByteRange$MyIterator.class new file mode 100644 index 00000000000..fc68f40d2c3 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ByteRange$MyIterator.class differ diff --git a/k2js/out/production/stdlib/jet/ByteRange.class b/k2js/out/production/stdlib/jet/ByteRange.class new file mode 100644 index 00000000000..83499e05605 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ByteRange.class differ diff --git a/k2js/out/production/stdlib/jet/CharIterable.class b/k2js/out/production/stdlib/jet/CharIterable.class new file mode 100644 index 00000000000..4a0ffdeacf3 Binary files /dev/null and b/k2js/out/production/stdlib/jet/CharIterable.class differ diff --git a/k2js/out/production/stdlib/jet/CharIterator.class b/k2js/out/production/stdlib/jet/CharIterator.class new file mode 100644 index 00000000000..1ce7eaf9187 Binary files /dev/null and b/k2js/out/production/stdlib/jet/CharIterator.class differ diff --git a/k2js/out/production/stdlib/jet/CharRange$MyIterator.class b/k2js/out/production/stdlib/jet/CharRange$MyIterator.class new file mode 100644 index 00000000000..8f379f69d27 Binary files /dev/null and b/k2js/out/production/stdlib/jet/CharRange$MyIterator.class differ diff --git a/k2js/out/production/stdlib/jet/CharRange.class b/k2js/out/production/stdlib/jet/CharRange.class new file mode 100644 index 00000000000..598259786a9 Binary files /dev/null and b/k2js/out/production/stdlib/jet/CharRange.class differ diff --git a/k2js/out/production/stdlib/jet/DefaultJetObject.class b/k2js/out/production/stdlib/jet/DefaultJetObject.class new file mode 100644 index 00000000000..a69bd72e8c2 Binary files /dev/null and b/k2js/out/production/stdlib/jet/DefaultJetObject.class differ diff --git a/k2js/out/production/stdlib/jet/DoubleIterable.class b/k2js/out/production/stdlib/jet/DoubleIterable.class new file mode 100644 index 00000000000..2184b39b43c Binary files /dev/null and b/k2js/out/production/stdlib/jet/DoubleIterable.class differ diff --git a/k2js/out/production/stdlib/jet/DoubleIterator.class b/k2js/out/production/stdlib/jet/DoubleIterator.class new file mode 100644 index 00000000000..76170cad341 Binary files /dev/null and b/k2js/out/production/stdlib/jet/DoubleIterator.class differ diff --git a/k2js/out/production/stdlib/jet/DoubleRange$MyIterator.class b/k2js/out/production/stdlib/jet/DoubleRange$MyIterator.class new file mode 100644 index 00000000000..faaf41646da Binary files /dev/null and b/k2js/out/production/stdlib/jet/DoubleRange$MyIterator.class differ diff --git a/k2js/out/production/stdlib/jet/DoubleRange.class b/k2js/out/production/stdlib/jet/DoubleRange.class new file mode 100644 index 00000000000..84a4feb8cfb Binary files /dev/null and b/k2js/out/production/stdlib/jet/DoubleRange.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction0.class b/k2js/out/production/stdlib/jet/ExtensionFunction0.class new file mode 100644 index 00000000000..50711016e33 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction0.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction1.class b/k2js/out/production/stdlib/jet/ExtensionFunction1.class new file mode 100644 index 00000000000..2d582b2ab65 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction1.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction10.class b/k2js/out/production/stdlib/jet/ExtensionFunction10.class new file mode 100644 index 00000000000..72c1b0508e8 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction10.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction11.class b/k2js/out/production/stdlib/jet/ExtensionFunction11.class new file mode 100644 index 00000000000..08e2a7ca4dd Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction11.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction12.class b/k2js/out/production/stdlib/jet/ExtensionFunction12.class new file mode 100644 index 00000000000..6d5160e7544 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction12.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction13.class b/k2js/out/production/stdlib/jet/ExtensionFunction13.class new file mode 100644 index 00000000000..8aad1c630ed Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction13.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction14.class b/k2js/out/production/stdlib/jet/ExtensionFunction14.class new file mode 100644 index 00000000000..f51f42da5b6 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction14.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction15.class b/k2js/out/production/stdlib/jet/ExtensionFunction15.class new file mode 100644 index 00000000000..5a722e99381 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction15.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction16.class b/k2js/out/production/stdlib/jet/ExtensionFunction16.class new file mode 100644 index 00000000000..c9f63ed31e4 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction16.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction17.class b/k2js/out/production/stdlib/jet/ExtensionFunction17.class new file mode 100644 index 00000000000..88e8f0fc2ba Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction17.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction18.class b/k2js/out/production/stdlib/jet/ExtensionFunction18.class new file mode 100644 index 00000000000..b5702e72379 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction18.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction19.class b/k2js/out/production/stdlib/jet/ExtensionFunction19.class new file mode 100644 index 00000000000..66ac7aaf08f Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction19.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction2.class b/k2js/out/production/stdlib/jet/ExtensionFunction2.class new file mode 100644 index 00000000000..5a7f89205ec Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction2.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction20.class b/k2js/out/production/stdlib/jet/ExtensionFunction20.class new file mode 100644 index 00000000000..ccae62cb808 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction20.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction21.class b/k2js/out/production/stdlib/jet/ExtensionFunction21.class new file mode 100644 index 00000000000..b9197103b22 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction21.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction22.class b/k2js/out/production/stdlib/jet/ExtensionFunction22.class new file mode 100644 index 00000000000..e4a213f8642 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction22.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction3.class b/k2js/out/production/stdlib/jet/ExtensionFunction3.class new file mode 100644 index 00000000000..de3d2a3f7cb Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction3.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction4.class b/k2js/out/production/stdlib/jet/ExtensionFunction4.class new file mode 100644 index 00000000000..f4585c00ef7 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction4.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction5.class b/k2js/out/production/stdlib/jet/ExtensionFunction5.class new file mode 100644 index 00000000000..b2c7d09a4a5 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction5.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction6.class b/k2js/out/production/stdlib/jet/ExtensionFunction6.class new file mode 100644 index 00000000000..51607183702 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction6.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction7.class b/k2js/out/production/stdlib/jet/ExtensionFunction7.class new file mode 100644 index 00000000000..762ee76241e Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction7.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction8.class b/k2js/out/production/stdlib/jet/ExtensionFunction8.class new file mode 100644 index 00000000000..2e7ae583fd7 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction8.class differ diff --git a/k2js/out/production/stdlib/jet/ExtensionFunction9.class b/k2js/out/production/stdlib/jet/ExtensionFunction9.class new file mode 100644 index 00000000000..32bbf02586a Binary files /dev/null and b/k2js/out/production/stdlib/jet/ExtensionFunction9.class differ diff --git a/k2js/out/production/stdlib/jet/FloatIterable.class b/k2js/out/production/stdlib/jet/FloatIterable.class new file mode 100644 index 00000000000..c5d0cb7d0e8 Binary files /dev/null and b/k2js/out/production/stdlib/jet/FloatIterable.class differ diff --git a/k2js/out/production/stdlib/jet/FloatIterator.class b/k2js/out/production/stdlib/jet/FloatIterator.class new file mode 100644 index 00000000000..59da8c2f1f5 Binary files /dev/null and b/k2js/out/production/stdlib/jet/FloatIterator.class differ diff --git a/k2js/out/production/stdlib/jet/FloatRange$MyIterator.class b/k2js/out/production/stdlib/jet/FloatRange$MyIterator.class new file mode 100644 index 00000000000..5c01b59fe58 Binary files /dev/null and b/k2js/out/production/stdlib/jet/FloatRange$MyIterator.class differ diff --git a/k2js/out/production/stdlib/jet/FloatRange.class b/k2js/out/production/stdlib/jet/FloatRange.class new file mode 100644 index 00000000000..a4351005054 Binary files /dev/null and b/k2js/out/production/stdlib/jet/FloatRange.class differ diff --git a/k2js/out/production/stdlib/jet/Function0.class b/k2js/out/production/stdlib/jet/Function0.class new file mode 100644 index 00000000000..9f6aa08281a Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function0.class differ diff --git a/k2js/out/production/stdlib/jet/Function1.class b/k2js/out/production/stdlib/jet/Function1.class new file mode 100644 index 00000000000..6426310d619 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function1.class differ diff --git a/k2js/out/production/stdlib/jet/Function10.class b/k2js/out/production/stdlib/jet/Function10.class new file mode 100644 index 00000000000..74fff27d525 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function10.class differ diff --git a/k2js/out/production/stdlib/jet/Function11.class b/k2js/out/production/stdlib/jet/Function11.class new file mode 100644 index 00000000000..b89f3c686dc Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function11.class differ diff --git a/k2js/out/production/stdlib/jet/Function12.class b/k2js/out/production/stdlib/jet/Function12.class new file mode 100644 index 00000000000..c3c0e35f796 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function12.class differ diff --git a/k2js/out/production/stdlib/jet/Function13.class b/k2js/out/production/stdlib/jet/Function13.class new file mode 100644 index 00000000000..bbf6ae010bc Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function13.class differ diff --git a/k2js/out/production/stdlib/jet/Function14.class b/k2js/out/production/stdlib/jet/Function14.class new file mode 100644 index 00000000000..c455359f17f Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function14.class differ diff --git a/k2js/out/production/stdlib/jet/Function15.class b/k2js/out/production/stdlib/jet/Function15.class new file mode 100644 index 00000000000..c9a053707fe Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function15.class differ diff --git a/k2js/out/production/stdlib/jet/Function16.class b/k2js/out/production/stdlib/jet/Function16.class new file mode 100644 index 00000000000..de173044756 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function16.class differ diff --git a/k2js/out/production/stdlib/jet/Function17.class b/k2js/out/production/stdlib/jet/Function17.class new file mode 100644 index 00000000000..010e900b04c Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function17.class differ diff --git a/k2js/out/production/stdlib/jet/Function18.class b/k2js/out/production/stdlib/jet/Function18.class new file mode 100644 index 00000000000..34f229cb66a Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function18.class differ diff --git a/k2js/out/production/stdlib/jet/Function19.class b/k2js/out/production/stdlib/jet/Function19.class new file mode 100644 index 00000000000..e7bf140334c Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function19.class differ diff --git a/k2js/out/production/stdlib/jet/Function2.class b/k2js/out/production/stdlib/jet/Function2.class new file mode 100644 index 00000000000..a4c3e2b45db Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function2.class differ diff --git a/k2js/out/production/stdlib/jet/Function20.class b/k2js/out/production/stdlib/jet/Function20.class new file mode 100644 index 00000000000..341ee1a4f0a Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function20.class differ diff --git a/k2js/out/production/stdlib/jet/Function21.class b/k2js/out/production/stdlib/jet/Function21.class new file mode 100644 index 00000000000..f421de32cd0 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function21.class differ diff --git a/k2js/out/production/stdlib/jet/Function22.class b/k2js/out/production/stdlib/jet/Function22.class new file mode 100644 index 00000000000..dcb66d1594f Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function22.class differ diff --git a/k2js/out/production/stdlib/jet/Function3.class b/k2js/out/production/stdlib/jet/Function3.class new file mode 100644 index 00000000000..5655fac3744 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function3.class differ diff --git a/k2js/out/production/stdlib/jet/Function4.class b/k2js/out/production/stdlib/jet/Function4.class new file mode 100644 index 00000000000..547d883bc9c Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function4.class differ diff --git a/k2js/out/production/stdlib/jet/Function5.class b/k2js/out/production/stdlib/jet/Function5.class new file mode 100644 index 00000000000..6f30c906564 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function5.class differ diff --git a/k2js/out/production/stdlib/jet/Function6.class b/k2js/out/production/stdlib/jet/Function6.class new file mode 100644 index 00000000000..ee63cc67160 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function6.class differ diff --git a/k2js/out/production/stdlib/jet/Function7.class b/k2js/out/production/stdlib/jet/Function7.class new file mode 100644 index 00000000000..05a595a85bd Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function7.class differ diff --git a/k2js/out/production/stdlib/jet/Function8.class b/k2js/out/production/stdlib/jet/Function8.class new file mode 100644 index 00000000000..8ca27a9a86c Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function8.class differ diff --git a/k2js/out/production/stdlib/jet/Function9.class b/k2js/out/production/stdlib/jet/Function9.class new file mode 100644 index 00000000000..366f019cf31 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Function9.class differ diff --git a/k2js/out/production/stdlib/jet/IntIterable.class b/k2js/out/production/stdlib/jet/IntIterable.class new file mode 100644 index 00000000000..4fe090e4b9e Binary files /dev/null and b/k2js/out/production/stdlib/jet/IntIterable.class differ diff --git a/k2js/out/production/stdlib/jet/IntIterator.class b/k2js/out/production/stdlib/jet/IntIterator.class new file mode 100644 index 00000000000..1cdf77f3237 Binary files /dev/null and b/k2js/out/production/stdlib/jet/IntIterator.class differ diff --git a/k2js/out/production/stdlib/jet/IntRange$MyIterator.class b/k2js/out/production/stdlib/jet/IntRange$MyIterator.class new file mode 100644 index 00000000000..0100458372b Binary files /dev/null and b/k2js/out/production/stdlib/jet/IntRange$MyIterator.class differ diff --git a/k2js/out/production/stdlib/jet/IntRange.class b/k2js/out/production/stdlib/jet/IntRange.class new file mode 100644 index 00000000000..e1dcb613796 Binary files /dev/null and b/k2js/out/production/stdlib/jet/IntRange.class differ diff --git a/k2js/out/production/stdlib/jet/Iterable.class b/k2js/out/production/stdlib/jet/Iterable.class new file mode 100644 index 00000000000..c4f783a2bcc Binary files /dev/null and b/k2js/out/production/stdlib/jet/Iterable.class differ diff --git a/k2js/out/production/stdlib/jet/Iterator.class b/k2js/out/production/stdlib/jet/Iterator.class new file mode 100644 index 00000000000..a8330222e11 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Iterator.class differ diff --git a/k2js/out/production/stdlib/jet/JetObject.class b/k2js/out/production/stdlib/jet/JetObject.class new file mode 100644 index 00000000000..567b5815b4e Binary files /dev/null and b/k2js/out/production/stdlib/jet/JetObject.class differ diff --git a/k2js/out/production/stdlib/jet/LongIterable.class b/k2js/out/production/stdlib/jet/LongIterable.class new file mode 100644 index 00000000000..b22306e9330 Binary files /dev/null and b/k2js/out/production/stdlib/jet/LongIterable.class differ diff --git a/k2js/out/production/stdlib/jet/LongIterator.class b/k2js/out/production/stdlib/jet/LongIterator.class new file mode 100644 index 00000000000..c3ad6118d2d Binary files /dev/null and b/k2js/out/production/stdlib/jet/LongIterator.class differ diff --git a/k2js/out/production/stdlib/jet/LongRange$MyIterator.class b/k2js/out/production/stdlib/jet/LongRange$MyIterator.class new file mode 100644 index 00000000000..eef6b8f6a3e Binary files /dev/null and b/k2js/out/production/stdlib/jet/LongRange$MyIterator.class differ diff --git a/k2js/out/production/stdlib/jet/LongRange.class b/k2js/out/production/stdlib/jet/LongRange.class new file mode 100644 index 00000000000..60003b9e7c1 Binary files /dev/null and b/k2js/out/production/stdlib/jet/LongRange.class differ diff --git a/k2js/out/production/stdlib/jet/NoPatternMatchedException.class b/k2js/out/production/stdlib/jet/NoPatternMatchedException.class new file mode 100644 index 00000000000..17e68f06867 Binary files /dev/null and b/k2js/out/production/stdlib/jet/NoPatternMatchedException.class differ diff --git a/k2js/out/production/stdlib/jet/Range.class b/k2js/out/production/stdlib/jet/Range.class new file mode 100644 index 00000000000..44e8f096b4d Binary files /dev/null and b/k2js/out/production/stdlib/jet/Range.class differ diff --git a/k2js/out/production/stdlib/jet/ShortIterable.class b/k2js/out/production/stdlib/jet/ShortIterable.class new file mode 100644 index 00000000000..f1d05522ec8 Binary files /dev/null and b/k2js/out/production/stdlib/jet/ShortIterable.class differ diff --git a/k2js/out/production/stdlib/jet/ShortIterator.class b/k2js/out/production/stdlib/jet/ShortIterator.class new file mode 100644 index 00000000000..762e05a697f Binary files /dev/null and b/k2js/out/production/stdlib/jet/ShortIterator.class differ diff --git a/k2js/out/production/stdlib/jet/ShortRange$MyIterator.class b/k2js/out/production/stdlib/jet/ShortRange$MyIterator.class new file mode 100644 index 00000000000..38805e95a8c Binary files /dev/null and b/k2js/out/production/stdlib/jet/ShortRange$MyIterator.class differ diff --git a/k2js/out/production/stdlib/jet/ShortRange.class b/k2js/out/production/stdlib/jet/ShortRange.class new file mode 100644 index 00000000000..2370a29d63f Binary files /dev/null and b/k2js/out/production/stdlib/jet/ShortRange.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple0.class b/k2js/out/production/stdlib/jet/Tuple0.class new file mode 100644 index 00000000000..94e12965e44 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple0.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple1.class b/k2js/out/production/stdlib/jet/Tuple1.class new file mode 100644 index 00000000000..1578f8f970d Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple1.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple10.class b/k2js/out/production/stdlib/jet/Tuple10.class new file mode 100644 index 00000000000..d0d984caf78 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple10.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple11.class b/k2js/out/production/stdlib/jet/Tuple11.class new file mode 100644 index 00000000000..ce61d758ca9 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple11.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple12.class b/k2js/out/production/stdlib/jet/Tuple12.class new file mode 100644 index 00000000000..65bfb2ca043 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple12.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple13.class b/k2js/out/production/stdlib/jet/Tuple13.class new file mode 100644 index 00000000000..34128f94875 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple13.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple14.class b/k2js/out/production/stdlib/jet/Tuple14.class new file mode 100644 index 00000000000..06a850ec285 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple14.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple15.class b/k2js/out/production/stdlib/jet/Tuple15.class new file mode 100644 index 00000000000..e166df71826 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple15.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple16.class b/k2js/out/production/stdlib/jet/Tuple16.class new file mode 100644 index 00000000000..1a9beb8c7a5 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple16.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple17.class b/k2js/out/production/stdlib/jet/Tuple17.class new file mode 100644 index 00000000000..a34c862d7df Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple17.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple18.class b/k2js/out/production/stdlib/jet/Tuple18.class new file mode 100644 index 00000000000..4c30def1b56 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple18.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple19.class b/k2js/out/production/stdlib/jet/Tuple19.class new file mode 100644 index 00000000000..c67db5ae251 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple19.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple2.class b/k2js/out/production/stdlib/jet/Tuple2.class new file mode 100644 index 00000000000..635d6d9a53e Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple2.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple20.class b/k2js/out/production/stdlib/jet/Tuple20.class new file mode 100644 index 00000000000..1b6ce91c263 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple20.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple21.class b/k2js/out/production/stdlib/jet/Tuple21.class new file mode 100644 index 00000000000..854b4d121a9 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple21.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple22.class b/k2js/out/production/stdlib/jet/Tuple22.class new file mode 100644 index 00000000000..acda19f0385 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple22.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple3.class b/k2js/out/production/stdlib/jet/Tuple3.class new file mode 100644 index 00000000000..e963ddba7a3 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple3.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple4.class b/k2js/out/production/stdlib/jet/Tuple4.class new file mode 100644 index 00000000000..8fa2e093e05 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple4.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple5.class b/k2js/out/production/stdlib/jet/Tuple5.class new file mode 100644 index 00000000000..36dd286be11 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple5.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple6.class b/k2js/out/production/stdlib/jet/Tuple6.class new file mode 100644 index 00000000000..7e53b797160 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple6.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple7.class b/k2js/out/production/stdlib/jet/Tuple7.class new file mode 100644 index 00000000000..2c90416a6df Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple7.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple8.class b/k2js/out/production/stdlib/jet/Tuple8.class new file mode 100644 index 00000000000..6228f7c9239 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple8.class differ diff --git a/k2js/out/production/stdlib/jet/Tuple9.class b/k2js/out/production/stdlib/jet/Tuple9.class new file mode 100644 index 00000000000..efd7c0e1e77 Binary files /dev/null and b/k2js/out/production/stdlib/jet/Tuple9.class differ diff --git a/k2js/out/production/stdlib/jet/TypeCastException.class b/k2js/out/production/stdlib/jet/TypeCastException.class new file mode 100644 index 00000000000..2a16f921272 Binary files /dev/null and b/k2js/out/production/stdlib/jet/TypeCastException.class differ diff --git a/k2js/out/production/stdlib/jet/TypeInfo$1.class b/k2js/out/production/stdlib/jet/TypeInfo$1.class new file mode 100644 index 00000000000..adc3a49e508 Binary files /dev/null and b/k2js/out/production/stdlib/jet/TypeInfo$1.class differ diff --git a/k2js/out/production/stdlib/jet/TypeInfo$2.class b/k2js/out/production/stdlib/jet/TypeInfo$2.class new file mode 100644 index 00000000000..5f4095a6adb Binary files /dev/null and b/k2js/out/production/stdlib/jet/TypeInfo$2.class differ diff --git a/k2js/out/production/stdlib/jet/TypeInfo$3.class b/k2js/out/production/stdlib/jet/TypeInfo$3.class new file mode 100644 index 00000000000..ccdf1ef5c8e Binary files /dev/null and b/k2js/out/production/stdlib/jet/TypeInfo$3.class differ diff --git a/k2js/out/production/stdlib/jet/TypeInfo.class b/k2js/out/production/stdlib/jet/TypeInfo.class new file mode 100644 index 00000000000..a9217cb09d4 Binary files /dev/null and b/k2js/out/production/stdlib/jet/TypeInfo.class differ diff --git a/k2js/out/production/stdlib/jet/modules/AllModules.class b/k2js/out/production/stdlib/jet/modules/AllModules.class new file mode 100644 index 00000000000..9c1c9d324f0 Binary files /dev/null and b/k2js/out/production/stdlib/jet/modules/AllModules.class differ diff --git a/k2js/out/production/stdlib/jet/modules/Module.class b/k2js/out/production/stdlib/jet/modules/Module.class new file mode 100644 index 00000000000..6bd245bf7a3 Binary files /dev/null and b/k2js/out/production/stdlib/jet/modules/Module.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$1.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$1.class new file mode 100644 index 00000000000..ac8a6549dc8 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$1.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayBooleanIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayBooleanIterator.class new file mode 100644 index 00000000000..1b048e8db1e Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayBooleanIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayByteIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayByteIterator.class new file mode 100644 index 00000000000..e2683fd48bf Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayByteIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayCharacterIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayCharacterIterator.class new file mode 100644 index 00000000000..c44a7156739 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayCharacterIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayDoubleIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayDoubleIterator.class new file mode 100644 index 00000000000..254a11a7a38 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayDoubleIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayFloatIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayFloatIterator.class new file mode 100644 index 00000000000..c0675863f82 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayFloatIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayIntegerIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayIntegerIterator.class new file mode 100644 index 00000000000..71c12f52969 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayIntegerIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayLongIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayLongIterator.class new file mode 100644 index 00000000000..2d7482b852f Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayLongIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayShortIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayShortIterator.class new file mode 100644 index 00000000000..c0a3bdde0e2 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$ArrayShortIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator$GenericIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$GenericIterator.class new file mode 100644 index 00000000000..310659f1366 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator$GenericIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/ArrayIterator.class b/k2js/out/production/stdlib/jet/runtime/ArrayIterator.class new file mode 100644 index 00000000000..77cf4586109 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/ArrayIterator.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/Intrinsics$1.class b/k2js/out/production/stdlib/jet/runtime/Intrinsics$1.class new file mode 100644 index 00000000000..4edabe4924b Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/Intrinsics$1.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/Intrinsics$JetNullPointerException.class b/k2js/out/production/stdlib/jet/runtime/Intrinsics$JetNullPointerException.class new file mode 100644 index 00000000000..3aec2414d35 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/Intrinsics$JetNullPointerException.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/Intrinsics.class b/k2js/out/production/stdlib/jet/runtime/Intrinsics.class new file mode 100644 index 00000000000..154c8e3dbf3 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/Intrinsics.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/Ranges.class b/k2js/out/production/stdlib/jet/runtime/Ranges.class new file mode 100644 index 00000000000..2069ee977db Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/Ranges.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Boolean.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Boolean.class new file mode 100644 index 00000000000..a70db88e494 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Boolean.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Byte.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Byte.class new file mode 100644 index 00000000000..dbbf4f3e7e7 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Byte.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Char.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Char.class new file mode 100644 index 00000000000..4823f88b21d Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Char.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Double.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Double.class new file mode 100644 index 00000000000..5f73ce1bbae Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Double.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Float.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Float.class new file mode 100644 index 00000000000..522bbf9d0a7 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Float.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Int.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Int.class new file mode 100644 index 00000000000..431fcebe8b0 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Int.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Long.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Long.class new file mode 100644 index 00000000000..6fc639a2dcd Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Long.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Object.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Object.class new file mode 100644 index 00000000000..a27f033cc2f Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Object.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar$Short.class b/k2js/out/production/stdlib/jet/runtime/SharedVar$Short.class new file mode 100644 index 00000000000..1220388c8a6 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar$Short.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/SharedVar.class b/k2js/out/production/stdlib/jet/runtime/SharedVar.class new file mode 100644 index 00000000000..b4e76ad3815 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/SharedVar.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/typeinfo/JetClass.class b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetClass.class new file mode 100644 index 00000000000..1dd02445ef8 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetClass.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/typeinfo/JetConstructor.class b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetConstructor.class new file mode 100644 index 00000000000..d07cf5db30f Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetConstructor.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/typeinfo/JetMethod.class b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetMethod.class new file mode 100644 index 00000000000..973a8ee6d86 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetMethod.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeDescriptor.class b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeDescriptor.class new file mode 100644 index 00000000000..6ac855f73ed Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeDescriptor.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeParameter.class b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeParameter.class new file mode 100644 index 00000000000..adc5002474a Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeParameter.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeProjection.class b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeProjection.class new file mode 100644 index 00000000000..61dba1807b6 Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetTypeProjection.class differ diff --git a/k2js/out/production/stdlib/jet/runtime/typeinfo/JetValueParameter.class b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetValueParameter.class new file mode 100644 index 00000000000..63dbd0247ba Binary files /dev/null and b/k2js/out/production/stdlib/jet/runtime/typeinfo/JetValueParameter.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Const.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Const.class new file mode 100644 index 00000000000..e3f40094c27 Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Const.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Pattern.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Pattern.class new file mode 100644 index 00000000000..5b1cbdb87f2 Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Pattern.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$TypeInfoPatternProjection$1.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$TypeInfoPatternProjection$1.class new file mode 100644 index 00000000000..c3db0f8f388 Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$TypeInfoPatternProjection$1.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$TypeInfoPatternProjection.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$TypeInfoPatternProjection.class new file mode 100644 index 00000000000..09ddd9df33a Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$TypeInfoPatternProjection.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Var.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Var.class new file mode 100644 index 00000000000..8b2391e51a1 Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern$Var.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern.class new file mode 100644 index 00000000000..2a1f6768864 Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoPattern.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoProjection.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoProjection.class new file mode 100644 index 00000000000..de728fe29df Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoProjection.class differ diff --git a/k2js/out/production/stdlib/jet/typeinfo/TypeInfoVariance.class b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoVariance.class new file mode 100644 index 00000000000..577beb0caf4 Binary files /dev/null and b/k2js/out/production/stdlib/jet/typeinfo/TypeInfoVariance.class differ diff --git a/k2js/out/production/stdlib/modules/ModuleBuilder.kt b/k2js/out/production/stdlib/modules/ModuleBuilder.kt new file mode 100644 index 00000000000..487ef408f20 --- /dev/null +++ b/k2js/out/production/stdlib/modules/ModuleBuilder.kt @@ -0,0 +1,47 @@ +package kotlin.modules + +import java.util.* +import jet.modules.* + +fun module(name: String, callback: ModuleBuilder.() -> Unit) { + val builder = ModuleBuilder(name) + builder.callback() + AllModules.modules?.add(builder) +} + +class SourcesBuilder(val parent: ModuleBuilder) { + fun plusAssign(pattern: String) { + parent.addSourceFiles(pattern) + } +} + +class ClasspathBuilder(val parent: ModuleBuilder) { + fun plusAssign(name: String) { + parent.addClasspathEntry(name) + } +} + +open class ModuleBuilder(val name: String): Module { + // http://youtrack.jetbrains.net/issue/KT-904 + private val sourceFiles0: ArrayList = ArrayList() + private val classpathRoots0: ArrayList = ArrayList() + + val sources: SourcesBuilder + get() = SourcesBuilder(this) + + val classpath: ClasspathBuilder + get() = ClasspathBuilder(this) + + fun addSourceFiles(pattern: String) { + sourceFiles0.add(pattern) + } + + fun addClasspathEntry(name: String) { + classpathRoots0.add(name) + } + + override fun getSourceFiles(): List? = sourceFiles0 + override fun getClasspathRoots(): List? = classpathRoots0 + override fun getModuleName(): String? = name +} + diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/Signature.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/Signature.class new file mode 100644 index 00000000000..ded17fb3747 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/Signature.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl$1.class new file mode 100644 index 00000000000..0a71c63159d Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl$2.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl$2.class new file mode 100644 index 00000000000..526240c6cc5 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl$2.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl.class new file mode 100644 index 00000000000..4cff09d2427 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoImpl.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$1.class new file mode 100644 index 00000000000..53c93550d63 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$2.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$2.class new file mode 100644 index 00000000000..507b74c06dd Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$2.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$3.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$3.class new file mode 100644 index 00000000000..87c93a0464e Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1$3.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1.class new file mode 100644 index 00000000000..ea6c0d310e2 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$2.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$2.class new file mode 100644 index 00000000000..9fe0a7aa652 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$2.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$3.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$3.class new file mode 100644 index 00000000000..b14e8ccf9d3 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1$3.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1.class new file mode 100644 index 00000000000..6d1178d564e Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$2.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$2.class new file mode 100644 index 00000000000..9e77962f975 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$2.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$3.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$3.class new file mode 100644 index 00000000000..7adf26c17d8 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$3.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$ArraySignature$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$ArraySignature$1.class new file mode 100644 index 00000000000..1254afa9766 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$ArraySignature$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$ArraySignature.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$ArraySignature.class new file mode 100644 index 00000000000..b36c6cbc18f Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$ArraySignature.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter$1$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter$1$1.class new file mode 100644 index 00000000000..cb869b19a06 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter$1$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter$1.class new file mode 100644 index 00000000000..e746a9fa0f3 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter.class new file mode 100644 index 00000000000..7eb64cd529b Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser$SignatureParserJetSignatureAdapter.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser.class new file mode 100644 index 00000000000..00fb5c5639a Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoParser.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoProjectionImpl.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoProjectionImpl.class new file mode 100644 index 00000000000..cee559a3502 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoProjectionImpl.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoUtils.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoUtils.class new file mode 100644 index 00000000000..6cd38eda27b Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoUtils.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoVar.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoVar.class new file mode 100644 index 00000000000..cf4eebaded1 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/TypeInfoVar.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureAdapter.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureAdapter.class new file mode 100644 index 00000000000..1e00c207bcf Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureAdapter.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureExceptionsAdapter.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureExceptionsAdapter.class new file mode 100644 index 00000000000..9ca663be9a5 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureExceptionsAdapter.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureReader.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureReader.class new file mode 100644 index 00000000000..628bc793912 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureReader.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureVariance.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureVariance.class new file mode 100644 index 00000000000..70579b0327c Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureVariance.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureVisitor.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureVisitor.class new file mode 100644 index 00000000000..286bcf837b6 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureVisitor.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureWriter$1.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureWriter$1.class new file mode 100644 index 00000000000..195b999043c Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureWriter$1.class differ diff --git a/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureWriter.class b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureWriter.class new file mode 100644 index 00000000000..0d3fe618703 Binary files /dev/null and b/k2js/out/production/stdlib/org/jetbrains/jet/rt/signature/JetSignatureWriter.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer$1.class b/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer$1.class new file mode 100644 index 00000000000..55b8fb64ccb Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer$JsConfiguration.class b/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer$JsConfiguration.class new file mode 100644 index 00000000000..14f56141141 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer$JsConfiguration.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer.class b/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer.class new file mode 100644 index 00000000000..b3df255100d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/analyze/Analyzer.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/config/Config.class b/k2js/out/production/translator/org/jetbrains/k2js/config/Config.class new file mode 100644 index 00000000000..0a53dc3b315 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/config/Config.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/config/IDEAConfig.class b/k2js/out/production/translator/org/jetbrains/k2js/config/IDEAConfig.class new file mode 100644 index 00000000000..b240f0dfa1e Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/config/IDEAConfig.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/config/TestConfig$1.class b/k2js/out/production/translator/org/jetbrains/k2js/config/TestConfig$1.class new file mode 100644 index 00000000000..a737c923435 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/config/TestConfig$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/config/TestConfig.class b/k2js/out/production/translator/org/jetbrains/k2js/config/TestConfig.class new file mode 100644 index 00000000000..1c810ea2a09 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/config/TestConfig.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/facade/K2JSTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/facade/K2JSTranslator.class new file mode 100644 index 00000000000..fc04f04051b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/facade/K2JSTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/facade/K2JSTranslatorUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/facade/K2JSTranslatorUtils.class new file mode 100644 index 00000000000..e279a430f93 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/facade/K2JSTranslatorUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/generate/CodeGenerator.class b/k2js/out/production/translator/org/jetbrains/k2js/generate/CodeGenerator.class new file mode 100644 index 00000000000..de5e617153b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/generate/CodeGenerator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/Aliaser.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/Aliaser.class new file mode 100644 index 00000000000..39dff663cf1 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/Aliaser.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/DynamicContext.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/DynamicContext.class new file mode 100644 index 00000000000..a3cf259e6ae Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/DynamicContext.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/Namer.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/Namer.class new file mode 100644 index 00000000000..931e80c2935 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/Namer.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/NamingScope.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/NamingScope.class new file mode 100644 index 00000000000..ef346fffdee Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/NamingScope.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses$1.class new file mode 100644 index 00000000000..f2d5f3cd5da Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses$Builder.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses$Builder.class new file mode 100644 index 00000000000..9b7a0d99475 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses$Builder.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses.class new file mode 100644 index 00000000000..afefb41cc2b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StandardClasses.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$1.class new file mode 100644 index 00000000000..702fb772dc3 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$1.class new file mode 100644 index 00000000000..de1d1d9c5c7 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$10.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$10.class new file mode 100644 index 00000000000..1b80238dde3 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$10.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$2.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$2.class new file mode 100644 index 00000000000..68a970538b3 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$2.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$3.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$3.class new file mode 100644 index 00000000000..58de4d54d8a Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$3.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$4.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$4.class new file mode 100644 index 00000000000..82f89150319 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$4.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$5.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$5.class new file mode 100644 index 00000000000..534d4dca531 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$5.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$6.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$6.class new file mode 100644 index 00000000000..018be2474da Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$6.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$7.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$7.class new file mode 100644 index 00000000000..dd51ac6c3ae Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$7.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$8.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$8.class new file mode 100644 index 00000000000..3937e4ad173 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$8.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$9.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$9.class new file mode 100644 index 00000000000..e7c033228ee Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator$9.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator.class new file mode 100644 index 00000000000..986659dc5d2 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$NameGenerator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$1.class new file mode 100644 index 00000000000..d3b30af9489 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$2.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$2.class new file mode 100644 index 00000000000..6883565197d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$2.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$3.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$3.class new file mode 100644 index 00000000000..279d2d01548 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$3.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$4.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$4.class new file mode 100644 index 00000000000..f98ac7618d1 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$4.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$5.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$5.class new file mode 100644 index 00000000000..10d693ccf57 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator$5.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator.class new file mode 100644 index 00000000000..7bbf52a9846 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierGenerator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$1.class new file mode 100644 index 00000000000..dcf8e7c7a19 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$2.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$2.class new file mode 100644 index 00000000000..43ccba2e532 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$2.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$3.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$3.class new file mode 100644 index 00000000000..d2d2484bb2a Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator$3.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator.class new file mode 100644 index 00000000000..136dbff629f Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$QualifierIsNullGenerator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$1.class new file mode 100644 index 00000000000..a1aab1d77d2 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$2.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$2.class new file mode 100644 index 00000000000..c96e980ce1e Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$2.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$3.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$3.class new file mode 100644 index 00000000000..5892a1dfb12 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$3.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$4.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$4.class new file mode 100644 index 00000000000..4cad1f61b1b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator$4.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator.class new file mode 100644 index 00000000000..0d5e7ea6866 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext$ScopeGenerator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext.class new file mode 100644 index 00000000000..9c88388283d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/StaticContext.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/TemporaryVariable.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/TemporaryVariable.class new file mode 100644 index 00000000000..611dd0af6a9 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/TemporaryVariable.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/TranslationContext.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/TranslationContext.class new file mode 100644 index 00000000000..a04372fcb00 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/TranslationContext.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/generator/Generator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/generator/Generator.class new file mode 100644 index 00000000000..136fede43e2 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/generator/Generator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/context/generator/Rule.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/generator/Rule.class new file mode 100644 index 00000000000..aceefab61d9 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/context/generator/Rule.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/ClassDeclarationTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/ClassDeclarationTranslator.class new file mode 100644 index 00000000000..06761378d68 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/ClassDeclarationTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/ClassTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/ClassTranslator.class new file mode 100644 index 00000000000..b13cb1bdfb4 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/ClassTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/DeclarationBodyVisitor.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/DeclarationBodyVisitor.class new file mode 100644 index 00000000000..acb89b3f536 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/DeclarationBodyVisitor.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.class new file mode 100644 index 00000000000..77f77d63eb2 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.class new file mode 100644 index 00000000000..de072f1f24d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/PropertyTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/PropertyTranslator.class new file mode 100644 index 00000000000..8dd88f57a66 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/declaration/PropertyTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/ExpressionVisitor.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/ExpressionVisitor.class new file mode 100644 index 00000000000..1b72f350b3d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/ExpressionVisitor.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/ForTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/ForTranslator.class new file mode 100644 index 00000000000..eb3db5d03f5 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/ForTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/FunctionTranslator$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/FunctionTranslator$1.class new file mode 100644 index 00000000000..4db7dc9d5e7 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/FunctionTranslator$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/FunctionTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/FunctionTranslator.class new file mode 100644 index 00000000000..d1a8ab4a534 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/FunctionTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/PatternTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/PatternTranslator.class new file mode 100644 index 00000000000..a8d0838ab99 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/PatternTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator$1.class new file mode 100644 index 00000000000..1774008904a Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator$EntryVisitor.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator$EntryVisitor.class new file mode 100644 index 00000000000..89339878eb9 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator$EntryVisitor.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator.class new file mode 100644 index 00000000000..cb7b534b825 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/StringTemplateTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/TryTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/TryTranslator.class new file mode 100644 index 00000000000..eb44b6bd0fa Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/TryTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/WhenTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/WhenTranslator.class new file mode 100644 index 00000000000..cf74f3926b5 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/expression/WhenTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/general/AbstractTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/general/AbstractTranslator.class new file mode 100644 index 00000000000..3ea600a2e68 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/general/AbstractTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/general/Translation.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/general/Translation.class new file mode 100644 index 00000000000..6bda847891d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/general/Translation.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/general/TranslatorVisitor.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/general/TranslatorVisitor.class new file mode 100644 index 00000000000..7c65d666546 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/general/TranslatorVisitor.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/AbstractInitializerTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/AbstractInitializerTranslator.class new file mode 100644 index 00000000000..6f5f9a5d6e0 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/AbstractInitializerTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.class new file mode 100644 index 00000000000..fcef9bf7bea Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/InitializerVisitor.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/InitializerVisitor.class new file mode 100644 index 00000000000..fbee763c329 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/InitializerVisitor.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/NamespaceInitializerTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/NamespaceInitializerTranslator.class new file mode 100644 index 00000000000..a0d44e4c2b7 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/initializer/NamespaceInitializerTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/CompareToIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/CompareToIntrinsic.class new file mode 100644 index 00000000000..28df2220c06 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/CompareToIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/EqualsIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/EqualsIntrinsic.class new file mode 100644 index 00000000000..e7265f43275 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/EqualsIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/FunctionIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/FunctionIntrinsic.class new file mode 100644 index 00000000000..fd3c86c9817 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/FunctionIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsic.class new file mode 100644 index 00000000000..cc87bea628c Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics$1.class new file mode 100644 index 00000000000..200aee2f8d7 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics$IntrinsicDeclarationVisitor.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics$IntrinsicDeclarationVisitor.class new file mode 100644 index 00000000000..8d69bf9582e Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics$IntrinsicDeclarationVisitor.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics.class new file mode 100644 index 00000000000..bf3114ca26b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/Intrinsics.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayFunctionConstructorIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayFunctionConstructorIntrinsic.class new file mode 100644 index 00000000000..4d232811db7 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayFunctionConstructorIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayGetIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayGetIntrinsic.class new file mode 100644 index 00000000000..c3f7084078a Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayGetIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayIndicesIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayIndicesIntrinsic.class new file mode 100644 index 00000000000..a6d36fcfd5c Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayIndicesIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayIteratorIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayIteratorIntrinsic.class new file mode 100644 index 00000000000..bcb1a580013 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayIteratorIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayNullConstructorIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayNullConstructorIntrinsic.class new file mode 100644 index 00000000000..d21f722d56b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArrayNullConstructorIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArraySetIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArraySetIntrinsic.class new file mode 100644 index 00000000000..984e764202e Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArraySetIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArraySizeIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArraySizeIntrinsic.class new file mode 100644 index 00000000000..9508e07970e Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/array/ArraySizeIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveBinaryOperationIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveBinaryOperationIntrinsic.class new file mode 100644 index 00000000000..45792e418b5 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveBinaryOperationIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveCompareToIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveCompareToIntrinsic.class new file mode 100644 index 00000000000..1f16142de25 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveCompareToIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveEqualsIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveEqualsIntrinsic.class new file mode 100644 index 00000000000..54d59fe259b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveEqualsIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveRangeToIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveRangeToIntrinsic.class new file mode 100644 index 00000000000..00ddc748d44 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveRangeToIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveUnaryOperationIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveUnaryOperationIntrinsic.class new file mode 100644 index 00000000000..914c0916aeb Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/primitive/PrimitiveUnaryOperationIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/string/CharAtIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/string/CharAtIntrinsic.class new file mode 100644 index 00000000000..d847a97ba07 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/string/CharAtIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/string/LengthIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/string/LengthIntrinsic.class new file mode 100644 index 00000000000..7322d293f2b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/string/LengthIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/tuple/TupleAccessIntrinsic.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/tuple/TupleAccessIntrinsic.class new file mode 100644 index 00000000000..4cfdc7622d5 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/intrinsic/tuple/TupleAccessIntrinsic.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/AssignmentTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/AssignmentTranslator.class new file mode 100644 index 00000000000..7b6594c6c62 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/AssignmentTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/BinaryOperationTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/BinaryOperationTranslator.class new file mode 100644 index 00000000000..1a461268252 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/BinaryOperationTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/CompareToTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/CompareToTranslator.class new file mode 100644 index 00000000000..841ede7d436 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/CompareToTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IncrementTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IncrementTranslator.class new file mode 100644 index 00000000000..3060da32013 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IncrementTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IntrinsicAssignmentTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IntrinsicAssignmentTranslator.class new file mode 100644 index 00000000000..eefe43bec8d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IntrinsicAssignmentTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IntrinsicIncrementTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IntrinsicIncrementTranslator.class new file mode 100644 index 00000000000..2e70a8bd14d Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/IntrinsicIncrementTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OperatorTable.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OperatorTable.class new file mode 100644 index 00000000000..ee6c297fcb3 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OperatorTable.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OverloadedAssignmentTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OverloadedAssignmentTranslator.class new file mode 100644 index 00000000000..b89ec807f8c Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OverloadedAssignmentTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OverloadedIncrementTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OverloadedIncrementTranslator.class new file mode 100644 index 00000000000..3ff52a3a5a9 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/OverloadedIncrementTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/UnaryOperationTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/UnaryOperationTranslator.class new file mode 100644 index 00000000000..9dbe4cc129c Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/operation/UnaryOperationTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/AccessTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/AccessTranslator.class new file mode 100644 index 00000000000..d0fd9bfb184 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/AccessTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ArrayAccessTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ArrayAccessTranslator.class new file mode 100644 index 00000000000..925e1e3ee49 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ArrayAccessTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallBuilder.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallBuilder.class new file mode 100644 index 00000000000..058251befa2 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallBuilder.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallExpressionTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallExpressionTranslator.class new file mode 100644 index 00000000000..7f1b922db32 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallExpressionTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$1.class new file mode 100644 index 00000000000..a03585a4af2 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$2.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$2.class new file mode 100644 index 00000000000..389f90ac41b Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$2.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$3.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$3.class new file mode 100644 index 00000000000..ac72cd05f27 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$3.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$CallParameters.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$CallParameters.class new file mode 100644 index 00000000000..1a2b0dd6f7f Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator$CallParameters.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator.class new file mode 100644 index 00000000000..eff97b301ae Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$1.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$1.class new file mode 100644 index 00000000000..11bf54772e5 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$2.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$2.class new file mode 100644 index 00000000000..c448fea6eb0 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$2.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$CallConstructor.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$CallConstructor.class new file mode 100644 index 00000000000..c66c26e2c37 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType$CallConstructor.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType.class new file mode 100644 index 00000000000..27094251066 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/CallType.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/KotlinPropertyAccessTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/KotlinPropertyAccessTranslator.class new file mode 100644 index 00000000000..89d3da98388 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/KotlinPropertyAccessTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/NativePropertyAccessTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/NativePropertyAccessTranslator.class new file mode 100644 index 00000000000..d19d4ce678a Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/NativePropertyAccessTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.class new file mode 100644 index 00000000000..374df25795a Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/PropertyAccessTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/QualifiedExpressionTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/QualifiedExpressionTranslator.class new file mode 100644 index 00000000000..af51cbad365 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/QualifiedExpressionTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ReferenceAccessTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ReferenceAccessTranslator.class new file mode 100644 index 00000000000..79080ce34ff Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ReferenceAccessTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ReferenceTranslator.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ReferenceTranslator.class new file mode 100644 index 00000000000..32e2e701cc2 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/reference/ReferenceTranslator.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/AnnotationsUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/AnnotationsUtils.class new file mode 100644 index 00000000000..6228fd87c48 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/AnnotationsUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/BindingUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/BindingUtils.class new file mode 100644 index 00000000000..5fb575f9146 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/BindingUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/ClassSorter.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/ClassSorter.class new file mode 100644 index 00000000000..b948afd2e85 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/ClassSorter.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/DescriptorUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/DescriptorUtils.class new file mode 100644 index 00000000000..6371e87c551 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/DescriptorUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/PsiUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/PsiUtils.class new file mode 100644 index 00000000000..6109092a792 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/PsiUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/TranslationUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/TranslationUtils.class new file mode 100644 index 00000000000..33f42f9b4ad Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/translate/utils/TranslationUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/utils/GenerationUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/utils/GenerationUtils.class new file mode 100644 index 00000000000..434a267c837 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/utils/GenerationUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/utils/JetFileUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetFileUtils.class new file mode 100644 index 00000000000..9436f995d40 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetFileUtils.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$1$1.class b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$1$1.class new file mode 100644 index 00000000000..adb777e51b7 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$1$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$1.class b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$1.class new file mode 100644 index 00000000000..e64592a32db Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$2$1.class b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$2$1.class new file mode 100644 index 00000000000..6cbaadad570 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$2$1.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$2.class b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$2.class new file mode 100644 index 00000000000..68c36efeb71 Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils$2.class differ diff --git a/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils.class b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils.class new file mode 100644 index 00000000000..f6d2db30d1a Binary files /dev/null and b/k2js/out/production/translator/org/jetbrains/k2js/utils/JetTestUtils.class differ diff --git a/k2js/out/production/util/org/jetbrains/jet/plugin/compiler/PathUtil.class b/k2js/out/production/util/org/jetbrains/jet/plugin/compiler/PathUtil.class new file mode 100644 index 00000000000..d659457aa3b Binary files /dev/null and b/k2js/out/production/util/org/jetbrains/jet/plugin/compiler/PathUtil.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetLiteFixture$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetLiteFixture$1.class new file mode 100644 index 00000000000..44626181a67 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetLiteFixture$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetLiteFixture.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetLiteFixture.class new file mode 100644 index 00000000000..9cc699cc514 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetLiteFixture.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$1.class new file mode 100644 index 00000000000..d5865ed7957 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$2.class new file mode 100644 index 00000000000..4dab837116d Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$3.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$3.class new file mode 100644 index 00000000000..2e2ab428abb Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$3.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$4.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$4.class new file mode 100644 index 00000000000..b38885b8fb1 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$4.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$NamedTestFactory.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$NamedTestFactory.class new file mode 100644 index 00000000000..00ac4bc66c1 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder$NamedTestFactory.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder.class new file mode 100644 index 00000000000..1c040a3c7e1 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestCaseBuilder.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$1$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$1$1.class new file mode 100644 index 00000000000..e4c1d3a98ed Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$1$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$1.class new file mode 100644 index 00000000000..3f648ea9aca Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$2$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$2$1.class new file mode 100644 index 00000000000..1c3b2108b0e Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$2$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$2.class new file mode 100644 index 00000000000..002efa1e629 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$3$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$3$1.class new file mode 100644 index 00000000000..9056624b375 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$3$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$3.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$3.class new file mode 100644 index 00000000000..dc105ee01aa Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$3.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$TestFileFactory.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$TestFileFactory.class new file mode 100644 index 00000000000..66c83676c89 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils$TestFileFactory.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils.class new file mode 100644 index 00000000000..2e3b130e24e Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/JetTestUtils.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$1.class new file mode 100644 index 00000000000..d2c5fcc5bd4 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$2.class new file mode 100644 index 00000000000..ea3d513570b Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$3.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$3.class new file mode 100644 index 00000000000..9c87a408b64 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$3.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$4.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$4.class new file mode 100644 index 00000000000..cd73523cf99 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest$4.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest.class new file mode 100644 index 00000000000..534f0ebc9f7 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/cfg/JetControlFlowTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$1.class new file mode 100644 index 00000000000..97fdab61fbf Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$2.class new file mode 100644 index 00000000000..037895884b3 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$3.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$3.class new file mode 100644 index 00000000000..9d664d83255 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$3.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$4.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$4.class new file mode 100644 index 00000000000..6878e12f459 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$4.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$5.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$5.class new file mode 100644 index 00000000000..62149acc0e3 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$5.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$TheTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$TheTest$1.class new file mode 100644 index 00000000000..181efa9414d Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$TheTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$TheTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$TheTest.class new file mode 100644 index 00000000000..cd95ad08a55 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest$TheTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest.class new file mode 100644 index 00000000000..47f4ac7b740 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/CheckerTestUtilTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$1.class new file mode 100644 index 00000000000..b57e430c92f Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$2.class new file mode 100644 index 00000000000..e2fdc5b3aa9 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$TestFile$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$TestFile$1.class new file mode 100644 index 00000000000..9118d4970f0 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$TestFile$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$TestFile.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$TestFile.class new file mode 100644 index 00000000000..9faf4dd49ad Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest$TestFile.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest.class new file mode 100644 index 00000000000..b844c3758f5 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/checkers/JetDiagnosticsTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/AnnotationGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/AnnotationGenTest.class new file mode 100644 index 00000000000..c4c7719595c Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/AnnotationGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ArrayGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ArrayGenTest.class new file mode 100644 index 00000000000..c2ba23c0a73 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ArrayGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/BridgeMethodGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/BridgeMethodGenTest.class new file mode 100644 index 00000000000..47f64beb0dc Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/BridgeMethodGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ClassGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ClassGenTest.class new file mode 100644 index 00000000000..5f718a14011 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ClassGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ClosuresGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ClosuresGenTest.class new file mode 100644 index 00000000000..50b3f74f9ab Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ClosuresGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/CodegenTestCase$MyClassLoader.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/CodegenTestCase$MyClassLoader.class new file mode 100644 index 00000000000..14d4117bf04 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/CodegenTestCase$MyClassLoader.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/CodegenTestCase.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/CodegenTestCase.class new file mode 100644 index 00000000000..f4861a8b1c3 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/CodegenTestCase.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ControlStructuresTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ControlStructuresTest.class new file mode 100644 index 00000000000..5b2f86ada37 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ControlStructuresTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ExtensionFunctionsTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ExtensionFunctionsTest.class new file mode 100644 index 00000000000..47b20da436d Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ExtensionFunctionsTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ForTestCompileStdlib.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ForTestCompileStdlib.class new file mode 100644 index 00000000000..47f22aac70b Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ForTestCompileStdlib.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/FunctionGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/FunctionGenTest.class new file mode 100644 index 00000000000..cd618f8b906 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/FunctionGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/NamespaceGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/NamespaceGenTest.class new file mode 100644 index 00000000000..97991d59be7 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/NamespaceGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ObjectGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ObjectGenTest.class new file mode 100644 index 00000000000..dc6810bdd7b Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/ObjectGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PatternMatchingTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PatternMatchingTest.class new file mode 100644 index 00000000000..d63a8fd9a0d Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PatternMatchingTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PrimitiveTypesTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PrimitiveTypesTest.class new file mode 100644 index 00000000000..2cbc62399db Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PrimitiveTypesTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PropertyGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PropertyGenTest.class new file mode 100644 index 00000000000..bb5d1d8621c Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/PropertyGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/SafeRefTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/SafeRefTest.class new file mode 100644 index 00000000000..b423b5fd0bf Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/SafeRefTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/StdlibTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/StdlibTest.class new file mode 100644 index 00000000000..5174cb56a4c Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/StdlibTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/StringsTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/StringsTest.class new file mode 100644 index 00000000000..422be6480a2 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/StringsTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/SuperGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/SuperGenTest.class new file mode 100644 index 00000000000..feb1560e244 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/SuperGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TestlibTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TestlibTest.class new file mode 100644 index 00000000000..30c2068652c Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TestlibTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TraitsTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TraitsTest.class new file mode 100644 index 00000000000..392b0dc74af Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TraitsTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TupleGenTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TupleGenTest.class new file mode 100644 index 00000000000..6d6aa7932c5 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TupleGenTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TypeInfoTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TypeInfoTest$1.class new file mode 100644 index 00000000000..06e69516abb Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TypeInfoTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TypeInfoTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TypeInfoTest.class new file mode 100644 index 00000000000..22b4640be5d Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/TypeInfoTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/VarArgTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/VarArgTest.class new file mode 100644 index 00000000000..4b1e1324be4 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/codegen/VarArgTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileEnvironmentTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileEnvironmentTest.class new file mode 100644 index 00000000000..199d9ba6604 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileEnvironmentTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileJavaAgainstKotlinTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileJavaAgainstKotlinTest$1.class new file mode 100644 index 00000000000..3092d9c530f Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileJavaAgainstKotlinTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileJavaAgainstKotlinTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileJavaAgainstKotlinTest.class new file mode 100644 index 00000000000..2668dc95e69 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileJavaAgainstKotlinTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest$1.class new file mode 100644 index 00000000000..75bc1e2a33e Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest$1Filter.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest$1Filter.class new file mode 100644 index 00000000000..6da835ea945 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest$1Filter.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest.class new file mode 100644 index 00000000000..70138bb4e21 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/CompileKotlinAgainstKotlinTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$1.class new file mode 100644 index 00000000000..53b66058c1a Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$FullContentSerialier.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$FullContentSerialier.class new file mode 100644 index 00000000000..3d5363c4dd6 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$FullContentSerialier.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$NamespacePrefixSerializer.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$NamespacePrefixSerializer.class new file mode 100644 index 00000000000..b23e0d82067 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$NamespacePrefixSerializer.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$Serializer.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$Serializer.class new file mode 100644 index 00000000000..bb1f89da7cf Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$Serializer.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$ValueParameterSerializer.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$ValueParameterSerializer.class new file mode 100644 index 00000000000..7a29b2089b4 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator$ValueParameterSerializer.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator.class new file mode 100644 index 00000000000..4e4b8de9788 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/NamespaceComparator.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadJavaBinaryClassTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadJavaBinaryClassTest$1.class new file mode 100644 index 00000000000..eaac51dd4d6 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadJavaBinaryClassTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadJavaBinaryClassTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadJavaBinaryClassTest.class new file mode 100644 index 00000000000..bf61d2bdf64 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadJavaBinaryClassTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadKotlinBinaryClassTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadKotlinBinaryClassTest$1.class new file mode 100644 index 00000000000..33d2781eb0c Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadKotlinBinaryClassTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadKotlinBinaryClassTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadKotlinBinaryClassTest.class new file mode 100644 index 00000000000..ad688b3bf2a Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/ReadKotlinBinaryClassTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/TestCaseWithTmpdir.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/TestCaseWithTmpdir.class new file mode 100644 index 00000000000..1f721c2cd41 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/TestCaseWithTmpdir.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1.class new file mode 100644 index 00000000000..df256c830cd Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1$1.class new file mode 100644 index 00000000000..6a906ef18fb Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1$2.class new file mode 100644 index 00000000000..1f725404d4f Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1.class new file mode 100644 index 00000000000..2c74b9a02ac Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor.class new file mode 100644 index 00000000000..8ed9ca7328d Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$1Visitor.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$ActualSignature.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$ActualSignature.class new file mode 100644 index 00000000000..53c99940179 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$ActualSignature.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$Expectation.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$Expectation.class new file mode 100644 index 00000000000..466f336e4fa Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest$Expectation.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest.class new file mode 100644 index 00000000000..d6a6e47cb89 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/compiler/WriteSignatureTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/lang/psi/JetPsiUtilTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/lang/psi/JetPsiUtilTest.class new file mode 100644 index 00000000000..8dcf2ee95f9 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/lang/psi/JetPsiUtilTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetCodeConformanceTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetCodeConformanceTest.class new file mode 100644 index 00000000000..27dc1e06f19 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetCodeConformanceTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest$1.class new file mode 100644 index 00000000000..7c7bb9aaae2 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest$2.class new file mode 100644 index 00000000000..917d73b41c0 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest.class new file mode 100644 index 00000000000..8432df42432 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/parsing/JetParsingTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData$1.class new file mode 100644 index 00000000000..b0eb9ba89da Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData$Position.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData$Position.class new file mode 100644 index 00000000000..48116c83f11 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData$Position.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData.class new file mode 100644 index 00000000000..4fbfc2b73d4 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExpectedResolveData.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExtensibleResolveTestCase$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExtensibleResolveTestCase$1.class new file mode 100644 index 00000000000..4e274341bc1 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExtensibleResolveTestCase$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExtensibleResolveTestCase.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExtensibleResolveTestCase.class new file mode 100644 index 00000000000..c473e48433e Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/ExtensibleResolveTestCase.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest$1.class new file mode 100644 index 00000000000..58604d2923a Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest$2.class new file mode 100644 index 00000000000..5f7494cc843 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest.class new file mode 100644 index 00000000000..582aec89388 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/resolve/JetResolveTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/runtime/JetNpeTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/runtime/JetNpeTest.class new file mode 100644 index 00000000000..710935f0543 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/runtime/JetNpeTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetDefaultModalityModifiersTest$JetDefaultModalityModifiersTestCase.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetDefaultModalityModifiersTest$JetDefaultModalityModifiersTestCase.class new file mode 100644 index 00000000000..209b5fb9b81 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetDefaultModalityModifiersTest$JetDefaultModalityModifiersTestCase.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetDefaultModalityModifiersTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetDefaultModalityModifiersTest.class new file mode 100644 index 00000000000..0a9e4efa058 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetDefaultModalityModifiersTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetOverloadTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetOverloadTest.class new file mode 100644 index 00000000000..61ed04b42f0 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetOverloadTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetOverridingTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetOverridingTest.class new file mode 100644 index 00000000000..0db7a668d6f Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetOverridingTest.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$1.class new file mode 100644 index 00000000000..da9e2af5d72 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions$1.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions$1.class new file mode 100644 index 00000000000..5a51f2c4e28 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions$1.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions$2.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions$2.class new file mode 100644 index 00000000000..a8e3c457455 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions$2.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions.class new file mode 100644 index 00000000000..15def5c44d4 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest$ClassDefinitions.class differ diff --git a/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest.class b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest.class new file mode 100644 index 00000000000..6748e849a65 Binary files /dev/null and b/k2js/out/test/compiler-tests/org/jetbrains/jet/types/JetTypeCheckerTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/AbstractExpressionTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/AbstractExpressionTest.class new file mode 100644 index 00000000000..4cb446e4fcc Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/AbstractExpressionTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ArrayListTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ArrayListTest.class new file mode 100644 index 00000000000..b5275ff20f3 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ArrayListTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/BaseTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/BaseTest.class new file mode 100644 index 00000000000..f7aacc8065e Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/BaseTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/BasicClassTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/BasicClassTest.class new file mode 100644 index 00000000000..2f60336e4dd Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/BasicClassTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ClassInheritanceTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ClassInheritanceTest.class new file mode 100644 index 00000000000..93b0de01ed2 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ClassInheritanceTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ConditionalTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ConditionalTest.class new file mode 100644 index 00000000000..e4836cdafbe Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ConditionalTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExampleTestSuite$1.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExampleTestSuite$1.class new file mode 100644 index 00000000000..198174d0ebd Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExampleTestSuite$1.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExampleTestSuite.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExampleTestSuite.class new file mode 100644 index 00000000000..6c6f310cf51 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExampleTestSuite.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExtensionFunctionTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExtensionFunctionTest.class new file mode 100644 index 00000000000..5ed0193b3ea Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExtensionFunctionTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExtensionPropertyTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExtensionPropertyTest.class new file mode 100644 index 00000000000..ae2efb7b08e Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ExtensionPropertyTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ForTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ForTest.class new file mode 100644 index 00000000000..bb2f61f93cf Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ForTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/FunctionTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/FunctionTest.class new file mode 100644 index 00000000000..f6773db70e6 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/FunctionTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/JavaClassesTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/JavaClassesTest.class new file mode 100644 index 00000000000..60565244cc6 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/JavaClassesTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/KotlinLibTest$1.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/KotlinLibTest$1.class new file mode 100644 index 00000000000..e84986fcd7a Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/KotlinLibTest$1.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/KotlinLibTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/KotlinLibTest.class new file mode 100644 index 00000000000..f5adedec1cb Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/KotlinLibTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MiscTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MiscTest.class new file mode 100644 index 00000000000..b58e030532e Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MiscTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MultiFileTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MultiFileTest.class new file mode 100644 index 00000000000..50cd836d0a2 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MultiFileTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MultiNamespaceTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MultiNamespaceTest.class new file mode 100644 index 00000000000..a6ee234328f Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/MultiNamespaceTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/NameClashesTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/NameClashesTest.class new file mode 100644 index 00000000000..d5b089fedcd Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/NameClashesTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ObjectTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ObjectTest.class new file mode 100644 index 00000000000..671b58a1584 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/ObjectTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/OperatorOverloadingTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/OperatorOverloadingTest.class new file mode 100644 index 00000000000..af15b9263f4 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/OperatorOverloadingTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/PatternMatchingTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/PatternMatchingTest.class new file mode 100644 index 00000000000..1d03d2b21af Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/PatternMatchingTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/PropertyAccessTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/PropertyAccessTest.class new file mode 100644 index 00000000000..32d55e0680a Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/PropertyAccessTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RTTITest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RTTITest.class new file mode 100644 index 00000000000..16fd7d3126a Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RTTITest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RangeTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RangeTest.class new file mode 100644 index 00000000000..b77a0bfdfc1 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RangeTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoFunctionResultChecker.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoFunctionResultChecker.class new file mode 100644 index 00000000000..8921a012972 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoFunctionResultChecker.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoPropertyTypesChecker.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoPropertyTypesChecker.class new file mode 100644 index 00000000000..1021d7d81f4 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoPropertyTypesChecker.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoResultChecker.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoResultChecker.class new file mode 100644 index 00000000000..991a6de63e1 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoResultChecker.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoSystemOutputChecker.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoSystemOutputChecker.class new file mode 100644 index 00000000000..d00410e8f59 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoSystemOutputChecker.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoUtils.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoUtils.class new file mode 100644 index 00000000000..b218d3cfd54 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/RhinoUtils.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/SimpleTestSuite$1.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/SimpleTestSuite$1.class new file mode 100644 index 00000000000..de27cff1635 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/SimpleTestSuite$1.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/SimpleTestSuite.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/SimpleTestSuite.class new file mode 100644 index 00000000000..a0b3e39142a Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/SimpleTestSuite.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/StandardClassesTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/StandardClassesTest.class new file mode 100644 index 00000000000..e7c6d7f11d9 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/StandardClassesTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/StringTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/StringTest.class new file mode 100644 index 00000000000..ffd7a1a2b51 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/StringTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$1.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$1.class new file mode 100644 index 00000000000..c7bdac391bf Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$1.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$2.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$2.class new file mode 100644 index 00000000000..0cf76801ad7 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$2.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$SingleFileTester.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$SingleFileTester.class new file mode 100644 index 00000000000..c5b4b2ec24a Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite$SingleFileTester.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite.class new file mode 100644 index 00000000000..8906648b535 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/Suite.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TraitTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TraitTest.class new file mode 100644 index 00000000000..4299b66a4c6 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TraitTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslationTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslationTest.class new file mode 100644 index 00000000000..bc7fef386df Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslationTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$1.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$1.class new file mode 100644 index 00000000000..b48b1935344 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$1.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$2.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$2.class new file mode 100644 index 00000000000..9f8d58ea61d Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$2.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$3.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$3.class new file mode 100644 index 00000000000..3d7af1d5936 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$3.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$4.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$4.class new file mode 100644 index 00000000000..246bc30329f Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$4.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$NamedTestFactory.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$NamedTestFactory.class new file mode 100644 index 00000000000..9427573a389 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder$NamedTestFactory.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder.class new file mode 100644 index 00000000000..1f789cf25e3 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TranslatorTestCaseBuilder.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TupleTest.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TupleTest.class new file mode 100644 index 00000000000..a78f38ea2ac Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/TupleTest.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/WebDemoExamples1Test.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/WebDemoExamples1Test.class new file mode 100644 index 00000000000..ee937e6b5db Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/WebDemoExamples1Test.class differ diff --git a/k2js/out/test/translatorTests/org/jetbrains/k2js/test/WebDemoExamples2Test.class b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/WebDemoExamples2Test.class new file mode 100644 index 00000000000..823b8196544 Binary files /dev/null and b/k2js/out/test/translatorTests/org/jetbrains/k2js/test/WebDemoExamples2Test.class differ diff --git a/k2js/translator/testFiles/class/out/classInstantiation.js b/k2js/translator/testFiles/class/out/classInstantiation.js new file mode 100644 index 00000000000..dd262ccec77 --- /dev/null +++ b/k2js/translator/testFiles/class/out/classInstantiation.js @@ -0,0 +1,35 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Test = Kotlin.Class.create({initialize:function(){ + } + }); + return {Test_0:Test}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var test = new foo.Test_0; + return true; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/classWithoutNamespace.js b/k2js/translator/testFiles/class/out/classWithoutNamespace.js new file mode 100644 index 00000000000..d15ad6a889c --- /dev/null +++ b/k2js/translator/testFiles/class/out/classWithoutNamespace.js @@ -0,0 +1,26 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a){ + this.$a = a; + { + this.$a = 3; + } + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {A:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new Anonymous.A(1)).get_a() == 3; + } +} +}, {A:classes.A}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/class/out/complexExpressionAsConstructorParameter.js b/k2js/translator/testFiles/class/out/complexExpressionAsConstructorParameter.js new file mode 100644 index 00000000000..2110aec74d3 --- /dev/null +++ b/k2js/translator/testFiles/class/out/complexExpressionAsConstructorParameter.js @@ -0,0 +1,43 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Test = Kotlin.Class.create({initialize:function(a, b){ + this.$c = a; + this.$d = b; + } + , get_c:function(){ + return this.$c; + } + , get_d:function(){ + return this.$d; + } + }); + return {Test_0:Test}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var test = new foo.Test_0(1 + 6 * 3, 10 % 2); + return test.get_c() == 19 && test.get_d() == 0; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/constructorWithParameter.js b/k2js/translator/testFiles/class/out/constructorWithParameter.js new file mode 100644 index 00000000000..21bbff908d6 --- /dev/null +++ b/k2js/translator/testFiles/class/out/constructorWithParameter.js @@ -0,0 +1,39 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Test = Kotlin.Class.create({initialize:function(a){ + this.$b = a; + } + , get_b:function(){ + return this.$b; + } + }); + return {Test_0:Test}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var test = new foo.Test_0(1); + return test.get_b() == 1; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/constructorWithPropertiesAsParameters.js b/k2js/translator/testFiles/class/out/constructorWithPropertiesAsParameters.js new file mode 100644 index 00000000000..6cfad6ef0d1 --- /dev/null +++ b/k2js/translator/testFiles/class/out/constructorWithPropertiesAsParameters.js @@ -0,0 +1,51 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var A = Kotlin.Class.create({initialize:function(b, a){ + this.$b = b; + this.$a = a; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {A_0:A}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var c = new foo.A_0(1, '1'); + c.set_b(2); + c.set_a('2'); + return c.get_b() == 2 && c.get_a() == '2'; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/incrementProperty.js b/k2js/translator/testFiles/class/out/incrementProperty.js new file mode 100644 index 00000000000..4d85dc808ed --- /dev/null +++ b/k2js/translator/testFiles/class/out/incrementProperty.js @@ -0,0 +1,53 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Slot = Kotlin.Class.create({initialize:function(){ + this.$vitality = 10000; + } + , get_vitality:function(){ + return this.$vitality; + } + , set_vitality:function(tmp$0){ + this.$vitality = tmp$0; + } + , increaseVitality:function(delta){ + { + this.set_vitality(this.get_vitality() + delta); + if (this.get_vitality() > 65535) + this.set_vitality(65535); + } + } + }); + return {Slot_0:Slot}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var s = new foo.Slot_0; + s.increaseVitality(1000); + if (s.get_vitality() == 11000) + return 'OK'; + else + return 'fail'; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/methodDeclarationAndCall.js b/k2js/translator/testFiles/class/out/methodDeclarationAndCall.js new file mode 100644 index 00000000000..15b23e7a16f --- /dev/null +++ b/k2js/translator/testFiles/class/out/methodDeclarationAndCall.js @@ -0,0 +1,40 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Test = Kotlin.Class.create({initialize:function(){ + } + , method:function(){ + { + return true; + } + } + }); + return {Test_0:Test}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var test = new foo.Test_0; + return test.method(); + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/propertiesAsParametersInitialized.js b/k2js/translator/testFiles/class/out/propertiesAsParametersInitialized.js new file mode 100644 index 00000000000..0463524396e --- /dev/null +++ b/k2js/translator/testFiles/class/out/propertiesAsParametersInitialized.js @@ -0,0 +1,49 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var A = Kotlin.Class.create({initialize:function(b, a){ + this.$b = b; + this.$a = a; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {A_0:A}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var c = new foo.A_0(2, '2'); + return c.get_b() == 2 && c.get_a() == '2'; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/propertyAccess.js b/k2js/translator/testFiles/class/out/propertyAccess.js new file mode 100644 index 00000000000..fff3a97d69c --- /dev/null +++ b/k2js/translator/testFiles/class/out/propertyAccess.js @@ -0,0 +1,38 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Test = Kotlin.Class.create({initialize:function(){ + this.$p = true; + } + , get_p:function(){ + return this.$p; + } + }); + return {Test_0:Test}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + return (new foo.Test_0).get_p(); + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/class/out/simpleInitializer.js b/k2js/translator/testFiles/class/out/simpleInitializer.js new file mode 100644 index 00000000000..7eba4fc61ab --- /dev/null +++ b/k2js/translator/testFiles/class/out/simpleInitializer.js @@ -0,0 +1,43 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Test = Kotlin.Class.create({initialize:function(){ + { + this.$a = 3; + } + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {Test_0:Test}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + return (new foo.Test_0).get_a() == 3; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/KT-921.js b/k2js/translator/testFiles/examples/out/KT-921.js new file mode 100644 index 00000000000..f4261476a01 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/KT-921.js @@ -0,0 +1,104 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + classes = function(){ + var Viewable = Kotlin.Class.create({initialize:function(){ + this.$items = new Kotlin.ArrayList; + } + , get_items:function(){ + return this.$items; + } + , add:function(item_0){ + this.get_items().add(item_0); + } + , remove:function(item_0){ + this.get_items().remove(item_0); + } + , view:function(lifetime, viewer){ + { + tmp$0 = this.get_items().iterator(); + while (tmp$0.hasNext()) { + item = tmp$0.next(); + { + viewer(lifetime, item); + } + } + } + } + }); + var Lifetime = Kotlin.Class.create({initialize:function(){ + this.$attached = new Kotlin.ArrayList; + } + , get_attached:function(){ + return this.$attached; + } + , attach:function(action){ + this.get_attached().add(action); + } + , close_0:function(){ + { + tmp$0 = this.get_attached().iterator(); + while (tmp$0.hasNext()) { + x = tmp$0.next(); + { + x(); + } + } + } + this.get_attached().clear(); + } + }); + return {Lifetime_0:Lifetime, Viewable_0:Viewable}; + } + (); + Anonymous = Kotlin.Namespace.create({initialize:function(){ + } + , lifetime_0:function(body){ + var l = new Anonymous.Lifetime_0; + body(l); + l.close_0(); + } + , Dump:function(items){ + { + tmp$0 = items.iterator(); + while (tmp$0.hasNext()) { + item = tmp$0.next(); + { + Kotlin.System.out() != null?Kotlin.System.out().print(Kotlin.toString(item) + ', '):null; + } + } + } + Kotlin.System.out() != null?Kotlin.System.out().println():null; + } + , main:function(args){ + var v = new Anonymous.Viewable_0; + var x = new Kotlin.ArrayList; + v.add(1); + v.add(2); + Anonymous.lifetime_0((tmp$0_0 = this , function(it){ + return v.view(it, (tmp$0 = this , function(itemLifetime, item){ + x.add(item); + Anonymous.Dump(x); + return itemLifetime.attach(); + } + )); + } + )); + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/closureWithParameter.js b/k2js/translator/testFiles/examples/out/closureWithParameter.js new file mode 100644 index 00000000000..3fb2e2e509d --- /dev/null +++ b/k2js/translator/testFiles/examples/out/closureWithParameter.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return Anonymous.apply('OK', function(arg){ + { + return arg; + } + } + ); + } +} +, apply:function(arg, f){ + { + return f(arg); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/closureWithParameterAndBoxing.js b/k2js/translator/testFiles/examples/out/closureWithParameterAndBoxing.js new file mode 100644 index 00000000000..cd1791d1d3e --- /dev/null +++ b/k2js/translator/testFiles/examples/out/closureWithParameterAndBoxing.js @@ -0,0 +1,28 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + if (Anonymous.apply(5, function(arg){ + { + return arg + 13; + } + } + ) == 18) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +, apply:function(arg, f){ + { + return f(arg); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/diamondInheritance.js b/k2js/translator/testFiles/examples/out/diamondInheritance.js new file mode 100644 index 00000000000..54b0c51ee46 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/diamondInheritance.js @@ -0,0 +1,50 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$v = 0; + } + , get_v:function(){ + return this.$v; + } + , set_v:function(tmp$0){ + this.$v = tmp$0; + } + }); + var tmp$1 = Kotlin.Trait.create(tmp$0, {}); + var tmp$2 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + }); + var tmp$3 = Kotlin.Class.create(tmp$2, tmp$1, {initialize:function(){ + this.super_init(); + } + }); + return {Right:tmp$1, Left:tmp$2, D:tmp$3, Base:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, vl:function(l){ + { + return l.get_v(); + } +} +, vr:function(r){ + { + return r.get_v(); + } +} +, box:function(){ + { + var d = new Anonymous.D; + d.set_v(42); + if (d.get_v() != 42) + return 'Fail #1'; + if (Anonymous.vl(d) != 42) + return 'Fail #2'; + if (Anonymous.vr(d) != 42) + return 'Fail #3'; + return 'OK'; + } +} +}, {Base:classes.Base, Left:classes.Left, Right:classes.Right, D:classes.D}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/doubleEnclosedLocalVariable.js b/k2js/translator/testFiles/examples/out/doubleEnclosedLocalVariable.js new file mode 100644 index 00000000000..6d8e80a38b9 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/doubleEnclosedLocalVariable.js @@ -0,0 +1,35 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var cl = 39; + if (Anonymous.sum(200, function(){ + { + var ff = function(){ + { + return cl; + } + } + ; + return ff(); + } + } + ) == 239) + tmp$0 = 'OK'; + else + tmp$0 = 'FAIL'; + return tmp$0; + } +} +, sum:function(arg, f){ + { + return arg + f(); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/enclosingLocalVariable.js b/k2js/translator/testFiles/examples/out/enclosingLocalVariable.js new file mode 100644 index 00000000000..c97a6e06d41 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/enclosingLocalVariable.js @@ -0,0 +1,41 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var cl = 39; + if (Anonymous.sum(200, function(){ + { + var m = function(){ + { + var r = function(){ + { + return cl; + } + } + ; + return r(); + } + } + ; + return m(); + } + } + ) == 239) + tmp$0 = 'OK'; + else + tmp$0 = 'FAIL'; + return tmp$0; + } +} +, sum:function(arg, f){ + { + return arg + f(); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/enclosingThis.js b/k2js/translator/testFiles/examples/out/enclosingThis.js new file mode 100644 index 00000000000..1fd99f7521c --- /dev/null +++ b/k2js/translator/testFiles/examples/out/enclosingThis.js @@ -0,0 +1,58 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Point_0 = Kotlin.Class.create({initialize:function(x, y){ + this.$x = x; + this.$y = y; + } + , get_x:function(){ + return this.$x; + } + , get_y:function(){ + return this.$y; + } + , mul:function(){ + { + var tmp$0; + return tmp$0 = this , function(scalar){ + { + return new Anonymous.Point(tmp$0.get_x() * scalar, tmp$0.get_y() * scalar); + } + } + ; + } + } + }); + return {Point:Point_0}; + } + (); + var Anonymous = Kotlin.Namespace.create({initialize:function(){ + Anonymous.$m = (new Anonymous.Point(2, 3)).mul(); + } + , get_m:function(){ + return Anonymous.$m; + } + , box:function(){ + { + var answer = Anonymous.get_m()(5); + return answer.get_x() == 10 && answer.get_y() == 15?'OK':'FAIL'; + } + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/extensionClosure.js b/k2js/translator/testFiles/examples/out/extensionClosure.js new file mode 100644 index 00000000000..f49da63c02d --- /dev/null +++ b/k2js/translator/testFiles/examples/out/extensionClosure.js @@ -0,0 +1,40 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(x, y){ + this.$x = x; + this.$y = y; + } + , get_x:function(){ + return this.$x; + } + , get_y:function(){ + return this.$y; + } + }); + return {Point:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var answer = Anonymous.apply(new Anonymous.Point(3, 5), function(scalar){ + { + return new Anonymous.Point(this.get_x() * scalar, this.get_y() * scalar); + } + } + ); + if (answer.get_x() == 6 && answer.get_y() == 10) + tmp$0 = 'OK'; + else + tmp$0 = 'FAIL'; + return tmp$0; + } +} +, apply:function(arg, f){ + { + return f.call(arg, 2); + } +} +}, {Point:classes.Point}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/funDelegation.js b/k2js/translator/testFiles/examples/out/funDelegation.js new file mode 100644 index 00000000000..256a85c899f --- /dev/null +++ b/k2js/translator/testFiles/examples/out/funDelegation.js @@ -0,0 +1,41 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({}); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + } + , n_0:function(n){ + { + return n + 1; + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + }); + var tmp$3 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + }); + return {Base:tmp$1, Derived2:tmp$2, Derived1:tmp$3, Abstract:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, test:function(s){ + { + return s.n_0(238) == 239; + } +} +, box:function(){ + { + if (!Anonymous.test(new Anonymous.Base)) + return 'Fail #1'; + if (!Anonymous.test(new Anonymous.Derived1)) + return 'Fail #2'; + if (!Anonymous.test(new Anonymous.Derived2)) + return 'Fail #3'; + return 'OK'; + } +} +}, {Base:classes.Base, Abstract:classes.Abstract, Derived1:classes.Derived1, Derived2:classes.Derived2}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/generic.js b/k2js/translator/testFiles/examples/out/generic.js new file mode 100644 index 00000000000..89c902fe806 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/generic.js @@ -0,0 +1,58 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var Anonymous = Kotlin.Namespace.create({initialize:function(){ + } + , findAll:function(receiver, predicate){ + { + var tmp$0; + var result = new Kotlin.ArrayList(0); + { + tmp$0 = this.iterator(); + while (tmp$0.hasNext()) { + var t = tmp$0.next(); + { + if (predicate(t)) + result.add(t); + } + } + } + return result; + } + } + , box:function(){ + { + var list = new Kotlin.ArrayList(0); + list.add(2); + list.add(3); + list.add(5); + var m = list.Anonymous.findAll(list, function(name_0){ + { + return name_0 < 4; + } + } + ); + return m.size() == 2?'OK':'fail'; + } + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/incrementProperty.js b/k2js/translator/testFiles/examples/out/incrementProperty.js new file mode 100644 index 00000000000..a4365ed3ba1 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/incrementProperty.js @@ -0,0 +1,35 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$vitality = 10000; + } + , get_vitality:function(){ + return this.$vitality; + } + , set_vitality:function(tmp$0){ + this.$vitality = tmp$0; + } + , increaseVitality:function(delta){ + { + this.set_vitality(this.get_vitality() + delta); + if (this.get_vitality() > 65535) + this.set_vitality(65535); + } + } + }); + return {Slot:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var s = new Anonymous.Slot; + s.increaseVitality(1000); + if (s.get_vitality() == 11000) + return 'OK'; + else + return 'fail'; + } +} +}, {Slot:classes.Slot}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/inheritedMethod.js b/k2js/translator/testFiles/examples/out/inheritedMethod.js new file mode 100644 index 00000000000..d7760fa7097 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/inheritedMethod.js @@ -0,0 +1,37 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , xyzzy:function(){ + { + return 'xyzzy'; + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + , test:function(){ + { + return this.xyzzy(); + } + } + }); + return {Bar:tmp$1, Foo:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var bar = new Anonymous.Bar; + var f = bar.test(); + if (f == 'xyzzy') + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +}, {Foo:classes.Foo, Bar:classes.Bar}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/initializerBlock.js b/k2js/translator/testFiles/examples/out/initializerBlock.js new file mode 100644 index 00000000000..b6e7745ddf5 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/initializerBlock.js @@ -0,0 +1,28 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + { + this.$f = 610; + } + } + , get_f:function(){ + return this.$f; + } + , set_f:function(tmp$0){ + this.$f = tmp$0; + } + }); + return {C:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new Anonymous.C; + if (c.get_f() != 610) + return 'fail'; + return 'OK'; + } +} +}, {C:classes.C}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/initializerBlockDImpl.js b/k2js/translator/testFiles/examples/out/initializerBlockDImpl.js new file mode 100644 index 00000000000..3d204758755 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/initializerBlockDImpl.js @@ -0,0 +1,43 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + classes = function(){ + var World = Kotlin.Class.create({initialize:function(){ + this.$items = new Kotlin.ArrayList; + this.$foo = new this.Item; + } + , get_items:function(){ + return this.$items; + } + , get_foo:function(){ + return this.$foo; + } + }); + return {World:World}; + } + (); + Anonymous = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + var w = new Anonymous.World; + if (w.get_items().size() !== 1) + return 'fail'; + return 'OK'; + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/jquery.js b/k2js/translator/testFiles/examples/out/jquery.js new file mode 100644 index 00000000000..8e19dfc32ed --- /dev/null +++ b/k2js/translator/testFiles/examples/out/jquery.js @@ -0,0 +1,32 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var Anonymous = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var aa = Kotlin.jQuery('a').attr('a'); + return 'OK'; + } + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/kt242.js b/k2js/translator/testFiles/examples/out/kt242.js new file mode 100644 index 00000000000..b3b19087add --- /dev/null +++ b/k2js/translator/testFiles/examples/out/kt242.js @@ -0,0 +1,32 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var i = 7; + var j = null; + var k = 7; + if (i == 7) { + } + if (7 == i) { + } + if (j == 7) { + } + if (7 == j) { + } + if (i == k) { + } + if (k == i) { + } + if (j == k) { + } + if (k == j) { + } + return 'OK'; + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/kt248.js b/k2js/translator/testFiles/examples/out/kt248.js new file mode 100644 index 00000000000..9fa7468f699 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/kt248.js @@ -0,0 +1,33 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + classes = function(){ + return {}; + } + (); + Anonymous = Namespace.create({initialize:function(){ + } + , box:function(){ + var b = true; + var i = 1; + var j = 1; + var s = 's'; + return 'OK'; + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/kt446.js b/k2js/translator/testFiles/examples/out/kt446.js new file mode 100644 index 00000000000..2cf69d1b63c --- /dev/null +++ b/k2js/translator/testFiles/examples/out/kt446.js @@ -0,0 +1,31 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + classes = function(){ + return {}; + } + (); + Anonymous = Namespace.create({initialize:function(){ + } + , box:function(){ + var s = 's'; + s += 1; + return s === 's1'?'OK':'fail'; + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/examples/out/newInstanceDefaultConstructor.js b/k2js/translator/testFiles/examples/out/newInstanceDefaultConstructor.js new file mode 100644 index 00000000000..d4ed4fcf556 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/newInstanceDefaultConstructor.js @@ -0,0 +1,25 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , foo:function(){ + { + return 610; + } + } + }); + return {SimpleClass:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new Anonymous.SimpleClass; + if (c.foo() == 610) { + return 'OK'; + } + return 'FAIL'; + } +} +}, {SimpleClass:classes.SimpleClass}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/overloadBinaryOperator.js b/k2js/translator/testFiles/examples/out/overloadBinaryOperator.js new file mode 100644 index 00000000000..5f488407a1c --- /dev/null +++ b/k2js/translator/testFiles/examples/out/overloadBinaryOperator.js @@ -0,0 +1,43 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$contents = new Kotlin.ArrayList; + } + , get_contents:function(){ + return this.$contents; + } + , add:function(item){ + { + this.get_contents().add(item); + } + } + , plus:function(b){ + { + var result = new Anonymous.ArrayWrapper; + result.get_contents().addAll(this.get_contents()); + result.get_contents().addAll(b.get_contents()); + return result; + } + } + }); + return {ArrayWrapper:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var v1 = new Anonymous.ArrayWrapper; + var v2 = new Anonymous.ArrayWrapper; + v1.add('foo'); + v2.add('bar'); + var v3 = v1.plus(v2); + if (v3.get_contents().size() == 2) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +}, {ArrayWrapper:classes.ArrayWrapper}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/overloadPlusAssignReturn.js b/k2js/translator/testFiles/examples/out/overloadPlusAssignReturn.js new file mode 100644 index 00000000000..eaaa7e822bc --- /dev/null +++ b/k2js/translator/testFiles/examples/out/overloadPlusAssignReturn.js @@ -0,0 +1,46 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$contents = new Kotlin.ArrayList; + } + , get_contents:function(){ + return this.$contents; + } + , add:function(item){ + { + this.get_contents().add(item); + } + } + , plusAssign:function(rhs){ + { + this.get_contents().addAll(rhs.get_contents()); + } + } + , get:function(index){ + { + return this.get_contents().get(index); + } + } + }); + return {ArrayWrapper:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var v1 = new Anonymous.ArrayWrapper; + var v2 = new Anonymous.ArrayWrapper; + v1.add('foo'); + var v3 = v1; + v2.add('bar'); + v1.plusAssign(v2); + if (v1.get_contents().size() == 2 && v3.get_contents().size() == 2) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +}, {ArrayWrapper:classes.ArrayWrapper}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/overloadPlusToPlusAssign.js b/k2js/translator/testFiles/examples/out/overloadPlusToPlusAssign.js new file mode 100644 index 00000000000..cab890a4d6d --- /dev/null +++ b/k2js/translator/testFiles/examples/out/overloadPlusToPlusAssign.js @@ -0,0 +1,49 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$contents = new Kotlin.ArrayList; + } + , get_contents:function(){ + return this.$contents; + } + , add:function(item){ + { + this.get_contents().add(item); + } + } + , plus:function(rhs){ + { + var result = new Anonymous.ArrayWrapper; + result.get_contents().addAll(this.get_contents()); + result.get_contents().addAll(rhs.get_contents()); + return result; + } + } + , get:function(index){ + { + return this.get_contents().get(index); + } + } + }); + return {ArrayWrapper:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var v1 = new Anonymous.ArrayWrapper; + var v2 = new Anonymous.ArrayWrapper; + v1.add('foo'); + var v3 = v1; + v2.add('bar'); + v1 = v1.plus(v2); + if (v1.get_contents().size() == 2 && v3.get_contents().size() == 1) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +}, {ArrayWrapper:classes.ArrayWrapper}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/overloadUnaryOperator.js b/k2js/translator/testFiles/examples/out/overloadUnaryOperator.js new file mode 100644 index 00000000000..d34c9c395c9 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/overloadUnaryOperator.js @@ -0,0 +1,57 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$contents = new Kotlin.ArrayList; + } + , get_contents:function(){ + return this.$contents; + } + , add:function(item){ + { + this.get_contents().add(item); + } + } + , minus:function(){ + { + var tmp$0; + var result = new Anonymous.ArrayWrapper; + result.get_contents().addAll(this.get_contents()); + var i = this.get_contents().size(); + { + tmp$0 = this.get_contents().iterator(); + while (tmp$0.hasNext()) { + var a = tmp$0.next(); + { + result.get_contents().set(--i, a); + } + } + } + return result; + } + } + , get:function(index){ + { + return this.get_contents().get(index); + } + } + }); + return {ArrayWrapper:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var v1 = new Anonymous.ArrayWrapper; + v1.add('foo'); + v1.add('bar'); + var v2 = v1.minus(); + if (v2.get(0) == 'bar' && v2.get(1) == 'foo') + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +}, {ArrayWrapper:classes.ArrayWrapper}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/propertyDelegation.js b/k2js/translator/testFiles/examples/out/propertyDelegation.js new file mode 100644 index 00000000000..ad0ee0ddbd9 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/propertyDelegation.js @@ -0,0 +1,68 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({}); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + this.$plain = 239; + this.$readwrite = 0; + } + , get_plain:function(){ + return this.$plain; + } + , get_read:function(){ + { + return 239; + } + } + , get_readwrite:function(){ + { + return this.$readwrite + 1; + } + } + , set_readwrite:function(n){ + { + this.$readwrite = n; + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + }); + var tmp$3 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + }); + return {Base:tmp$1, Derived2:tmp$2, Derived1:tmp$3, Abstract:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, code:function(s){ + { + if (s.get_plain() != 239) + return 1; + if (s.get_read() != 239) + return 2; + s.set_readwrite(238); + if (s.get_readwrite() != 239) + return 3; + return 0; + } +} +, test:function(s){ + { + return Anonymous.code(s) == 0; + } +} +, box:function(){ + { + if (!Anonymous.test(new Anonymous.Base)) + return 'Fail #1'; + if (!Anonymous.test(new Anonymous.Derived1)) + return 'Fail #2'; + if (!Anonymous.test(new Anonymous.Derived2)) + return 'Fail #3'; + return 'OK'; + } +} +}, {Base:classes.Base, Abstract:classes.Abstract, Derived1:classes.Derived1, Derived2:classes.Derived2}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/rightHandOverride.js b/k2js/translator/testFiles/examples/out/rightHandOverride.js new file mode 100644 index 00000000000..26fdddc2654 --- /dev/null +++ b/k2js/translator/testFiles/examples/out/rightHandOverride.js @@ -0,0 +1,37 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , f:function(){ + { + return 42; + } + } + }); + var tmp$1 = Kotlin.Trait.create({}); + var tmp$2 = Kotlin.Class.create(tmp$0, tmp$1, {initialize:function(){ + this.super_init(); + } + , f:function(){ + { + return 239; + } + } + }); + return {Left:tmp$1, D:tmp$2, Right:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var r = new Anonymous.Right; + var d = new Anonymous.D; + if (r.f() != 42) + return 'Fail #1'; + if (d.f() != 239) + return 'Fail #2'; + return 'OK'; + } +} +}, {Left:classes.Left, Right:classes.Right, D:classes.D}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/simplestClosure.js b/k2js/translator/testFiles/examples/out/simplestClosure.js new file mode 100644 index 00000000000..d0d632f712e --- /dev/null +++ b/k2js/translator/testFiles/examples/out/simplestClosure.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return Anonymous.invoker(function(){ + { + return 'OK'; + } + } + ); + } +} +, invoker:function(gen){ + { + return gen(); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/examples/out/simplestClosureAndBoxing.js b/k2js/translator/testFiles/examples/out/simplestClosureAndBoxing.js new file mode 100644 index 00000000000..ddfb2abdd0e --- /dev/null +++ b/k2js/translator/testFiles/examples/out/simplestClosureAndBoxing.js @@ -0,0 +1,28 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + if (Anonymous.int_invoker(function(){ + { + return 7; + } + } + ) == 7) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +, int_invoker:function(gen){ + { + return gen(); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/expression/conditional/out/elseif.js b/k2js/translator/testFiles/expression/conditional/out/elseif.js new file mode 100644 index 00000000000..fc777c6cc98 --- /dev/null +++ b/k2js/translator/testFiles/expression/conditional/out/elseif.js @@ -0,0 +1,45 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var a = 2; + var b = 3; + var c = 4; + if (a < 2) { + return a; + } + else if (a > 2) { + return b; + } + else if (a == c) { + return c; + } + else { + return 5; + } + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/conditional/out/if.js b/k2js/translator/testFiles/expression/conditional/out/if.js new file mode 100644 index 00000000000..1e7f752385a --- /dev/null +++ b/k2js/translator/testFiles/expression/conditional/out/if.js @@ -0,0 +1,45 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var a = 2; + var b = 3; + var c = 4; + if (a < 2) { + return a; + } + if (a > 2) { + return b; + } + if (a == c) { + return c; + } + else { + return 5; + } + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/conditional/out/ifAsExpressionWithThrow.js b/k2js/translator/testFiles/expression/conditional/out/ifAsExpressionWithThrow.js new file mode 100644 index 00000000000..fb918e77094 --- /dev/null +++ b/k2js/translator/testFiles/expression/conditional/out/ifAsExpressionWithThrow.js @@ -0,0 +1,18 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + var tmp$0; + if (true) + throw new Kotlin.Exception; + else + tmp$0 = false; + { + return tmp$0; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/conditional/out/ifElseAsExpression.js b/k2js/translator/testFiles/expression/conditional/out/ifElseAsExpression.js new file mode 100644 index 00000000000..ade1f8928b6 --- /dev/null +++ b/k2js/translator/testFiles/expression/conditional/out/ifElseAsExpression.js @@ -0,0 +1,37 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var tmp$0; + var a = 2; + if (a == 2) + tmp$0 = true; + else + tmp$0 = false; + return tmp$0; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/for/out/forIteratesOverArray.js b/k2js/translator/testFiles/expression/for/out/forIteratesOverArray.js new file mode 100644 index 00000000000..b9b88e76207 --- /dev/null +++ b/k2js/translator/testFiles/expression/for/out/forIteratesOverArray.js @@ -0,0 +1,36 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a1 = Kotlin.nullArray(10); +} +, get_a1:function(){ + return $a1; +} +, box:function(){ + { + var tmp$0; + var c = 0; + var d = 0; + foo.get_a1()[3] = 3; + foo.get_a1()[5] = 5; + { + tmp$0 = Kotlin.arrayIterator(foo.get_a1()); + while (tmp$0.hasNext()) { + var a = tmp$0.next(); + { + if (a != null) { + c += 1; + } + else { + d += 1; + } + } + } + } + return c == 2 && d == 8; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/for/out/forOnEmptyArray.js b/k2js/translator/testFiles/expression/for/out/forOnEmptyArray.js new file mode 100644 index 00000000000..238a9adac77 --- /dev/null +++ b/k2js/translator/testFiles/expression/for/out/forOnEmptyArray.js @@ -0,0 +1,27 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a1 = Kotlin.nullArray(0); +} +, get_a1:function(){ + return $a1; +} +, box:function(){ + { + var tmp$0; + { + tmp$0 = Kotlin.arrayIterator(foo.get_a1()); + while (tmp$0.hasNext()) { + var a = tmp$0.next(); + { + return false; + } + } + } + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/KT-921.js b/k2js/translator/testFiles/expression/function/out/KT-921.js new file mode 100644 index 00000000000..d1e2f1d2dbf --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/KT-921.js @@ -0,0 +1,115 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$items = new Kotlin.ArrayList; + } + , get_items:function(){ + return this.$items; + } + , add:function(item){ + { + this.get_items().add(item); + } + } + , remove:function(item){ + { + this.get_items().remove(item); + } + } + , view:function(lifetime, viewer){ + { + var tmp$0; + { + tmp$0 = this.get_items().iterator(); + while (tmp$0.hasNext()) { + var item = tmp$0.next(); + { + viewer(lifetime, item); + } + } + } + } + } + }); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + this.$attached = new Kotlin.ArrayList; + } + , get_attached:function(){ + return this.$attached; + } + , attach:function(action){ + { + this.get_attached().add(action); + } + } + , close_0:function(){ + { + var tmp$0; + { + tmp$0 = this.get_attached().iterator(); + while (tmp$0.hasNext()) { + var x = tmp$0.next(); + { + x(); + } + } + } + this.get_attached().clear(); + } + } + }); + return {Lifetime:tmp$1, Viewable:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, lifetime:function(body){ + { + var l = new Anonymous.Lifetime; + body(l); + l.close_0(); + } +} +, Dump:function(items){ + { + var tmp$0; + { + tmp$0 = items.iterator(); + while (tmp$0.hasNext()) { + var item = tmp$0.next(); + { + Kotlin.print(jet.toString(item) + ', '); + } + } + } + Kotlin.println(); + } +} +, main:function(args){ + { + var v = new Anonymous.Viewable; + var x = new Kotlin.ArrayList; + v.add(1); + v.add(2); + Anonymous.lifetime(function(it){ + { + v.view(it, function(itemLifetime, item){ + { + x.add(item); + Anonymous.Dump(x); + itemLifetime.attach(function(){ + { + x.remove(item); + Anonymous.Dump(x); + } + } + ); + } + } + ); + } + } + ); + } +} +}, {Lifetime:classes.Lifetime, Viewable:classes.Viewable}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/adderClosure.js b/k2js/translator/testFiles/expression/function/out/adderClosure.js new file mode 100644 index 00000000000..5c66dfd3ca8 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/adderClosure.js @@ -0,0 +1,22 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var sum = 0; + var adder = function(a){ + { + sum += a; + } + } + ; + adder(3); + adder(2); + return sum == 5; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/closureWithParameter.js b/k2js/translator/testFiles/expression/function/out/closureWithParameter.js new file mode 100644 index 00000000000..d00213404f4 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/closureWithParameter.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return foo.apply('OK', function(arg){ + { + return arg; + } + } + ); + } +} +, apply:function(arg, f){ + { + return f(arg); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/closureWithParameterAndBoxing.js b/k2js/translator/testFiles/expression/function/out/closureWithParameterAndBoxing.js new file mode 100644 index 00000000000..7688c70ab67 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/closureWithParameterAndBoxing.js @@ -0,0 +1,28 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + if (foo.apply(5, function(arg){ + { + return arg + 13; + } + } + ) == 18) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +, apply:function(arg, f){ + { + return f(arg); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/defaultParameters.js b/k2js/translator/testFiles/expression/function/out/defaultParameters.js new file mode 100644 index 00000000000..2b08a8210e6 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/defaultParameters.js @@ -0,0 +1,26 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(a, b){ + { + return a + b; + } +} +, box:function(){ + { + if (foo.f(1, 2) != 3) + return false; + if (foo.f(1, 3) != 4) + return false; + if (foo.f(3, 3) != 6) + return false; + if (foo.f(2, 3) != 5) + return false; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/enclosingThis.js b/k2js/translator/testFiles/expression/function/out/enclosingThis.js new file mode 100644 index 00000000000..3c2c756ba2d --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/enclosingThis.js @@ -0,0 +1,45 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(x, y){ + this.$x = x; + this.$y = y; + } + , get_x:function(){ + return this.$x; + } + , get_y:function(){ + return this.$y; + } + , mul:function(){ + { + var tmp$0; + return tmp$0 = this , function(scalar){ + { + return new Anonymous.Point(tmp$0.get_x() * scalar, tmp$0.get_y() * scalar); + } + } + ; + } + } + }); + return {Point:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ + $m = (new Anonymous.Point(2, 3)).mul(); +} +, get_m:function(){ + return $m; +} +, box:function(){ + { + var tmp$0; + var answer = Anonymous.get_m()(5); + if (answer.get_x() == 10 && answer.get_y() == 15) + tmp$0 = 'OK'; + else + tmp$0 = 'FAIL'; + return tmp$0; + } +} +}, {Point:classes.Point}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/expressionAsFunction.js b/k2js/translator/testFiles/expression/function/out/expressionAsFunction.js new file mode 100644 index 00000000000..e21ec08d719 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/expressionAsFunction.js @@ -0,0 +1,88 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $d = function(a){ + { + return a + 1; + } + } + ; + $p = function(a){ + { + return a * 3; + } + } + ; + $list = new Kotlin.ArrayList; +} +, get_d:function(){ + return $d; +} +, get_p:function(){ + return $p; +} +, get_list:function(){ + return $list; +} +, chain:function(start){ + { + var tmp$0; + var res = start; + { + tmp$0 = foo.get_list().iterator(); + while (tmp$0.hasNext()) { + var func = tmp$0.next(); + { + res = func(res); + } + } + } + return res; + } +} +, box:function(){ + { + if (foo.chain(0) != 0) { + return false; + } + foo.get_list().add(foo.get_d()); + if (foo.get_list().get(0)(0) != 1) { + return false; + } + foo.get_list().add(foo.get_p()); + if (foo.get_list().get(1)(10) != 30) { + return false; + } + if (foo.chain(0) != 3) { + return false; + } + foo.get_list().add(function(it){ + { + return it * it; + } + } + ); + foo.get_list().add(function(it){ + { + return it - 100; + } + } + ); + if (foo.chain(2) != -19) { + return false; + } + if (function(a){ + { + return a * a; + } + } + (3) != 9) { + return false; + } + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/functionInsideFunction.js b/k2js/translator/testFiles/expression/function/out/functionInsideFunction.js new file mode 100644 index 00000000000..e96efde42e6 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/functionInsideFunction.js @@ -0,0 +1,37 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + function f(){ + { + return 3; + } + } + + return f() + f() == 6 && foo.b() == 24; + } +} +, b:function(){ + { + function a(){ + { + function c(){ + { + return 4; + } + } + + return c() * 3; + } + } + + var a$0 = 2; + return a() * a$0; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/functionLiteral.js b/k2js/translator/testFiles/expression/function/out/functionLiteral.js new file mode 100644 index 00000000000..b72884eedca --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/functionLiteral.js @@ -0,0 +1,21 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var sum = 0; + var addFive = function(a){ + { + return a + 5; + } + } + ; + sum = addFive(sum); + return sum == 5; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/functionLiteralAsLastParameter.js b/k2js/translator/testFiles/expression/function/out/functionLiteralAsLastParameter.js new file mode 100644 index 00000000000..7a455995c5a --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/functionLiteralAsLastParameter.js @@ -0,0 +1,32 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(a){ + { + return a(1); + } +} +, box:function(){ + { + if (foo.f(function(it){ + { + return it + 2; + } + } + ) != 3) + return false; + if (foo.f(function(a){ + { + return a * 300; + } + } + ) != 300) + return false; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/functionLiteralAsParameter.js b/k2js/translator/testFiles/expression/function/out/functionLiteralAsParameter.js new file mode 100644 index 00000000000..8d97ec5fb70 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/functionLiteralAsParameter.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, apply:function(f, t){ + { + return f(t); + } +} +, box:function(){ + { + return foo.apply(function(a){ + { + return a + 5; + } + } + , 3) == 8; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/functionUsedBeforeDeclaration.js b/k2js/translator/testFiles/expression/function/out/functionUsedBeforeDeclaration.js new file mode 100644 index 00000000000..b34d6e96aac --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/functionUsedBeforeDeclaration.js @@ -0,0 +1,18 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return foo.f(); + } +} +, f:function(){ + { + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/functionWithTwoParametersCall.js b/k2js/translator/testFiles/expression/function/out/functionWithTwoParametersCall.js new file mode 100644 index 00000000000..73a04aaf12e --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/functionWithTwoParametersCall.js @@ -0,0 +1,18 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, sum:function(param1, param2){ + { + return param1 + param2; + } +} +, box:function(){ + { + return foo.sum(1, 5) == 6; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/implicitItParameter.js b/k2js/translator/testFiles/expression/function/out/implicitItParameter.js new file mode 100644 index 00000000000..12f0b1da6e8 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/implicitItParameter.js @@ -0,0 +1,37 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, test:function(f, p){ + { + return f(p); + } +} +, box:function(){ + { + if (!foo.test(function(it){ + { + return it + 1 == 2; + } + } + , 1)) + return false; + if (!foo.test(function(it){ + { + return it > 1; + } + } + , 3)) + return false; + return foo.test(function(it){ + { + return it < 1 == false; + } + } + , 1); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/loopClosure.js b/k2js/translator/testFiles/expression/function/out/loopClosure.js new file mode 100644 index 00000000000..de725a25368 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/loopClosure.js @@ -0,0 +1,34 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $b = 0; +} +, get_b:function(){ + return $b; +} +, set_b:function(tmp$0){ + $b = tmp$0; +} +, loop:function(times){ + { + while (times > 0) { + var u = function(value){ + { + foo.set_b(foo.get_b() + 1); + } + } + ; + u(times--); + } + } +} +, box:function(){ + { + foo.loop(5); + return foo.get_b() == 5; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/namedArguments.js b/k2js/translator/testFiles/expression/function/out/namedArguments.js new file mode 100644 index 00000000000..e33cccbd6c0 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/namedArguments.js @@ -0,0 +1,27 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, test:function(x, y){ + { + return y - x; + } +} +, box:function(){ + { + if (foo.test(1, 2) != 1) { + return false; + } + if (foo.test(1, 2) != 1) { + return false; + } + if (foo.test(1, 2) != 1) { + return false; + } + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/function/out/vararg.js b/k2js/translator/testFiles/expression/function/out/vararg.js new file mode 100644 index 00000000000..3e93b7088b6 --- /dev/null +++ b/k2js/translator/testFiles/expression/function/out/vararg.js @@ -0,0 +1,34 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, testSize:function(expectedSize, i){ + { + return i.length == expectedSize; + } +} +, testSum:function(expectedSum, i){ + { + var tmp$0; + var sum = 0; + { + tmp$0 = Kotlin.arrayIterator(i); + while (tmp$0.hasNext()) { + var j = tmp$0.next(); + { + sum += j; + } + } + } + return expectedSum == sum; + } +} +, box:function(){ + { + return foo.testSize(0, []) && foo.testSum(0, []) && foo.testSize(3, [1, 1, 1]) && foo.testSum(3, [1, 1, 1]) && foo.testSize(6, [1, 1, 1, 2, 3, 4]) && foo.testSum(30, [10, 20, 0]); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/misc/out/KT-962.js b/k2js/translator/testFiles/expression/misc/out/KT-962.js new file mode 100644 index 00000000000..c854c5d32be --- /dev/null +++ b/k2js/translator/testFiles/expression/misc/out/KT-962.js @@ -0,0 +1,39 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var Anonymous = Kotlin.Namespace.create({initialize:function(){ + } + , stdout:function(){ + { + var tmp$0; + tmp$0 = Kotlin.System.out() , tmp$0 != null?tmp$0.println('stdout'):null; + return Kotlin.System.out(); + } + } + , main:function(args){ + { + var tmp$0; + tmp$0 = Anonymous.stdout() , tmp$0 != null?tmp$0.println('Hello, world!'):null; + } + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/expression/misc/out/intRange.js b/k2js/translator/testFiles/expression/misc/out/intRange.js new file mode 100644 index 00000000000..1c3a79a9e7f --- /dev/null +++ b/k2js/translator/testFiles/expression/misc/out/intRange.js @@ -0,0 +1,207 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(start, size, reversed){ + this.$start = start; + this.$size = size; + this.$reversed = reversed; + } + , get_start:function(){ + return this.$start; + } + , get_size:function(){ + return this.$size; + } + , get_reversed:function(){ + return this.$reversed; + } + , get_end:function(){ + var tmp$0; + if (this.get_reversed()) + tmp$0 = this.get_start() - this.get_size() + 1; + else + tmp$0 = this.get_start() + this.get_size() - 1; + { + return tmp$0; + } + } + , contains:function(number){ + { + if (this.get_reversed()) { + return number <= this.get_start() && number > this.get_start() - this.get_size(); + } + else { + return number >= this.get_start() && number < this.get_start() + this.get_size(); + } + } + } + , iterator:function(){ + { + return new foo.RangeIterator(this.get_start(), this.get_size(), this.get_reversed()); + } + } + }); + var tmp$1 = Kotlin.Class.create({initialize:function(start, count, reversed){ + this.$start = start; + this.$count = count; + this.$reversed = reversed; + this.$i = this.get_start(); + } + , get_start:function(){ + return this.$start; + } + , get_count:function(){ + return this.$count; + } + , set_count:function(tmp$0){ + this.$count = tmp$0; + } + , get_reversed:function(){ + return this.$reversed; + } + , get_i:function(){ + return this.$i; + } + , set_i:function(tmp$0){ + this.$i = tmp$0; + } + , next:function(){ + { + this.set_count(this.get_count() - 1); + if (this.get_reversed()) { + this.set_i(this.get_i() - 1); + return this.get_i() + 1; + } + else { + this.set_i(this.get_i() + 1); + return this.get_i() - 1; + } + } + } + , hasNext:function(){ + { + return this.get_count() > 0; + } + } + }); + return {RangeIterator:tmp$1, NumberRange:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return foo.testRange() && foo.testReversedRange(); + } +} +, testRange:function(){ + { + var tmp$1; + var tmp$0; + var oneToFive = new foo.NumberRange(1, 4, false); + if (oneToFive.contains(5)) + return false; + if (oneToFive.contains(0)) + return false; + if (oneToFive.contains(-100)) + return false; + if (oneToFive.contains(10)) + return false; + if (!oneToFive.contains(1)) + return false; + if (!oneToFive.contains(2)) + return false; + if (!oneToFive.contains(3)) + return false; + if (!oneToFive.contains(4)) + return false; + if (!(oneToFive.get_start() == 1)) + return false; + if (!(oneToFive.get_size() == 4)) + return false; + if (!(oneToFive.get_end() == 4)) + return false; + var sum = 0; + { + tmp$0 = oneToFive.iterator(); + while (tmp$0.hasNext()) { + var i = tmp$0.next(); + { + sum += i; + } + } + } + { + tmp$1 = oneToFive.iterator(); + while (tmp$1.hasNext()) { + var i$0 = tmp$1.next(); + { + Kotlin.print(i$0); + } + } + } + if (sum != 10) + return false; + return true; + } +} +, testReversedRange:function(){ + { + var tmp$1; + var tmp$0; + Kotlin.println('Testing reversed range.'); + var tenToFive = new foo.NumberRange(10, 5, true); + if (tenToFive.contains(5)) + return false; + if (tenToFive.contains(11)) + return false; + if (tenToFive.contains(-100)) + return false; + if (tenToFive.contains(1000)) + return false; + if (!tenToFive.contains(6)) + return false; + if (!tenToFive.contains(7)) + return false; + if (!tenToFive.contains(8)) + return false; + if (!tenToFive.contains(9)) + return false; + if (!tenToFive.contains(10)) + return false; + if (!(tenToFive.get_start() == 10)) + return false; + if (!(tenToFive.get_size() == 5)) + return false; + if (!(tenToFive.get_end() == 6)) + return false; + { + tmp$0 = tenToFive.iterator(); + while (tmp$0.hasNext()) { + var i = tmp$0.next(); + { + Kotlin.println(i); + } + } + } + var sum = 0; + { + tmp$1 = tenToFive.iterator(); + while (tmp$1.hasNext()) { + var i$0 = tmp$1.next(); + { + sum += i$0; + } + } + } + if (sum != 40) { + return false; + } + return true; + } +} +, main:function(args){ + { + Kotlin.println(foo.box()); + } +} +}, {RangeIterator:classes.RangeIterator, NumberRange:classes.NumberRange}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/misc/out/jquery.js b/k2js/translator/testFiles/expression/misc/out/jquery.js new file mode 100644 index 00000000000..7a0538dc529 --- /dev/null +++ b/k2js/translator/testFiles/expression/misc/out/jquery.js @@ -0,0 +1,32 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var aa = jQuery('a').attr('a'); + return 'OK'; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/misc/out/localProperty.js b/k2js/translator/testFiles/expression/misc/out/localProperty.js new file mode 100644 index 00000000000..c5aa34d8228 --- /dev/null +++ b/k2js/translator/testFiles/expression/misc/out/localProperty.js @@ -0,0 +1,24 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $y = 3; +} +, get_y:function(){ + return $y; +} +, f:function(a){ + { + var x = 42; + var y = 50; + return y; + } +} +, box:function(){ + { + return foo.f(foo.get_y()); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/misc/out/safecallComputesExpressionOnlyOnce.js b/k2js/translator/testFiles/expression/misc/out/safecallComputesExpressionOnlyOnce.js new file mode 100644 index 00000000000..7d667c4bb05 --- /dev/null +++ b/k2js/translator/testFiles/expression/misc/out/safecallComputesExpressionOnlyOnce.js @@ -0,0 +1,35 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $i = 0; +} +, get_i:function(){ + return $i; +} +, set_i:function(tmp$0){ + $i = tmp$0; +} +, test:function(){ + var tmp$1; + var tmp$0; + { + return tmp$0 = foo.get_i() , (tmp$1 = tmp$0 , (foo.set_i(tmp$0 + 1) , tmp$1)); + } +} +, box:function(){ + { + if (foo.get_i() != 0) + return false; + foo.test() + 1; + if (foo.get_i() != 1) + return false; + foo.test() - 2; + if (foo.get_i() != 2) + return false; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/string/out/intInTemplate.js b/k2js/translator/testFiles/expression/string/out/intInTemplate.js new file mode 100644 index 00000000000..d4a6ec6d4a6 --- /dev/null +++ b/k2js/translator/testFiles/expression/string/out/intInTemplate.js @@ -0,0 +1,14 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var number = 3; + return 'my age is ' + number; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/string/out/multipleExpressionsInTemplate.js b/k2js/translator/testFiles/expression/string/out/multipleExpressionsInTemplate.js new file mode 100644 index 00000000000..26e4ccee4cb --- /dev/null +++ b/k2js/translator/testFiles/expression/string/out/multipleExpressionsInTemplate.js @@ -0,0 +1,15 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var right = 2; + var left = 3; + return 'left = ' + left + '\n' + 'right = ' + right + '\n' + 'sum = ' + (left + right) + '\n'; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/string/out/objectToStringCallInTemplate.js b/k2js/translator/testFiles/expression/string/out/objectToStringCallInTemplate.js new file mode 100644 index 00000000000..5b910f020ef --- /dev/null +++ b/k2js/translator/testFiles/expression/string/out/objectToStringCallInTemplate.js @@ -0,0 +1,36 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(i){ + this.$i = i; + } + , get_i:function(){ + return this.$i; + } + , set_i:function(tmp$0){ + this.$i = tmp$0; + } + , toString:function(){ + { + return 'a' + this.get_i(); + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var p = new foo.A(2); + var n = new foo.A(1); + if (p + n != 'a2a1') { + return false; + } + if (new foo.A(10) != 'a10') { + return false; + } + return true; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/string/out/stringAssignment.js b/k2js/translator/testFiles/expression/string/out/stringAssignment.js new file mode 100644 index 00000000000..c17668a8230 --- /dev/null +++ b/k2js/translator/testFiles/expression/string/out/stringAssignment.js @@ -0,0 +1,16 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 'bar'; + var b = 'foo'; + b = a; + return b == 'bar'; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/string/out/stringConstant.js b/k2js/translator/testFiles/expression/string/out/stringConstant.js new file mode 100644 index 00000000000..0d120ddcdbb --- /dev/null +++ b/k2js/translator/testFiles/expression/string/out/stringConstant.js @@ -0,0 +1,14 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 'String'; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/string/out/stringInTemplate.js b/k2js/translator/testFiles/expression/string/out/stringInTemplate.js new file mode 100644 index 00000000000..3a33350c76f --- /dev/null +++ b/k2js/translator/testFiles/expression/string/out/stringInTemplate.js @@ -0,0 +1,14 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var name_0 = 'Hello'; + return 'o' + name_0 + 'o'; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/expression/while/out/breakDoWhile.js b/k2js/translator/testFiles/expression/while/out/breakDoWhile.js new file mode 100644 index 00000000000..18229a1623f --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/breakDoWhile.js @@ -0,0 +1,39 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var i = 0; + do { + if (i == 3) { + break; + } + ++i; + } + while (i < 100); + return i == 3; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/while/out/breakWhile.js b/k2js/translator/testFiles/expression/while/out/breakWhile.js new file mode 100644 index 00000000000..37857b175bb --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/breakWhile.js @@ -0,0 +1,38 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var i = 0; + while (i < 100) { + if (i == 3) { + break; + } + ++i; + } + return i == 3; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/while/out/continueDoWhile.js b/k2js/translator/testFiles/expression/while/out/continueDoWhile.js new file mode 100644 index 00000000000..d696274a49a --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/continueDoWhile.js @@ -0,0 +1,41 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var i = 0; + var b = true; + do { + ++i; + if (i >= 1) { + continue; + } + b = false; + } + while (i < 100); + return b; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/while/out/continueWhile.js b/k2js/translator/testFiles/expression/while/out/continueWhile.js new file mode 100644 index 00000000000..4c9a9c699bb --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/continueWhile.js @@ -0,0 +1,40 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var i = 0; + var b = true; + while (i < 100) { + ++i; + if (i >= 1) { + continue; + } + b = false; + } + return b; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/while/out/doWhile.js b/k2js/translator/testFiles/expression/while/out/doWhile.js new file mode 100644 index 00000000000..61ef47b9aea --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/doWhile.js @@ -0,0 +1,42 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var a = 50; + var b = 0; + var c = 0; + do { + b = b + 1; + c = c + 2; + } + while (b < a); + if (c == 100) { + return true; + } + return false; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/while/out/doWhile2.js b/k2js/translator/testFiles/expression/while/out/doWhile2.js new file mode 100644 index 00000000000..a426d57c782 --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/doWhile2.js @@ -0,0 +1,39 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var x = 2; + do { + x = 1; + } + while (3 < 2); + if (x == 1) { + return true; + } + return false; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/while/out/while.js b/k2js/translator/testFiles/expression/while/out/while.js new file mode 100644 index 00000000000..c111cd03236 --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/while.js @@ -0,0 +1,41 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var a = 50; + var b = 0; + var c = 0; + while (b < a) { + b = b + 1; + c = c + 2; + } + if (c == 100) { + return true; + } + return false; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/expression/while/out/while2.js b/k2js/translator/testFiles/expression/while/out/while2.js new file mode 100644 index 00000000000..15d1c8416ea --- /dev/null +++ b/k2js/translator/testFiles/expression/while/out/while2.js @@ -0,0 +1,34 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + while (2 < 1) { + return false; + } + return true; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/extensionFunction/out/extensionFunctionOnExpression.js b/k2js/translator/testFiles/extensionFunction/out/extensionFunctionOnExpression.js new file mode 100644 index 00000000000..2c0f1cc737b --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/extensionFunctionOnExpression.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, same:function(receiver){ + { + return receiver; + } +} +, quadruple:function(receiver){ + { + return foo.same(receiver) * 4; + } +} +, box:function(){ + { + return foo.quadruple(3 + 4) == 28; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/extensionInsideFunctionLiteral.js b/k2js/translator/testFiles/extensionFunction/out/extensionInsideFunctionLiteral.js new file mode 100644 index 00000000000..3a47cebd385 --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/extensionInsideFunctionLiteral.js @@ -0,0 +1,48 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$m = 0; + } + , get_m:function(){ + return this.$m; + } + , set_m:function(tmp$0){ + this.$m = tmp$0; + } + , eval_0:function(){ + { + var tmp$0_0; + var d = (tmp$0_0 = this , function(){ + { + var tmp$0; + var c = (tmp$0 = tmp$0_0 , function(){ + { + return this + 3; + } + } + ); + tmp$0_0.set_m(tmp$0_0.get_m() + c.call(3)); + } + } + ); + d(); + } + } + }); + return {M:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = new foo.M; + if (a.get_m() != 0) + return false; + a.eval_0(); + if (a.get_m() != 6) + return false; + return true; + } +} +}, {M:classes.M}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/extensionLiteralPassedToFunction.js b/k2js/translator/testFiles/extensionFunction/out/extensionLiteralPassedToFunction.js new file mode 100644 index 00000000000..467922f84a1 --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/extensionLiteralPassedToFunction.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, apply:function(i, f){ + { + return f.call(i, 1); + } +} +, box:function(){ + { + return foo.apply(1, function(i){ + { + return i + this; + } + } + ) == 2; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/extensionUsedInsideClass.js b/k2js/translator/testFiles/extensionFunction/out/extensionUsedInsideClass.js new file mode 100644 index 00000000000..f7f08128740 --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/extensionUsedInsideClass.js @@ -0,0 +1,35 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a){ + this.$a = a; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + , eval_0:function(){ + { + return foo.f(this); + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(receiver){ + { + receiver.set_a(3); + return 10; + } +} +, box:function(){ + { + var a = new foo.A(4); + return a.eval_0() == 10 && a.get_a() == 3; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/extensionWithImplicitReceiver.js b/k2js/translator/testFiles/extensionFunction/out/extensionWithImplicitReceiver.js new file mode 100644 index 00000000000..72374531371 --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/extensionWithImplicitReceiver.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, same:function(receiver){ + { + return receiver; + } +} +, quadruple:function(receiver){ + { + return foo.same(receiver) * 4; + } +} +, box:function(){ + { + return foo.quadruple(3) == 12; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/generic.js b/k2js/translator/testFiles/extensionFunction/out/generic.js new file mode 100644 index 00000000000..97d87242fa1 --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/generic.js @@ -0,0 +1,45 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, findAll:function(receiver, predicate){ + { + var tmp$0; + var result = new Kotlin.ArrayList; + { + tmp$0 = receiver.iterator(); + while (tmp$0.hasNext()) { + var t = tmp$0.next(); + { + if (predicate(t)) + result.add(t); + } + } + } + return result; + } +} +, box:function(){ + { + var tmp$0; + var list = new Kotlin.ArrayList; + list.add(2); + list.add(3); + list.add(5); + var m = foo.findAll(list, function(name_0){ + { + return name_0 < 4; + } + } + ); + if (m.size() == 2) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/intExtension.js b/k2js/translator/testFiles/extensionFunction/out/intExtension.js new file mode 100644 index 00000000000..c69a2a70d73 --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/intExtension.js @@ -0,0 +1,18 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, quadruple:function(receiver){ + { + return receiver * 4; + } +} +, box:function(){ + { + return foo.quadruple(3) == 12; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/virtualExtension.js b/k2js/translator/testFiles/extensionFunction/out/virtualExtension.js new file mode 100644 index 00000000000..085459763ef --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/virtualExtension.js @@ -0,0 +1,34 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a){ + this.$a = a; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + , modify:function(receiver){ + { + return receiver * 3; + } + } + , eval_0:function(){ + { + return this.modify(this.get_a()); + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = new foo.A(4); + return a.eval_0() == 12; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionFunction/out/virtualExtensionOverride.js b/k2js/translator/testFiles/extensionFunction/out/virtualExtensionOverride.js new file mode 100644 index 00000000000..74c14aaf434 --- /dev/null +++ b/k2js/translator/testFiles/extensionFunction/out/virtualExtensionOverride.js @@ -0,0 +1,42 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a){ + this.$a = a; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + , modify:function(receiver){ + { + return receiver * 3; + } + } + , eval_0:function(){ + { + return this.modify(this.get_a()); + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(a){ + this.super_init(a); + } + , modify:function(receiver){ + { + return receiver - 2; + } + } + }); + return {B:tmp$1, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A(4)).eval_0() == 12 && (new foo.A(2)).eval_0() == 6 && (new foo.B(3)).eval_0() == 1; + } +} +}, {A:classes.A, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionProperty/out/absExtension.js b/k2js/translator/testFiles/extensionProperty/out/absExtension.js new file mode 100644 index 00000000000..eb23945f0ad --- /dev/null +++ b/k2js/translator/testFiles/extensionProperty/out/absExtension.js @@ -0,0 +1,27 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, get_abs:function(receiver){ + var tmp$0; + if (receiver > 0) + tmp$0 = receiver; + else + tmp$0 = -receiver; + { + return tmp$0; + } +} +, box:function(){ + { + if (foo.get_abs(4) != 4) + return false; + if (foo.get_abs(-5.2) != 5.2) + return false; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionProperty/out/propertyWithGetterAndSetter.js b/k2js/translator/testFiles/extensionProperty/out/propertyWithGetterAndSetter.js new file mode 100644 index 00000000000..38995e1f78c --- /dev/null +++ b/k2js/translator/testFiles/extensionProperty/out/propertyWithGetterAndSetter.js @@ -0,0 +1,46 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$a = 0; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, get_b:function(receiver){ + { + return receiver.get_a() * 3; + } +} +, set_b:function(receiver, c){ + { + receiver.set_a(c - 1); + } +} +, box:function(){ + { + var c = new foo.Test; + if (c.get_a() != 0) + return false; + if (foo.get_b(c) != 0) + return false; + c.set_a(3); + if (foo.get_b(c) != 9) + return false; + foo.set_b(c, 10); + if (c.get_a() != 9) + return false; + if (foo.get_b(c) != 27) + return false; + return true; + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/extensionProperty/out/simplePropertyWithGetter.js b/k2js/translator/testFiles/extensionProperty/out/simplePropertyWithGetter.js new file mode 100644 index 00000000000..45e40284c0e --- /dev/null +++ b/k2js/translator/testFiles/extensionProperty/out/simplePropertyWithGetter.js @@ -0,0 +1,33 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, get_size:function(receiver){ + { + return receiver.length; + } +} +, get_quadruple:function(receiver){ + { + return receiver * 4; + } +} +, box:function(){ + { + if (foo.get_size('1') != 1) + return false; + if (foo.get_size('11') != 2) + return false; + if (foo.get_size('121' + '123') != 6) + return false; + if (foo.get_quadruple(1) != 4) + return false; + if (foo.get_quadruple(0) != 0) + return false; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/inheritance/out/baseClassDefinedAfterDerived.js b/k2js/translator/testFiles/inheritance/out/baseClassDefinedAfterDerived.js new file mode 100644 index 00000000000..77c6e4b59b4 --- /dev/null +++ b/k2js/translator/testFiles/inheritance/out/baseClassDefinedAfterDerived.js @@ -0,0 +1,24 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$a = 3; + } + , get_a:function(){ + return this.$a; + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + }); + return {A:tmp$1, B:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).get_a() == 3; + } +} +}, {A:classes.A, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/inheritance/out/complexInitializationOrder.js b/k2js/translator/testFiles/inheritance/out/complexInitializationOrder.js new file mode 100644 index 00000000000..93e751ab101 --- /dev/null +++ b/k2js/translator/testFiles/inheritance/out/complexInitializationOrder.js @@ -0,0 +1,54 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$order = ''; + { + this.set_order(this.get_order() + 'A'); + } + } + , get_order:function(){ + return this.$order; + } + , set_order:function(tmp$0){ + this.$order = tmp$0; + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'E'); + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'B'); + } + } + }); + var tmp$3 = Kotlin.Class.create(tmp$2, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'D'); + } + } + }); + var tmp$4 = Kotlin.Class.create(tmp$2, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'C'); + } + } + }); + return {E:tmp$1, B:tmp$2, D:tmp$3, C:tmp$4, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.C).get_order() == 'ABC' && (new foo.D).get_order() == 'ABD' && (new foo.E).get_order() == 'AE'; + } +} +}, {A:classes.A, B:classes.B, C:classes.C, D:classes.D, E:classes.E}); +foo.initialize(); diff --git a/k2js/translator/testFiles/inheritance/out/definitionOrder.js b/k2js/translator/testFiles/inheritance/out/definitionOrder.js new file mode 100644 index 00000000000..c36bbed8040 --- /dev/null +++ b/k2js/translator/testFiles/inheritance/out/definitionOrder.js @@ -0,0 +1,54 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$order = ''; + { + this.set_order(this.get_order() + 'A'); + } + } + , get_order:function(){ + return this.$order; + } + , set_order:function(tmp$0){ + this.$order = tmp$0; + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'B'); + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'D'); + } + } + }); + var tmp$3 = Kotlin.Class.create(tmp$1, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'C'); + } + } + }); + var tmp$4 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'E'); + } + } + }); + return {B:tmp$1, D:tmp$2, C:tmp$3, E:tmp$4, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.C).get_order() == 'ABC' && (new foo.D).get_order() == 'ABD' && (new foo.E).get_order() == 'AE'; + } +} +}, {C:classes.C, D:classes.D, E:classes.E, B:classes.B, A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/inheritance/out/initializationOrder.js b/k2js/translator/testFiles/inheritance/out/initializationOrder.js new file mode 100644 index 00000000000..ce6de580d08 --- /dev/null +++ b/k2js/translator/testFiles/inheritance/out/initializationOrder.js @@ -0,0 +1,40 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$order = ''; + { + this.set_order(this.get_order() + 'A'); + } + } + , get_order:function(){ + return this.$order; + } + , set_order:function(tmp$0){ + this.$order = tmp$0; + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'B'); + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'C'); + } + } + }); + return {B:tmp$1, C:tmp$2, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.C).get_order() == 'ABC' && (new foo.B).get_order() == 'AB' && (new foo.A).get_order() == 'A'; + } +} +}, {A:classes.A, B:classes.B, C:classes.C}); +foo.initialize(); diff --git a/k2js/translator/testFiles/inheritance/out/initializersOfBasicClassExecute.js b/k2js/translator/testFiles/inheritance/out/initializersOfBasicClassExecute.js new file mode 100644 index 00000000000..899a039ffd5 --- /dev/null +++ b/k2js/translator/testFiles/inheritance/out/initializersOfBasicClassExecute.js @@ -0,0 +1,27 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$a = 3; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + }); + return {B:tmp$1, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.B).get_a(); + } +} +}, {A:classes.A, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/inheritance/out/methodOverride.js b/k2js/translator/testFiles/inheritance/out/methodOverride.js new file mode 100644 index 00000000000..54747099ea3 --- /dev/null +++ b/k2js/translator/testFiles/inheritance/out/methodOverride.js @@ -0,0 +1,33 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , f:function(){ + { + return 'C f'; + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + , f:function(){ + { + return 'D f'; + } + } + }); + return {D:tmp$1, C:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var d = new foo.D; + if (d.f() != 'D f') + return false; + return true; + } +} +}, {C:classes.C, D:classes.D}); +foo.initialize(); diff --git a/k2js/translator/testFiles/inheritance/out/valuePassedToAncestorConstructor.js b/k2js/translator/testFiles/inheritance/out/valuePassedToAncestorConstructor.js new file mode 100644 index 00000000000..7873730c237 --- /dev/null +++ b/k2js/translator/testFiles/inheritance/out/valuePassedToAncestorConstructor.js @@ -0,0 +1,24 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a){ + this.$b = a; + } + , get_b:function(){ + return this.$b; + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(c){ + this.super_init(c + 2); + } + }); + return {D:tmp$1, C:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.D(0)).get_b() == 2; + } +} +}, {C:classes.C, D:classes.D}); +foo.initialize(); diff --git a/k2js/translator/testFiles/java/arrayList/out/access.js b/k2js/translator/testFiles/java/arrayList/out/access.js new file mode 100644 index 00000000000..85c2a166920 --- /dev/null +++ b/k2js/translator/testFiles/java/arrayList/out/access.js @@ -0,0 +1,16 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = new Kotlin.ArrayList; + a.add(1); + a.add(2); + return a.size() == 2 && a.get(1) == 2 && a.get(0) == 1; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/java/arrayList/out/arrayAccess.js b/k2js/translator/testFiles/java/arrayList/out/arrayAccess.js new file mode 100644 index 00000000000..e5a5a5732f7 --- /dev/null +++ b/k2js/translator/testFiles/java/arrayList/out/arrayAccess.js @@ -0,0 +1,17 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = new Kotlin.ArrayList; + a.add(1); + a.add(2); + a.set(1, 100); + return a.size() == 2 && a.get(1) == 100 && a.get(0) == 1; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/java/arrayList/out/emptyList.js b/k2js/translator/testFiles/java/arrayList/out/emptyList.js new file mode 100644 index 00000000000..30442c2b01a --- /dev/null +++ b/k2js/translator/testFiles/java/arrayList/out/emptyList.js @@ -0,0 +1,14 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = new Kotlin.ArrayList; + return a.size() == 0; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/java/arrayList/out/indexOOB.js b/k2js/translator/testFiles/java/arrayList/out/indexOOB.js new file mode 100644 index 00000000000..ce2033fffc9 --- /dev/null +++ b/k2js/translator/testFiles/java/arrayList/out/indexOOB.js @@ -0,0 +1,18 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var arr = new Kotlin.ArrayList; + var i = 0; + while (i++ < 10) { + arr.add(i); + } + return arr.get(10) == 11; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/java/arrayList/out/isEmpty.js b/k2js/translator/testFiles/java/arrayList/out/isEmpty.js new file mode 100644 index 00000000000..b9aeef72c37 --- /dev/null +++ b/k2js/translator/testFiles/java/arrayList/out/isEmpty.js @@ -0,0 +1,15 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = new Kotlin.ArrayList; + a.add(3); + return !a.isEmpty() && (new Kotlin.ArrayList).isEmpty(); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/java/arrayList/out/iterate.js b/k2js/translator/testFiles/java/arrayList/out/iterate.js new file mode 100644 index 00000000000..95a829d963c --- /dev/null +++ b/k2js/translator/testFiles/java/arrayList/out/iterate.js @@ -0,0 +1,29 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var i = 0; + var arr = new Kotlin.ArrayList; + while (i++ < 10) { + arr.add(i); + } + var sum = 0; + { + tmp$0 = arr.iterator(); + while (tmp$0.hasNext()) { + var a = tmp$0.next(); + { + sum += a; + } + } + } + return sum == 55 && arr.size() == 10; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/java/arrayList/out/remove.js b/k2js/translator/testFiles/java/arrayList/out/remove.js new file mode 100644 index 00000000000..f2a8ff85833 --- /dev/null +++ b/k2js/translator/testFiles/java/arrayList/out/remove.js @@ -0,0 +1,30 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var i = 0; + var arr = new Kotlin.ArrayList; + while (i++ < 10) { + arr.add(i); + } + arr.remove(2); + var sum = 0; + { + tmp$0 = arr.iterator(); + while (tmp$0.hasNext()) { + var a = tmp$0.next(); + { + sum += a; + } + } + } + return sum == 52 && arr.get(1) == 2 && arr.get(2) == 4 && arr.get(3) == 5 && arr.get(4) == 6 && arr.get(8) == 10; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/multiFile/out/classesInheritedFromOtherFile.js b/k2js/translator/testFiles/multiFile/out/classesInheritedFromOtherFile.js new file mode 100644 index 00000000000..124841c684e --- /dev/null +++ b/k2js/translator/testFiles/multiFile/out/classesInheritedFromOtherFile.js @@ -0,0 +1,39 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , f:function(){ + { + return 3; + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + , f:function(){ + { + return 4; + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, {initialize:function(){ + this.super_init(); + } + , f:function(){ + { + return 5; + } + } + }); + return {B:tmp$1, C:tmp$2, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).f() == 3 && (new foo.B).f() == 4 && (new foo.C).f() == 5; + } +} +}, {A:classes.A, C:classes.C, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/multiFile/out/functionsVisibleFromOtherFile.js b/k2js/translator/testFiles/multiFile/out/functionsVisibleFromOtherFile.js new file mode 100644 index 00000000000..5ac79b91c17 --- /dev/null +++ b/k2js/translator/testFiles/multiFile/out/functionsVisibleFromOtherFile.js @@ -0,0 +1,18 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(){ + { + return 3; + } +} +, box:function(){ + { + return foo.f() == 3; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/multiNamespace/out/classesInheritedFromOtherNamespace.js b/k2js/translator/testFiles/multiNamespace/out/classesInheritedFromOtherNamespace.js new file mode 100644 index 00000000000..aa747f4705c --- /dev/null +++ b/k2js/translator/testFiles/multiNamespace/out/classesInheritedFromOtherNamespace.js @@ -0,0 +1,43 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , f:function(){ + { + return 3; + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + , f:function(){ + { + return 4; + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, {initialize:function(){ + this.super_init(); + } + , f:function(){ + { + return 5; + } + } + }); + return {B:tmp$1, C:tmp$2, A:tmp$0}; +} +(); +var bar = Kotlin.Namespace.create({initialize:function(){ +} +}, {B:classes.B}); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).f() == 3 && (new bar.B).f() == 4 && (new foo.C).f() == 5; + } +} +}, {A:classes.A, C:classes.C}); +bar.initialize(); +foo.initialize(); diff --git a/k2js/translator/testFiles/multiNamespace/out/functionsVisibleFromOtherNamespace.js b/k2js/translator/testFiles/multiNamespace/out/functionsVisibleFromOtherNamespace.js new file mode 100644 index 00000000000..8c8e2df3872 --- /dev/null +++ b/k2js/translator/testFiles/multiNamespace/out/functionsVisibleFromOtherNamespace.js @@ -0,0 +1,22 @@ +var classes = function(){ + return {}; +} +(); +var bar = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(){ + { + return 3; + } +} +}, {}); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return bar.f() == 3; + } +} +}, {}); +bar.initialize(); +foo.initialize(); diff --git a/k2js/translator/testFiles/nameClashes/out/methodOverload.js b/k2js/translator/testFiles/nameClashes/out/methodOverload.js new file mode 100644 index 00000000000..f972f0f2339 --- /dev/null +++ b/k2js/translator/testFiles/nameClashes/out/methodOverload.js @@ -0,0 +1,44 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , eval_0:function(){ + { + return 3; + } + } + , eval$0:function(a){ + { + return 4; + } + } + , eval$1:function(a){ + { + return 5; + } + } + , eval$2:function(a, b){ + { + return 6; + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + if ((new foo.A).eval_0() != 3) + return false; + if ((new foo.A).eval$0(2) != 4) + return false; + if ((new foo.A).eval$1('3') != 5) + return false; + if ((new foo.A).eval$2('a', 3) != 6) + return false; + return true; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/object/out/objectDeclaration.js b/k2js/translator/testFiles/object/out/objectDeclaration.js new file mode 100644 index 00000000000..e16d8d0e494 --- /dev/null +++ b/k2js/translator/testFiles/object/out/objectDeclaration.js @@ -0,0 +1,41 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $test = Kotlin.object.create({initialize:function(){ + this.$c = 2; + this.$b = 1; + } + , get_c:function(){ + return this.$c; + } + , set_c:function(tmp$0){ + this.$c = tmp$0; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + }); +} +, get_test:function(){ + return $test; +} +, box:function(){ + { + if (foo.get_test().get_c() != 2) + return false; + if (foo.get_test().get_b() != 1) + return false; + foo.get_test().set_c(foo.get_test().get_c() + 10); + if (foo.get_test().get_c() != 12) { + return false; + } + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/object/out/objectInMethod.js b/k2js/translator/testFiles/object/out/objectInMethod.js new file mode 100644 index 00000000000..5a46d78784d --- /dev/null +++ b/k2js/translator/testFiles/object/out/objectInMethod.js @@ -0,0 +1,35 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , f:function(){ + { + var t = Kotlin.object.create({initialize:function(){ + this.$c = true; + } + , get_c:function(){ + return this.$c; + } + }); + var z = Kotlin.object.create({initialize:function(){ + this.$c = true; + } + , get_c:function(){ + return this.$c; + } + }); + return t.get_c() && z.get_c(); + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).f(); + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/object/out/objectWithMethods.js b/k2js/translator/testFiles/object/out/objectWithMethods.js new file mode 100644 index 00000000000..b3c2c9631ec --- /dev/null +++ b/k2js/translator/testFiles/object/out/objectWithMethods.js @@ -0,0 +1,35 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a = Kotlin.object.create({initialize:function(){ + } + , c:function(){ + { + return 3; + } + } + , b:function(){ + { + return 2; + } + } + }); +} +, get_a:function(){ + return $a; +} +, box:function(){ + { + if (foo.get_a().c() != 3) { + return false; + } + if (foo.get_a().b() != 2) { + return false; + } + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/binaryDivOverload.js b/k2js/translator/testFiles/operatorOverloading/out/binaryDivOverload.js new file mode 100644 index 00000000000..00416f9f4a1 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/binaryDivOverload.js @@ -0,0 +1,21 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , div:function(other){ + { + return 'hooray'; + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).div(new foo.A) == 'hooray'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/compareTo.js b/k2js/translator/testFiles/operatorOverloading/out/compareTo.js new file mode 100644 index 00000000000..f24bc38db30 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/compareTo.js @@ -0,0 +1,28 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(t){ + this.$i = t; + } + , get_i:function(){ + return this.$i; + } + , set_i:function(tmp$0){ + this.$i = tmp$0; + } + , compareTo:function(other){ + { + return this.get_i() - other.get_i(); + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A(3)).compareTo(new foo.A(2)) > 0 && (new foo.A(2)).compareTo(new foo.A(2)) >= 0 && (new foo.A(1)).compareTo(new foo.A(0)) >= 0 && (new foo.A(2)).compareTo(new foo.A(2)) <= 0 && (new foo.A(3)).compareTo(new foo.A(4)) <= 0 && (new foo.A(0)).compareTo(new foo.A(100)) < 0; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/notOverload.js b/k2js/translator/testFiles/operatorOverloading/out/notOverload.js new file mode 100644 index 00000000000..bbd924a0dde --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/notOverload.js @@ -0,0 +1,21 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , not:function(){ + { + return 'hooray'; + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).not() == 'hooray'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/operatorOverloadOnPropertyCallGetterAndSetterOnlyOnce.js b/k2js/translator/testFiles/operatorOverloading/out/operatorOverloadOnPropertyCallGetterAndSetterOnlyOnce.js new file mode 100644 index 00000000000..65c1894c232 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/operatorOverloadOnPropertyCallGetterAndSetterOnlyOnce.js @@ -0,0 +1,62 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$gc = 0; + this.$sc = 0; + this.$b = new foo.MyInt(0); + } + , get_gc:function(){ + return this.$gc; + } + , set_gc:function(tmp$0){ + this.$gc = tmp$0; + } + , get_sc:function(){ + return this.$sc; + } + , set_sc:function(tmp$0){ + this.$sc = tmp$0; + } + , get_b:function(){ + { + this.set_gc(this.get_gc() + 1); + return this.$b; + } + } + , set_b:function(a){ + { + this.set_sc(this.get_sc() + 1); + } + } + }); + var tmp$1 = Kotlin.Class.create({initialize:function(i){ + this.$b = i; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , inc:function(){ + { + this.set_b(this.get_b() + 1); + return this; + } + } + }); + return {MyInt:tmp$1, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var t = new foo.A; + var d = (tmp$0 = t.get_b() , (tmp$1 = tmp$0 , (t.set_b(tmp$0.inc()) , tmp$1))); + return t.get_sc() == 1 && t.get_gc() == 1; + } +} +}, {MyInt:classes.MyInt, A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/overloadPlusAssignArrayList.js b/k2js/translator/testFiles/operatorOverloading/out/overloadPlusAssignArrayList.js new file mode 100644 index 00000000000..7274e35e0f6 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/overloadPlusAssignArrayList.js @@ -0,0 +1,45 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$contents = new Kotlin.ArrayList; + } + , get_contents:function(){ + return this.$contents; + } + , add:function(item){ + { + this.get_contents().add(item); + } + } + , plusAssign:function(rhs){ + { + this.get_contents().addAll(rhs.get_contents()); + } + } + , get:function(index){ + { + return this.get_contents().get(index); + } + } + }); + return {ArrayWrapper:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var v1 = new foo.ArrayWrapper; + var v2 = new foo.ArrayWrapper; + v1.add('foo'); + v2.add('bar'); + v1.plusAssign(v2); + if (v1.get_contents().size() == 2) + tmp$0 = 'OK'; + else + tmp$0 = 'fail'; + return tmp$0; + } +} +}, {ArrayWrapper:classes.ArrayWrapper}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/overloadedCallOnProperty.js b/k2js/translator/testFiles/operatorOverloading/out/overloadedCallOnProperty.js new file mode 100644 index 00000000000..ebdd7877c84 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/overloadedCallOnProperty.js @@ -0,0 +1,40 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$b = 0; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , inc:function(){ + { + var res = new foo.MyInt; + res.set_b(this.get_b()); + res.set_b(res.get_b() + 1); + return res; + } + } + }); + return {MyInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a = new foo.MyInt; +} +, get_a:function(){ + return $a; +} +, set_a:function(tmp$0){ + $a = tmp$0; +} +, box:function(){ + { + foo.set_a(foo.get_a().inc()); + foo.set_a(foo.get_a().inc()); + return foo.get_a().get_b() == 2; + } +} +}, {MyInt:classes.MyInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/plusAndMinusAsAnExpression.js b/k2js/translator/testFiles/operatorOverloading/out/plusAndMinusAsAnExpression.js new file mode 100644 index 00000000000..44ffaff5163 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/plusAndMinusAsAnExpression.js @@ -0,0 +1,27 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , plus:function(){ + { + return 'hooray'; + } + } + , minus:function(){ + { + return 'not really'; + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.A; + return c.plus() + c.minus() == 'hooraynot really'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/plusAssignNoReassign.js b/k2js/translator/testFiles/operatorOverloading/out/plusAssignNoReassign.js new file mode 100644 index 00000000000..0a79624f16c --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/plusAssignNoReassign.js @@ -0,0 +1,31 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$message = ''; + } + , get_message:function(){ + return this.$message; + } + , set_message:function(tmp$0){ + this.$message = tmp$0; + } + , plusAssign:function(other){ + { + this.set_message(this.get_message() + '!'); + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.A; + c.plusAssign(new foo.A); + c.plusAssign(new foo.A); + return c.get_message() == '!!'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/plusAssignReassign.js b/k2js/translator/testFiles/operatorOverloading/out/plusAssignReassign.js new file mode 100644 index 00000000000..e144960088d --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/plusAssignReassign.js @@ -0,0 +1,46 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var A = Kotlin.Class.create({initialize:function(i){ + this.$a = i; + } + , get_a:function(){ + return this.$a; + } + , plusAssign:function(other){ + { + return new foo.A_0(this.get_a() + other.get_a()); + } + } + }); + return {A_0:A}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var c = new foo.A_0(2); + var d = c; + c = c.plusAssign(new foo.A_0(3)); + return c.get_a() == 5 && d.get_a() == 2 && d != c; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/operatorOverloading/out/plusOverload.js b/k2js/translator/testFiles/operatorOverloading/out/plusOverload.js new file mode 100644 index 00000000000..c065e779805 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/plusOverload.js @@ -0,0 +1,25 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a){ + this.$value = a; + } + , get_value:function(){ + return this.$value; + } + , plus:function(other){ + { + return new foo.myInt(this.get_value() + other.get_value()); + } + } + }); + return {myInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.myInt(3)).plus(new foo.myInt(5)).get_value() == 8; + } +} +}, {myInt:classes.myInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/postfixIncOverload.js b/k2js/translator/testFiles/operatorOverloading/out/postfixIncOverload.js new file mode 100644 index 00000000000..0240d8d94da --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/postfixIncOverload.js @@ -0,0 +1,32 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$b = 0; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , inc:function(){ + { + var res = new foo.MyInt; + res.set_b(res.get_b() + 1); + return res; + } + } + }); + return {MyInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.MyInt; + c = c.inc(); + return c.get_b() == 1; + } +} +}, {MyInt:classes.MyInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/postfixOnProperty.js b/k2js/translator/testFiles/operatorOverloading/out/postfixOnProperty.js new file mode 100644 index 00000000000..fb5239c752a --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/postfixOnProperty.js @@ -0,0 +1,39 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$b = 0; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , inc:function(){ + { + this.set_b(this.get_b() + 1); + return this; + } + } + }); + return {MyInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a = new foo.MyInt; +} +, get_a:function(){ + return $a; +} +, set_a:function(tmp$0){ + $a = tmp$0; +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var d = (tmp$0 = foo.get_a() , (tmp$1 = tmp$0 , (foo.set_a(tmp$0.inc()) , tmp$1))); + return foo.get_a().get_b() == 1 && d.get_b() == 1; + } +} +}, {MyInt:classes.MyInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/prefixDecOverload.js b/k2js/translator/testFiles/operatorOverloading/out/prefixDecOverload.js new file mode 100644 index 00000000000..5da0b86f62b --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/prefixDecOverload.js @@ -0,0 +1,32 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$b = 0; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , dec:function(){ + { + var res = new foo.MyInt; + res.set_b(res.get_b() + 1); + return res; + } + } + }); + return {MyInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.MyInt; + c = c.dec(); + return c.get_b() == 1; + } +} +}, {MyInt:classes.MyInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/prefixIncReturnsCorrectValue.js b/k2js/translator/testFiles/operatorOverloading/out/prefixIncReturnsCorrectValue.js new file mode 100644 index 00000000000..0e93cde9f2f --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/prefixIncReturnsCorrectValue.js @@ -0,0 +1,31 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$b = 0; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , dec:function(){ + { + this.set_b(this.get_b() + 1); + return this; + } + } + }); + return {MyInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.MyInt; + var d = c = c.dec(); + return c.get_b() == 1; + } +} +}, {MyInt:classes.MyInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/unaryOnIntProperty.js b/k2js/translator/testFiles/operatorOverloading/out/unaryOnIntProperty.js new file mode 100644 index 00000000000..b18b23064f2 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/unaryOnIntProperty.js @@ -0,0 +1,33 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(i){ + this.$b = i; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , inc:function(){ + { + var tmp$1; + var tmp$0; + this.set_b((tmp$0 = this.get_b() , (tmp$1 = tmp$0 , (this.set_b(tmp$0 + 1) , tmp$1)))); + return this; + } + } + }); + return {MyInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var t = new foo.MyInt(0); + t = t.inc(); + return t.get_b() == 0; + } +} +}, {MyInt:classes.MyInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/unaryOnIntProperty2.js b/k2js/translator/testFiles/operatorOverloading/out/unaryOnIntProperty2.js new file mode 100644 index 00000000000..e29c7abcd53 --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/unaryOnIntProperty2.js @@ -0,0 +1,31 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(i){ + this.$b = i; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , inc:function(){ + { + this.set_b(this.get_b() + 1); + return this; + } + } + }); + return {MyInt:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var t = new foo.MyInt(0); + t = t.inc(); + return t.get_b() == 1; + } +} +}, {MyInt:classes.MyInt}); +foo.initialize(); diff --git a/k2js/translator/testFiles/operatorOverloading/out/usingModInCaseModAssignNotAvailable.js b/k2js/translator/testFiles/operatorOverloading/out/usingModInCaseModAssignNotAvailable.js new file mode 100644 index 00000000000..5a15936649f --- /dev/null +++ b/k2js/translator/testFiles/operatorOverloading/out/usingModInCaseModAssignNotAvailable.js @@ -0,0 +1,31 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$p = 'yeah'; + } + , get_p:function(){ + return this.$p; + } + , set_p:function(tmp$0){ + this.$p = tmp$0; + } + , mod:function(other){ + { + return new foo.A; + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.A; + var d = c; + c = c.mod(new foo.A); + return c != d && c.get_p() == 'yeah'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/matchNullableType.js b/k2js/translator/testFiles/patternMatching/out/matchNullableType.js new file mode 100644 index 00000000000..9ee8d54edfb --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/matchNullableType.js @@ -0,0 +1,28 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var a = null; + for (tmp$0 = 0; tmp$0 < 2; ++tmp$0) { + if (tmp$0 == 0) + if (a == null || Kotlin.isType(a, foo.A)) { + return true; + break; + } + if (tmp$0 == 1) + return false; + } + tmp$1; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/multipleCases.js b/k2js/translator/testFiles/patternMatching/out/multipleCases.js new file mode 100644 index 00000000000..8f430ce7f24 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/multipleCases.js @@ -0,0 +1,42 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$3; + var tmp$2; + var tmp$1; + var tmp$0; + var c = 3; + var d = 5; + var z = 0; + for (tmp$0 = 0; tmp$0 < 2; ++tmp$0) { + if (tmp$0 == 0) + if (c == 5 || c == 3) { + tmp$1 = z++; + break; + } + if (tmp$0 == 1) { + tmp$1 = z = -1000; + } + } + tmp$1; + for (tmp$2 = 0; tmp$2 < 2; ++tmp$2) { + if (tmp$2 == 0) + if (d == 5 || d == 3) { + tmp$3 = z++; + break; + } + if (tmp$2 == 1) { + tmp$3 = z = -1000; + } + } + tmp$3; + return z; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenAsExpression.js b/k2js/translator/testFiles/patternMatching/out/whenAsExpression.js new file mode 100644 index 00000000000..eb5e00cc30c --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenAsExpression.js @@ -0,0 +1,29 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + for (tmp$0 = 0; tmp$0 < 3; ++tmp$0) { + if (tmp$0 == 0) + if (1 == 2) { + tmp$1 = 3; + break; + } + if (tmp$0 == 1) + if (1 == 1) { + tmp$1 = 1; + break; + } + if (tmp$0 == 2) + tmp$1 = 5; + } + return tmp$1 == 1; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenAsExpressionWithThrow.js b/k2js/translator/testFiles/patternMatching/out/whenAsExpressionWithThrow.js new file mode 100644 index 00000000000..d286fc3bc0d --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenAsExpressionWithThrow.js @@ -0,0 +1,53 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + return {}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var tmp$1; + var tmp$0; + for (tmp$0 = 0; tmp$0 < 3; ++tmp$0) { + if (tmp$0 == 0) + if (1 == 3) { + { + tmp$1 = 3; + } + break; + } + if (tmp$0 == 1) + if (1 == 1) { + { + throw new Kotlin.Exception; + } + break; + } + if (tmp$0 == 2) { + return false; + } + } + tmp$1; + return false; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/patternMatching/out/whenConditionMethodCall.js b/k2js/translator/testFiles/patternMatching/out/whenConditionMethodCall.js new file mode 100644 index 00000000000..84fcd78a049 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenConditionMethodCall.js @@ -0,0 +1,55 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + classes = function(){ + var A = Class.create({initialize:function(){ + } + , p:function(){ + return true; + } + }); + return {A:A}; + } + (); + foo = Namespace.create({initialize:function(){ + } + , box:function(){ + var a = 0; + for (var tmp$0 = 0; tmp$0 < 4; ++tmp$0) { + if (tmp$0 == 0) + if ((new foo.A).p() === true) { + a--; + break; + } + if (tmp$0 == 1) + if (new foo.A === null || isType(new foo.A, foo.A)) { + a++; + break; + } + if (tmp$0 == 2) + if (isType(new foo.A, foo.A)) { + a++; + break; + } + if (tmp$0 == 3) + a++; + } + return a === -1; + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/patternMatching/out/whenConditionPropertyAccess.js b/k2js/translator/testFiles/patternMatching/out/whenConditionPropertyAccess.js new file mode 100644 index 00000000000..4858fe61cf2 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenConditionPropertyAccess.js @@ -0,0 +1,64 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + classes = function(){ + var A = Class.create({initialize:function(){ + this.$pp = true; + } + , get_pp:function(){ + return this.$pp; + } + , p:function(){ + return true; + } + }); + return {A:A}; + } + (); + foo = Namespace.create({initialize:function(){ + } + , box:function(){ + var a = 0; + for (var tmp$0 = 0; tmp$0 < 5; ++tmp$0) { + if (tmp$0 == 0) + if ((new foo.A).get_pp() === true) { + a -= 2; + break; + } + if (tmp$0 == 1) + if ((new foo.A).p() === true) { + a--; + break; + } + if (tmp$0 == 2) + if (new foo.A === null || isType(new foo.A, foo.A)) { + a++; + break; + } + if (tmp$0 == 3) + if (isType(new foo.A, foo.A)) { + a++; + break; + } + if (tmp$0 == 4) + a++; + } + return a === -2; + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/patternMatching/out/whenExecutesOnlyOnce.js b/k2js/translator/testFiles/patternMatching/out/whenExecutesOnlyOnce.js new file mode 100644 index 00000000000..423d3d264e7 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenExecutesOnlyOnce.js @@ -0,0 +1,34 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var a = 0; + for (tmp$0 = 0; tmp$0 < 3; ++tmp$0) { + if (tmp$0 == 0) + if (Kotlin.isType(new foo.A, foo.A)) { + tmp$1 = a++; + break; + } + if (tmp$0 == 1) + if (Kotlin.isType(new foo.A, foo.A)) { + tmp$1 = a++; + break; + } + if (tmp$0 == 2) + tmp$1 = a++; + } + tmp$1; + return a == 1; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenNotType.js b/k2js/translator/testFiles/patternMatching/out/whenNotType.js new file mode 100644 index 00000000000..9e262be4d5e --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenNotType.js @@ -0,0 +1,27 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + for (tmp$0 = 0; tmp$0 < 2; ++tmp$0) { + if (tmp$0 == 0) + if (!Kotlin.isType(new foo.A, foo.A)) { + return false; + break; + } + if (tmp$0 == 1) + return true; + } + tmp$1; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenNotValue.js b/k2js/translator/testFiles/patternMatching/out/whenNotValue.js new file mode 100644 index 00000000000..456630e5ae0 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenNotValue.js @@ -0,0 +1,36 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var a = 4; + for (tmp$0 = 0; tmp$0 < 3; ++tmp$0) { + if (tmp$0 == 0) + if (!(a == 3)) { + { + tmp$1 = a = 10; + } + break; + } + if (tmp$0 == 1) + if (!(a == 4)) { + { + tmp$1 = a = 20; + } + break; + } + if (tmp$0 == 2) { + tmp$1 = a = 30; + } + } + tmp$1; + return a == 10; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenType.js b/k2js/translator/testFiles/patternMatching/out/whenType.js new file mode 100644 index 00000000000..7eb531d6102 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenType.js @@ -0,0 +1,27 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + for (tmp$0 = 0; tmp$0 < 2; ++tmp$0) { + if (tmp$0 == 0) + if (Kotlin.isType(new foo.A, foo.A)) { + return true; + break; + } + if (tmp$0 == 1) + return false; + } + tmp$1; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenValue.js b/k2js/translator/testFiles/patternMatching/out/whenValue.js new file mode 100644 index 00000000000..05092651f1e --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenValue.js @@ -0,0 +1,36 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var a = 4; + for (tmp$0 = 0; tmp$0 < 3; ++tmp$0) { + if (tmp$0 == 0) + if (a == 3) { + { + tmp$1 = a = 10; + } + break; + } + if (tmp$0 == 1) + if (a == 4) { + { + tmp$1 = a = 20; + } + break; + } + if (tmp$0 == 2) { + tmp$1 = a = 30; + } + } + tmp$1; + return a == 20; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenValueOrType.js b/k2js/translator/testFiles/patternMatching/out/whenValueOrType.js new file mode 100644 index 00000000000..bbb327f4aa9 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenValueOrType.js @@ -0,0 +1,61 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:tmp$1, B:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$3; + var tmp$2; + var tmp$1; + var tmp$0; + var c = 0; + var a = new foo.A; + var b = null; + for (tmp$0 = 0; tmp$0 < 4; ++tmp$0) { + if (tmp$0 == 0) + if (a == null) { + tmp$1 = c = 10; + break; + } + if (tmp$0 == 1) + if (Kotlin.isType(a, foo.B)) { + tmp$1 = c = 10000; + break; + } + if (tmp$0 == 2) + if (Kotlin.isType(a, foo.A)) { + tmp$1 = c = 20; + break; + } + if (tmp$0 == 3) + tmp$1 = c = 1000; + } + tmp$1; + for (tmp$2 = 0; tmp$2 < 3; ++tmp$2) { + if (tmp$2 == 0) + if (b == null) { + tmp$3 = c += 5; + break; + } + if (tmp$2 == 1) + if (Kotlin.isType(b, foo.B)) { + tmp$3 = c += 100; + break; + } + if (tmp$2 == 2) + tmp$3 = c = 1000; + } + tmp$3; + return c == 25; + } +} +}, {A:classes.A, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/patternMatching/out/whenWithIf.js b/k2js/translator/testFiles/patternMatching/out/whenWithIf.js new file mode 100644 index 00000000000..ee6705ac2f2 --- /dev/null +++ b/k2js/translator/testFiles/patternMatching/out/whenWithIf.js @@ -0,0 +1,65 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$5; + var tmp$4; + var tmp$3; + var tmp$2; + var tmp$1; + var tmp$0; + for (tmp$0 = 0; tmp$0 < 3; ++tmp$0) { + if (tmp$0 == 0) + if (3 == 3) { + tmp$1 = 1; + break; + } + if (tmp$0 == 1) + if (3 == 2) { + tmp$1 = 100; + break; + } + if (tmp$0 == 2) + tmp$1 = 100; + } + for (tmp$2 = 0; tmp$2 < 2; ++tmp$2) { + if (tmp$2 == 0) + if (2 == 1) { + tmp$3 = 100; + break; + } + if (tmp$2 == 1) + tmp$3 = 1; + } + for (tmp$4 = 0; tmp$4 < 3; ++tmp$4) { + if (tmp$4 == 0) + if (0 == 1) { + if (true) + tmp$5 = 100; + else + tmp$5 = 100; + break; + } + if (tmp$4 == 1) + if (0 == 0) { + if (false) { + tmp$5 = 100; + } + else { + tmp$5 = 1; + } + break; + } + if (tmp$4 == 2) + tmp$5 = 100; + } + var c = tmp$1 + tmp$3 + tmp$5; + return c == 3; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/accessToInstanceProperty.js b/k2js/translator/testFiles/propertyAccess/out/accessToInstanceProperty.js new file mode 100644 index 00000000000..8d9b2bc3f7b --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/accessToInstanceProperty.js @@ -0,0 +1,25 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$a = 100; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var test = new foo.Test; + test.set_a(1); + return 1 == test.get_a(); + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/classUsesNamespaceProperties.js b/k2js/translator/testFiles/propertyAccess/out/classUsesNamespaceProperties.js new file mode 100644 index 00000000000..c3da7fdc841 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/classUsesNamespaceProperties.js @@ -0,0 +1,29 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + { + foo.set_a(foo.get_a() + 1); + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a = 0; +} +, get_a:function(){ + return $a; +} +, set_a:function(tmp$0){ + $a = tmp$0; +} +, box:function(){ + { + var c = new foo.A; + c = new foo.A; + c = new foo.A; + return foo.get_a() == 3; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/customGetter.js b/k2js/translator/testFiles/propertyAccess/out/customGetter.js new file mode 100644 index 00000000000..f263f55a827 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/customGetter.js @@ -0,0 +1,22 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , get_a:function(){ + { + return 5; + } + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var test = new foo.Test; + return test.get_a() == 5; + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/customSetter.js b/k2js/translator/testFiles/propertyAccess/out/customSetter.js new file mode 100644 index 00000000000..e5a5269326c --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/customSetter.js @@ -0,0 +1,27 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$a = 5; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(b){ + { + this.$a = 3; + } + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var test = new foo.Test; + test.set_a(5); + return test.get_a() == 3; + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/extensionLiteralSafeCall.js b/k2js/translator/testFiles/propertyAccess/out/extensionLiteralSafeCall.js new file mode 100644 index 00000000000..e3ecd4951ad --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/extensionLiteralSafeCall.js @@ -0,0 +1,34 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(a, b){ + var tmp$0; + { + return tmp$0 = a , tmp$0 != null?b.call(tmp$0, 2):null; + } +} +, box:function(){ + { + var c1 = foo.f(null, function(it){ + { + return it + this; + } + } + ) != null; + if (c1) + return false; + if (foo.f(3, function(it){ + { + return it + this; + } + } + ) != 5) + return false; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/namespaceCustomAccessors.js b/k2js/translator/testFiles/propertyAccess/out/namespaceCustomAccessors.js new file mode 100644 index 00000000000..525a9937690 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/namespaceCustomAccessors.js @@ -0,0 +1,22 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, get_a:function(){ + { + return 5; + } +} +, set_a:function(b){ + { + } +} +, box:function(){ + { + return foo.get_a() == 5; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/namespacePropertyInitializer.js b/k2js/translator/testFiles/propertyAccess/out/namespacePropertyInitializer.js new file mode 100644 index 00000000000..5757786ea89 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/namespacePropertyInitializer.js @@ -0,0 +1,17 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $b = 3; +} +, get_b:function(){ + return $b; +} +, box:function(){ + { + return foo.get_b() == 3; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/namespacePropertySet.js b/k2js/translator/testFiles/propertyAccess/out/namespacePropertySet.js new file mode 100644 index 00000000000..40a57762c52 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/namespacePropertySet.js @@ -0,0 +1,21 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $b = 3; +} +, get_b:function(){ + return $b; +} +, set_b:function(tmp$0){ + $b = tmp$0; +} +, box:function(){ + { + foo.set_b(2); + return foo.get_b() == 2; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/safeAccess.js b/k2js/translator/testFiles/propertyAccess/out/safeAccess.js new file mode 100644 index 00000000000..43d695ee0a9 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/safeAccess.js @@ -0,0 +1,38 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$c = 3; + } + , get_c:function(){ + return this.$c; + } + , set_c:function(tmp$0){ + this.$c = tmp$0; + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$5; + var tmp$4; + var tmp$3; + var tmp$2; + var tmp$1; + var tmp$0; + var a1 = new foo.A; + var a2 = null; + tmp$0 = a1 , tmp$0 != null?tmp$0.set_c(4):null; + tmp$1 = a2 , tmp$1 != null?tmp$1.set_c(5):null; + if ((tmp$2 = a1 , tmp$2 != null?tmp$2.get_c():null) != 4) { + return false; + } + a2 = a1; + tmp$3 = a2 , tmp$3 != null?tmp$3.set_c(5):null; + return (tmp$4 = a2 , tmp$4 != null?tmp$4.get_c():null) == 5 && (tmp$5 = a1 , tmp$5 != null?tmp$5.get_c():null) == 5; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/safeCall.js b/k2js/translator/testFiles/propertyAccess/out/safeCall.js new file mode 100644 index 00000000000..da735328d70 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/safeCall.js @@ -0,0 +1,23 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , doSomething:function(){ + { + } + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var a = null; + tmp$0 = a , tmp$0 != null?tmp$0.doSomething():null; + return true; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/safeCallReturnsNullIfFails.js b/k2js/translator/testFiles/propertyAccess/out/safeCallReturnsNullIfFails.js new file mode 100644 index 00000000000..648f74bec77 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/safeCallReturnsNullIfFails.js @@ -0,0 +1,22 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$x = 4; + } + , get_x:function(){ + return this.$x; + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var a = null; + return (tmp$0 = a , tmp$0 != null?tmp$0.get_x():null) == null; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/safeExtensionFunctionCall.js b/k2js/translator/testFiles/propertyAccess/out/safeExtensionFunctionCall.js new file mode 100644 index 00000000000..569d3798417 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/safeExtensionFunctionCall.js @@ -0,0 +1,59 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$c = 3; + } + , get_c:function(){ + return this.$c; + } + , set_c:function(tmp$0){ + this.$c = tmp$0; + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, i:function(receiver){ + { + receiver.set_c(receiver.get_c() + 1); + return receiver.get_c(); + } +} +, box:function(){ + { + var tmp$7; + var tmp$6; + var tmp$5; + var tmp$4; + var tmp$3; + var tmp$2; + var tmp$1; + var tmp$0; + var a1 = new foo.A; + var a2 = null; + if ((tmp$0 = a1 , tmp$0 != null?foo.i(tmp$0):null) != 4) { + return '1'; + } + if ((tmp$1 = a1 , tmp$1 != null?tmp$1.get_c():null) != 4) { + return '2'; + } + if ((tmp$2 = a2 , tmp$2 != null?tmp$2.get_c():null) != null) { + return '3'; + } + tmp$3 = a2 , tmp$3 != null?foo.i(tmp$3):null; + if ((tmp$4 = a1 , tmp$4 != null?tmp$4.get_c():null) != 4) { + return '4'; + } + a2 = a1; + if ((tmp$5 = a2 , tmp$5 != null?foo.i(tmp$5):null) != 5) { + return '5'; + } + if ((tmp$6 = a2 , tmp$6 != null?foo.i(tmp$6):null) != 6 || (tmp$7 = a1 , tmp$7 != null?tmp$7.get_c():null) != 6) { + return '6'; + } + return 'OK'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/setter.js b/k2js/translator/testFiles/propertyAccess/out/setter.js new file mode 100644 index 00000000000..0cb88d5af83 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/setter.js @@ -0,0 +1,26 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$a = 1; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(){ + { + var a = new foo.Test; + var b = new foo.Test; + b.set_a(100); + return b.get_a() - a.get_a(); + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/propertyAccess/out/twoClassesWithProperties.js b/k2js/translator/testFiles/propertyAccess/out/twoClassesWithProperties.js new file mode 100644 index 00000000000..68855d8b249 --- /dev/null +++ b/k2js/translator/testFiles/propertyAccess/out/twoClassesWithProperties.js @@ -0,0 +1,27 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$b = 2; + } + , get_b:function(){ + return this.$b; + } + }); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + this.$a = 1; + } + , get_a:function(){ + return this.$a; + } + }); + return {A:tmp$1, B:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).get_a() == 1 && (new foo.B).get_b() == 2; + } +} +}, {A:classes.A, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/range/out/explicitRange.js b/k2js/translator/testFiles/range/out/explicitRange.js new file mode 100644 index 00000000000..f8b1ce2d2f3 --- /dev/null +++ b/k2js/translator/testFiles/range/out/explicitRange.js @@ -0,0 +1,64 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var oneToFive = new Kotlin.NumberRange(1, 4); + if (oneToFive.contains(5)) + return false; + if (oneToFive.contains(0)) + return false; + if (oneToFive.contains(-100)) + return false; + if (oneToFive.contains(10)) + return false; + if (!oneToFive.contains(1)) + return false; + if (!oneToFive.contains(2)) + return false; + if (!oneToFive.contains(3)) + return false; + if (!oneToFive.contains(4)) + return false; + if (!(oneToFive.get_start() == 1)) + return false; + if (!(oneToFive.get_size() == 4)) + return false; + if (!(oneToFive.get_end() == 4)) + return false; + var sum = 0; + { + tmp$0 = oneToFive.iterator(); + while (tmp$0.hasNext()) { + var i = tmp$0.next(); + { + sum += i; + } + } + } + { + tmp$1 = oneToFive.iterator(); + while (tmp$1.hasNext()) { + var i$0 = tmp$1.next(); + { + Kotlin.print(i$0); + } + } + } + if (sum != 10) + return false; + return true; + } +} +, main:function(){ + { + foo.box(); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/range/out/intInRange.js b/k2js/translator/testFiles/range/out/intInRange.js new file mode 100644 index 00000000000..cd95b4c3ae4 --- /dev/null +++ b/k2js/translator/testFiles/range/out/intInRange.js @@ -0,0 +1,28 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + if ((new Kotlin.NumberRange(-2, 0 - -2 + 1, false)).contains(1)) + return false; + if ((new Kotlin.NumberRange(-10, -4 - -10 + 1, false)).contains(1)) + return false; + if (!(new Kotlin.NumberRange(0, 2 - 0 + 1, false)).contains(1)) + return false; + if (!(new Kotlin.NumberRange(1, 2 - 1 + 1, false)).contains(1)) + return false; + if (!(new Kotlin.NumberRange(-2, 5 - -2 + 1, false)).contains(1)) + return false; + return true; + } +} +, main:function(){ + { + foo.box(); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/range/out/rangeSugarSyntax.js b/k2js/translator/testFiles/range/out/rangeSugarSyntax.js new file mode 100644 index 00000000000..82a33ddf974 --- /dev/null +++ b/k2js/translator/testFiles/range/out/rangeSugarSyntax.js @@ -0,0 +1,64 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$1; + var tmp$0; + var oneToFive = new Kotlin.NumberRange(1, 5 - 1 + 1, false); + if (!oneToFive.contains(5)) + return false; + if (oneToFive.contains(0)) + return false; + if (oneToFive.contains(-100)) + return false; + if (oneToFive.contains(10)) + return false; + if (!oneToFive.contains(1)) + return false; + if (!oneToFive.contains(2)) + return false; + if (!oneToFive.contains(3)) + return false; + if (!oneToFive.contains(4)) + return false; + if (!(oneToFive.get_start() == 1)) + return false; + if (!(oneToFive.get_size() == 5)) + return false; + if (!(oneToFive.get_end() == 5)) + return false; + var sum = 0; + { + tmp$0 = oneToFive.iterator(); + while (tmp$0.hasNext()) { + var i = tmp$0.next(); + { + sum += i; + } + } + } + { + tmp$1 = oneToFive.iterator(); + while (tmp$1.hasNext()) { + var i$0 = tmp$1.next(); + { + Kotlin.print(i$0); + } + } + } + if (sum != 15) + return false; + return true; + } +} +, main:function(){ + { + foo.box(); + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/rtti/out/isSameClass.js b/k2js/translator/testFiles/rtti/out/isSameClass.js new file mode 100644 index 00000000000..49e783c2e09 --- /dev/null +++ b/k2js/translator/testFiles/rtti/out/isSameClass.js @@ -0,0 +1,16 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return Kotlin.isType(new foo.A, foo.A); + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/rtti/out/notIsOtherClass.js b/k2js/translator/testFiles/rtti/out/notIsOtherClass.js new file mode 100644 index 00000000000..efef11b862a --- /dev/null +++ b/k2js/translator/testFiles/rtti/out/notIsOtherClass.js @@ -0,0 +1,20 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.super_init(); + } + }); + return {B:tmp$1, A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return !Kotlin.isType(new foo.A, foo.B); + } +} +}, {A:classes.A, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/assign.js b/k2js/translator/testFiles/simple/out/assign.js new file mode 100644 index 00000000000..416787d1404 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/assign.js @@ -0,0 +1,20 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, f:function(){ + { + var x = 1; + x = x + 1; + return x; + } +} +, box:function(){ + { + return foo.f() == 2; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/breakDoWhile.js b/k2js/translator/testFiles/simple/out/breakDoWhile.js new file mode 100644 index 00000000000..56b982aaab4 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/breakDoWhile.js @@ -0,0 +1,21 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var i = 0; + do { + if (i == 3) { + break; + } + ++i; + } + while (i < 100); + return i == 3; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/breakWhile.js b/k2js/translator/testFiles/simple/out/breakWhile.js new file mode 100644 index 00000000000..213bc236cf6 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/breakWhile.js @@ -0,0 +1,20 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var i = 0; + while (i < 100) { + if (i == 3) { + break; + } + ++i; + } + return i == 3; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/classInstantiation.js b/k2js/translator/testFiles/simple/out/classInstantiation.js new file mode 100644 index 00000000000..f9ebcc419bb --- /dev/null +++ b/k2js/translator/testFiles/simple/out/classInstantiation.js @@ -0,0 +1,17 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var test = new foo.Test; + return true; + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/classWithoutNamespace.js b/k2js/translator/testFiles/simple/out/classWithoutNamespace.js new file mode 100644 index 00000000000..242b1592988 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/classWithoutNamespace.js @@ -0,0 +1,44 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var A = Kotlin.Class.create({initialize:function(a){ + this.$a = a; + { + this.$a = 3; + } + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {A_0:A}; + } + (); + var Anonymous = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + return (new Anonymous.A_0(1)).get_a() == 3; + } + } + }, classes); + Anonymous.initialize(); +} diff --git a/k2js/translator/testFiles/simple/out/comparison.js b/k2js/translator/testFiles/simple/out/comparison.js new file mode 100644 index 00000000000..fd337227ea2 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/comparison.js @@ -0,0 +1,16 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 2; + var b = 3; + var c = 4; + return a < c; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/complexExpressionAsConstructorParameter.js b/k2js/translator/testFiles/simple/out/complexExpressionAsConstructorParameter.js new file mode 100644 index 00000000000..909a229c79a --- /dev/null +++ b/k2js/translator/testFiles/simple/out/complexExpressionAsConstructorParameter.js @@ -0,0 +1,25 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a, b){ + this.$c = a; + this.$d = b; + } + , get_c:function(){ + return this.$c; + } + , get_d:function(){ + return this.$d; + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var test = new foo.Test(1 + 6 * 3, 10 % 2); + return test.get_c() == 19 && test.get_d() == 0; + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/constructorWithParameter.js b/k2js/translator/testFiles/simple/out/constructorWithParameter.js new file mode 100644 index 00000000000..d0c99147507 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/constructorWithParameter.js @@ -0,0 +1,21 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(a){ + this.$b = a; + } + , get_b:function(){ + return this.$b; + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var test = new foo.Test(1); + return test.get_b() == 1; + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/constructorWithPropertiesAsParameters.js b/k2js/translator/testFiles/simple/out/constructorWithPropertiesAsParameters.js new file mode 100644 index 00000000000..e51d0aca80a --- /dev/null +++ b/k2js/translator/testFiles/simple/out/constructorWithPropertiesAsParameters.js @@ -0,0 +1,33 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(b, a){ + this.$b = b; + this.$a = a; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.A(1, '1'); + c.set_b(2); + c.set_a('2'); + return c.get_b() == 2 && c.get_a() == '2'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/continueDoWhile.js b/k2js/translator/testFiles/simple/out/continueDoWhile.js new file mode 100644 index 00000000000..abdae966bc8 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/continueDoWhile.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var i = 0; + var b = true; + do { + ++i; + if (i >= 1) { + continue; + } + b = false; + } + while (i < 100); + return b; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/continueWhile.js b/k2js/translator/testFiles/simple/out/continueWhile.js new file mode 100644 index 00000000000..ca15d004494 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/continueWhile.js @@ -0,0 +1,22 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var i = 0; + var b = true; + while (i < 100) { + ++i; + if (i >= 1) { + continue; + } + b = false; + } + return b; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/doWhile.js b/k2js/translator/testFiles/simple/out/doWhile.js new file mode 100644 index 00000000000..da5e41fac0a --- /dev/null +++ b/k2js/translator/testFiles/simple/out/doWhile.js @@ -0,0 +1,24 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 50; + var b = 0; + var c = 0; + do { + b = b + 1; + c = c + 2; + } + while (b < a); + if (c == 100) { + return true; + } + return false; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/doWhile2.js b/k2js/translator/testFiles/simple/out/doWhile2.js new file mode 100644 index 00000000000..578bae85dc5 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/doWhile2.js @@ -0,0 +1,21 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var x = 2; + do { + x = 1; + } + while (3 < 2); + if (x == 1) { + return true; + } + return false; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/elseif.js b/k2js/translator/testFiles/simple/out/elseif.js new file mode 100644 index 00000000000..73f3b1767b8 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/elseif.js @@ -0,0 +1,32 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, bor:function(){ + { + var a = 2; + var b = 3; + var c = 4; + if (a < 2) { + return a; + } + else if (a > 2) { + return b; + } + else if (a == c) { + return c; + } + else { + return 5; + } + } +} +, box:function(){ + { + return foo.bor() == 5; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/if.js b/k2js/translator/testFiles/simple/out/if.js new file mode 100644 index 00000000000..b8dff315748 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/if.js @@ -0,0 +1,32 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, bol:function(){ + { + var a = 2; + var b = 3; + var c = 4; + if (a < 2) { + return a; + } + if (a > 2) { + return b; + } + if (a == c) { + return c; + } + else { + return 5; + } + } +} +, box:function(){ + { + return foo.bol() == 5; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/ifElseAsExpression.js b/k2js/translator/testFiles/simple/out/ifElseAsExpression.js new file mode 100644 index 00000000000..63d360dbe96 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/ifElseAsExpression.js @@ -0,0 +1,19 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var tmp$0; + var a = 2; + if (a == 2) + tmp$0 = true; + else + tmp$0 = false; + return tmp$0; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/incrementProperty.js b/k2js/translator/testFiles/simple/out/incrementProperty.js new file mode 100644 index 00000000000..4d85dc808ed --- /dev/null +++ b/k2js/translator/testFiles/simple/out/incrementProperty.js @@ -0,0 +1,53 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var Slot = Kotlin.Class.create({initialize:function(){ + this.$vitality = 10000; + } + , get_vitality:function(){ + return this.$vitality; + } + , set_vitality:function(tmp$0){ + this.$vitality = tmp$0; + } + , increaseVitality:function(delta){ + { + this.set_vitality(this.get_vitality() + delta); + if (this.get_vitality() > 65535) + this.set_vitality(65535); + } + } + }); + return {Slot_0:Slot}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , box:function(){ + { + var s = new foo.Slot_0; + s.increaseVitality(1000); + if (s.get_vitality() == 11000) + return 'OK'; + else + return 'fail'; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/simple/out/methodDeclarationAndCall.js b/k2js/translator/testFiles/simple/out/methodDeclarationAndCall.js new file mode 100644 index 00000000000..353a88b0c12 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/methodDeclarationAndCall.js @@ -0,0 +1,22 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + , method:function(){ + { + return true; + } + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var test = new foo.Test; + return test.method(); + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/minusAssignOnProperty.js b/k2js/translator/testFiles/simple/out/minusAssignOnProperty.js new file mode 100644 index 00000000000..97e3dffbce7 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/minusAssignOnProperty.js @@ -0,0 +1,21 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a = 3; +} +, get_a:function(){ + return $a; +} +, set_a:function(tmp$0){ + $a = tmp$0; +} +, box:function(){ + { + foo.set_a(foo.get_a() - 10); + return foo.get_a() == -7; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/notBoolean.js b/k2js/translator/testFiles/simple/out/notBoolean.js new file mode 100644 index 00000000000..a934a99a47c --- /dev/null +++ b/k2js/translator/testFiles/simple/out/notBoolean.js @@ -0,0 +1,13 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return !false; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/plusAssign.js b/k2js/translator/testFiles/simple/out/plusAssign.js new file mode 100644 index 00000000000..83578625982 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/plusAssign.js @@ -0,0 +1,15 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 3; + a += 3; + return a == 6; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/positiveAndNegativeNumbers.js b/k2js/translator/testFiles/simple/out/positiveAndNegativeNumbers.js new file mode 100644 index 00000000000..16bf1868b08 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/positiveAndNegativeNumbers.js @@ -0,0 +1,15 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var b = -3; + var c = +3; + return c - b == 6; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/postfixIntOperations.js b/k2js/translator/testFiles/simple/out/postfixIntOperations.js new file mode 100644 index 00000000000..2f52c957222 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/postfixIntOperations.js @@ -0,0 +1,17 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 3; + var b = a++; + a--; + a--; + return a++ == 2 && b == 3; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/prefixIntOperations.js b/k2js/translator/testFiles/simple/out/prefixIntOperations.js new file mode 100644 index 00000000000..8f87479021c --- /dev/null +++ b/k2js/translator/testFiles/simple/out/prefixIntOperations.js @@ -0,0 +1,17 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 3; + var b = ++a; + --a; + --a; + return --a == 1 && b == 4; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/propertiesAsParametersInitialized.js b/k2js/translator/testFiles/simple/out/propertiesAsParametersInitialized.js new file mode 100644 index 00000000000..3f128259e5e --- /dev/null +++ b/k2js/translator/testFiles/simple/out/propertiesAsParametersInitialized.js @@ -0,0 +1,31 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(b, a){ + this.$b = b; + this.$a = a; + } + , get_b:function(){ + return this.$b; + } + , set_b:function(tmp$0){ + this.$b = tmp$0; + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.A(2, '2'); + return c.get_b() == 2 && c.get_a() == '2'; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/propertyAccess.js b/k2js/translator/testFiles/simple/out/propertyAccess.js new file mode 100644 index 00000000000..dc7a1bc3821 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/propertyAccess.js @@ -0,0 +1,20 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + this.$p = true; + } + , get_p:function(){ + return this.$p; + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.Test).get_p(); + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/simpleInitializer.js b/k2js/translator/testFiles/simple/out/simpleInitializer.js new file mode 100644 index 00000000000..2091bb6a518 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/simpleInitializer.js @@ -0,0 +1,25 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + { + this.$a = 3; + } + } + , get_a:function(){ + return this.$a; + } + , set_a:function(tmp$0){ + this.$a = tmp$0; + } + }); + return {Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.Test).get_a() == 3; + } +} +}, {Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/while.js b/k2js/translator/testFiles/simple/out/while.js new file mode 100644 index 00000000000..14cdde6050e --- /dev/null +++ b/k2js/translator/testFiles/simple/out/while.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = 50; + var b = 0; + var c = 0; + while (b < a) { + b = b + 1; + c = c + 2; + } + if (c == 100) { + return true; + } + return false; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/simple/out/while2.js b/k2js/translator/testFiles/simple/out/while2.js new file mode 100644 index 00000000000..7a5a2ec03a5 --- /dev/null +++ b/k2js/translator/testFiles/simple/out/while2.js @@ -0,0 +1,16 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + while (2 < 1) { + return false; + } + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/standardClasses/out/array.js b/k2js/translator/testFiles/standardClasses/out/array.js new file mode 100644 index 00000000000..e68d18c7ed5 --- /dev/null +++ b/k2js/translator/testFiles/standardClasses/out/array.js @@ -0,0 +1,15 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = Kotlin.nullArray(2); + a[1] = 2; + return a[1] == 2; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/standardClasses/out/arrayAccess.js b/k2js/translator/testFiles/standardClasses/out/arrayAccess.js new file mode 100644 index 00000000000..7abaf28ce59 --- /dev/null +++ b/k2js/translator/testFiles/standardClasses/out/arrayAccess.js @@ -0,0 +1,16 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = Kotlin.nullArray(4); + a[1] = 2; + a[2] = 3; + return a[1] == 2 && a[2] == 3; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/standardClasses/out/arrayFunctionConstructor.js b/k2js/translator/testFiles/standardClasses/out/arrayFunctionConstructor.js new file mode 100644 index 00000000000..614d109a2a2 --- /dev/null +++ b/k2js/translator/testFiles/standardClasses/out/arrayFunctionConstructor.js @@ -0,0 +1,26 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $f = function(i){ + { + return i + 1; + } + } + ; + $a = Kotlin.arrayFromFun(3, foo.get_f()); +} +, get_f:function(){ + return $f; +} +, get_a:function(){ + return $a; +} +, box:function(){ + { + return foo.get_a()[0] == 1 && foo.get_a()[2] == 3 && foo.get_a()[1] == 2; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/standardClasses/out/arrayIsFilledWithNulls.js b/k2js/translator/testFiles/standardClasses/out/arrayIsFilledWithNulls.js new file mode 100644 index 00000000000..9610d162169 --- /dev/null +++ b/k2js/translator/testFiles/standardClasses/out/arrayIsFilledWithNulls.js @@ -0,0 +1,17 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a = Kotlin.nullArray(3); +} +, get_a:function(){ + return $a; +} +, box:function(){ + { + return foo.get_a()[0] == null && foo.get_a()[1] == null && foo.get_a()[2] == null; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/standardClasses/out/arraySize.js b/k2js/translator/testFiles/standardClasses/out/arraySize.js new file mode 100644 index 00000000000..7bc3ad15e1f --- /dev/null +++ b/k2js/translator/testFiles/standardClasses/out/arraySize.js @@ -0,0 +1,24 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a1 = Kotlin.nullArray(3); + $a2 = Kotlin.nullArray(2); +} +, get_a1:function(){ + return $a1; +} +, get_a2:function(){ + return $a2; +} +, box:function(){ + { + return foo.get_a1().length == 3 && foo.get_a2().length == 2; + } +} +}, {A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/standardClasses/out/arrayThrowsExceptionOnOOBaccess.js b/k2js/translator/testFiles/standardClasses/out/arrayThrowsExceptionOnOOBaccess.js new file mode 100644 index 00000000000..b4163175e13 --- /dev/null +++ b/k2js/translator/testFiles/standardClasses/out/arrayThrowsExceptionOnOOBaccess.js @@ -0,0 +1,42 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var A_0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {A:A_0}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + foo.$a1 = Kotlin.nullArray(3); + foo.$a2 = Kotlin.nullArray(2); + } + , get_a1:function(){ + return foo.$a1; + } + , get_a2:function(){ + return foo.$a2; + } + , box:function(){ + { + return foo.get_a1()[4] == null; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/standardClasses/out/arraysIterator.js b/k2js/translator/testFiles/standardClasses/out/arraysIterator.js new file mode 100644 index 00000000000..888dff625fa --- /dev/null +++ b/k2js/translator/testFiles/standardClasses/out/arraysIterator.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ + $a1 = Kotlin.arrayFromFun(3, function(i){ + { + return i; + } + } + ); +} +, get_a1:function(){ + return $a1; +} +, box:function(){ + { + var i = Kotlin.arrayIterator(foo.get_a1()); + return i.get_hasNext() == true && i.next() == 0 && i.get_hasNext() == true && i.next() == 1 && i.get_hasNext() == true && i.next() == 2 && i.get_hasNext() == false; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/stdlib/out/Filter.js b/k2js/translator/testFiles/stdlib/out/Filter.js new file mode 100644 index 00000000000..ca21a4ddd59 --- /dev/null +++ b/k2js/translator/testFiles/stdlib/out/Filter.js @@ -0,0 +1,112 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +{ + var classes = function(){ + var FilterIterator_0 = Kotlin.Class.create(Kotlin.ArrayIterator, {initialize:function(original, filter_0){ + this.$original = original; + this.$filter = filter_0; + this.$state = 0; + this.$nextElement = null; + } + , get_original:function(){ + return this.$original; + } + , get_filter:function(){ + return this.$filter; + } + , get_state:function(){ + return this.$state; + } + , set_state:function(tmp$0){ + this.$state = tmp$0; + } + , get_nextElement:function(){ + return this.$nextElement; + } + , set_nextElement:function(tmp$0){ + this.$nextElement = tmp$0; + } + , get_hasNext:function(){ + { + var tmp$1; + var tmp$0; + if (this.get_state() == 1) { + return true; + } + tmp$0; + if (this.get_state() == 2) { + return false; + } + tmp$1; + while (this.get_original().get_hasNext()) { + var tmp$2; + var candidate = this.get_original().next(); + if (this.get_filter()(candidate)) { + this.set_nextElement(candidate); + this.set_state(1); + return true; + } + tmp$2; + } + this.set_state(2); + return false; + } + } + , next:function(){ + { + var res = this.get_nextElement(); + this.set_nextElement(null); + this.set_state(0); + return res; + } + } + }); + var NoSuchElementException_0 = Kotlin.Class.create(Kotlin.Exception, {initialize:function(){ + this.super_init(); + } + }); + return {NoSuchElementException:NoSuchElementException_0, FilterIterator:FilterIterator_0}; + } + (); + var foo = Kotlin.Namespace.create({initialize:function(){ + } + , filter:function(receiver, f){ + { + return new foo.FilterIterator(receiver, f); + } + } + , filterTo:function(receiver, container, filter){ + { + var tmp$0; + { + tmp$0 = receiver.iterator(); + while (tmp$0.hasNext()) { + var element = tmp$0.next(); + { + var tmp$1; + if (filter(element)) + tmp$1 = container.add(element); + tmp$1; + } + } + } + return container; + } + } + }, classes); + foo.initialize(); +} diff --git a/k2js/translator/testFiles/trait/out/classDerivesFromClassAndTrait.js b/k2js/translator/testFiles/trait/out/classDerivesFromClassAndTrait.js new file mode 100644 index 00000000000..ffaf47a86f1 --- /dev/null +++ b/k2js/translator/testFiles/trait/out/classDerivesFromClassAndTrait.js @@ -0,0 +1,35 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({addFoo:function(s){ + { + return s + 'FOO'; + } + } + }); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + this.$value = 'BAR'; + } + , get_value:function(){ + return this.$value; + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + , eval_0:function(){ + { + return this.addFoo(this.get_value()); + } + } + }); + return {A:tmp$1, B:tmp$2, Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.B).eval_0() == 'BARFOO'; + } +} +}, {A:classes.A, Test:classes.Test, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/trait/out/classDerivesFromTraitAndClass.js b/k2js/translator/testFiles/trait/out/classDerivesFromTraitAndClass.js new file mode 100644 index 00000000000..ffaf47a86f1 --- /dev/null +++ b/k2js/translator/testFiles/trait/out/classDerivesFromTraitAndClass.js @@ -0,0 +1,35 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({addFoo:function(s){ + { + return s + 'FOO'; + } + } + }); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + this.$value = 'BAR'; + } + , get_value:function(){ + return this.$value; + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + , eval_0:function(){ + { + return this.addFoo(this.get_value()); + } + } + }); + return {A:tmp$1, B:tmp$2, Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.B).eval_0() == 'BARFOO'; + } +} +}, {A:classes.A, Test:classes.Test, B:classes.B}); +foo.initialize(); diff --git a/k2js/translator/testFiles/trait/out/definitionOrder.js b/k2js/translator/testFiles/trait/out/definitionOrder.js new file mode 100644 index 00000000000..4a4195af228 --- /dev/null +++ b/k2js/translator/testFiles/trait/out/definitionOrder.js @@ -0,0 +1,60 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({bar:function(){ + { + return 'F'; + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.$order = ''; + { + this.set_order(this.get_order() + 'A'); + } + } + , get_order:function(){ + return this.$order; + } + , set_order:function(tmp$0){ + this.$order = tmp$0; + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'B'); + } + } + }); + var tmp$3 = Kotlin.Class.create(tmp$2, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'D'); + } + } + }); + var tmp$4 = Kotlin.Class.create(tmp$2, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'C'); + } + } + }); + var tmp$5 = Kotlin.Class.create(tmp$1, {initialize:function(){ + this.super_init(); + { + this.set_order(this.get_order() + 'E'); + } + } + }); + return {E:tmp$5, A:tmp$1, B:tmp$2, D:tmp$3, C:tmp$4, F:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.C).get_order() == 'ABC' && (new foo.D).get_order() == 'ABD' && (new foo.E).get_order() == 'AE' && (new foo.C).bar() == 'F' && (new foo.A).bar() == 'F'; + } +} +}, {C:classes.C, D:classes.D, E:classes.E, B:classes.B, A:classes.A, F:classes.F}); +foo.initialize(); diff --git a/k2js/translator/testFiles/trait/out/example.js b/k2js/translator/testFiles/trait/out/example.js new file mode 100644 index 00000000000..702a021cb6b --- /dev/null +++ b/k2js/translator/testFiles/trait/out/example.js @@ -0,0 +1,23 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({get:function(index){ + { + return null; + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + } + }); + return {SmartArrayList:tmp$1, AL:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var c = new foo.SmartArrayList; + return null == c.get(0); + } +} +}, {AL:classes.AL, SmartArrayList:classes.SmartArrayList}); +foo.initialize(); diff --git a/k2js/translator/testFiles/trait/out/funDelegation.js b/k2js/translator/testFiles/trait/out/funDelegation.js new file mode 100644 index 00000000000..e9934a9c8cb --- /dev/null +++ b/k2js/translator/testFiles/trait/out/funDelegation.js @@ -0,0 +1,41 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({}); + var tmp$1 = Kotlin.Class.create({initialize:function(){ + } + , n_0:function(n){ + { + return n + 1; + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + }); + var tmp$3 = Kotlin.Class.create(tmp$1, tmp$0, {initialize:function(){ + this.super_init(); + } + }); + return {Base:tmp$1, Derived2:tmp$2, Derived1:tmp$3, Abstract:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, test:function(s){ + { + return s.n_0(238) == 239; + } +} +, box:function(){ + { + if (!foo.test(new foo.Base)) + return 'Fail #1'; + if (!foo.test(new foo.Derived1)) + return 'Fail #2'; + if (!foo.test(new foo.Derived2)) + return 'Fail #3'; + return 'OK'; + } +} +}, {Base:classes.Base, Abstract:classes.Abstract, Derived1:classes.Derived1, Derived2:classes.Derived2}); +foo.initialize(); diff --git a/k2js/translator/testFiles/trait/out/traitAddsFunctionsToClass.js b/k2js/translator/testFiles/trait/out/traitAddsFunctionsToClass.js new file mode 100644 index 00000000000..e870e397b35 --- /dev/null +++ b/k2js/translator/testFiles/trait/out/traitAddsFunctionsToClass.js @@ -0,0 +1,36 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({addFoo:function(s){ + { + return s + 'FOO'; + } + } + , addBar:function(s){ + { + return s + 'BAR'; + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(){ + this.$string = 'TEST'; + } + , get_string:function(){ + return this.$string; + } + , value:function(){ + { + return this.addBar(this.addFoo(this.get_string())); + } + } + }); + return {A:tmp$1, Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).value() == 'TESTFOOBAR'; + } +} +}, {Test:classes.Test, A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/trait/out/traitCompiles.js b/k2js/translator/testFiles/trait/out/traitCompiles.js new file mode 100644 index 00000000000..47746920a24 --- /dev/null +++ b/k2js/translator/testFiles/trait/out/traitCompiles.js @@ -0,0 +1,28 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +foo = {}; +(function(foo){ + foo.Test = {addFoo:function(s){ + return s + 'FOO'; + } + }; + foo.box = function(){ + return true; + } + ; +} +(foo)); diff --git a/k2js/translator/testFiles/trait/out/traitExtendsTrait.js b/k2js/translator/testFiles/trait/out/traitExtendsTrait.js new file mode 100644 index 00000000000..c496e4c9d35 --- /dev/null +++ b/k2js/translator/testFiles/trait/out/traitExtendsTrait.js @@ -0,0 +1,33 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({addFoo:function(s){ + { + return s + 'FOO'; + } + } + }); + var tmp$1 = Kotlin.Trait.create(tmp$0, {hooray:function(){ + { + return 'hooray'; + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, {initialize:function(){ + } + , eval_0:function(){ + { + return this.addFoo(this.hooray()); + } + } + }); + return {ExtendedTest:tmp$1, A:tmp$2, Test:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.A).eval_0() == 'hoorayFOO'; + } +} +}, {Test:classes.Test, ExtendedTest:classes.ExtendedTest, A:classes.A}); +foo.initialize(); diff --git a/k2js/translator/testFiles/trait/out/traitExtendsTwoTraits.js b/k2js/translator/testFiles/trait/out/traitExtendsTwoTraits.js new file mode 100644 index 00000000000..2f89a3707a9 --- /dev/null +++ b/k2js/translator/testFiles/trait/out/traitExtendsTwoTraits.js @@ -0,0 +1,34 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({hooray:function(){ + { + return 'hooray'; + } + } + }); + var tmp$1 = Kotlin.Trait.create({addFoo:function(s){ + { + return s + 'FOO'; + } + } + }); + var tmp$2 = Kotlin.Trait.create(tmp$1, tmp$0, {}); + var tmp$3 = Kotlin.Class.create(tmp$2, {initialize:function(){ + } + , eval_0:function(){ + { + return this.addFoo(this.hooray()); + } + } + }); + return {A:tmp$1, AD:tmp$2, Test:tmp$3, B:tmp$0}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + return (new foo.Test).eval_0() == 'hoorayFOO'; + } +} +}, {A:classes.A, B:classes.B, AD:classes.AD, Test:classes.Test}); +foo.initialize(); diff --git a/k2js/translator/testFiles/tuple/out/multipleMembers.js b/k2js/translator/testFiles/tuple/out/multipleMembers.js new file mode 100644 index 00000000000..529c4a88207 --- /dev/null +++ b/k2js/translator/testFiles/tuple/out/multipleMembers.js @@ -0,0 +1,32 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + if ([1, 2, 3][0] != 1) + return false; + if (['a', 'b'][1] != 'b') + return false; + var x = ['1', 2, '3', 4, '5', 6]; + if (x[0] != '1') + return false; + if (x[1] != 2) + return false; + if (x[1] != 2) + return false; + if (x[5] != 6) + return false; + if (x[4] != '5') + return false; + if (x[2] != '3') + return false; + if ([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1][20] != 1) + return false; + return true; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/tuple/out/twoElements.js b/k2js/translator/testFiles/tuple/out/twoElements.js new file mode 100644 index 00000000000..1b26229d993 --- /dev/null +++ b/k2js/translator/testFiles/tuple/out/twoElements.js @@ -0,0 +1,14 @@ +var classes = function(){ + return {}; +} +(); +var foo = Kotlin.Namespace.create({initialize:function(){ +} +, box:function(){ + { + var a = [1, 2]; + return a[0] == 1 && a[1] == 2; + } +} +}, {}); +foo.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/forLoop.js b/k2js/translator/testFiles/webDemoExamples1/out/forLoop.js new file mode 100644 index 00000000000..39a2a383097 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/forLoop.js @@ -0,0 +1,33 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + var tmp$1; + var tmp$0; + { + tmp$0 = Kotlin.arrayIterator(args); + while (tmp$0.hasNext()) { + var arg = tmp$0.next(); + { + Kotlin.println(arg); + } + } + } + Kotlin.println(); + { + tmp$1 = Kotlin.arrayIndices(args).iterator(); + while (tmp$1.hasNext()) { + var i = tmp$1.next(); + { + Kotlin.println(args[i]); + } + } + } + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/ifAsExpression.js b/k2js/translator/testFiles/webDemoExamples1/out/ifAsExpression.js new file mode 100644 index 00000000000..49eb815c788 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/ifAsExpression.js @@ -0,0 +1,23 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + Kotlin.println(Anonymous.max(Kotlin.parseInt(args[0]), Kotlin.parseInt(args[1]))); + } +} +, max:function(a, b){ + var tmp$0; + if (a > b) + tmp$0 = a; + else + tmp$0 = b; + { + return tmp$0; + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/isCheck.js b/k2js/translator/testFiles/webDemoExamples1/out/isCheck.js new file mode 100644 index 00000000000..44a9c6bbb3e --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/isCheck.js @@ -0,0 +1,21 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + Kotlin.println(Anonymous.getStringLength('aaa')); + Kotlin.println(Anonymous.getStringLength(1)); + } +} +, getStringLength:function(obj){ + { + if (typeof obj == 'string') + return obj.length; + return null; + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/multiLanguageHello.js b/k2js/translator/testFiles/webDemoExamples1/out/multiLanguageHello.js new file mode 100644 index 00000000000..e25cab11cc3 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/multiLanguageHello.js @@ -0,0 +1,40 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + var tmp$2; + var tmp$1; + var tmp$0; + if (args.length == 0) + tmp$0 = 'EN'; + else + tmp$0 = args[0]; + var language = tmp$0; + for (tmp$1 = 0; tmp$1 < 4; ++tmp$1) { + if (tmp$1 == 0) + if (language == 'EN') { + tmp$2 = 'Hello!'; + break; + } + if (tmp$1 == 1) + if (language == 'FR') { + tmp$2 = 'Salut!'; + break; + } + if (tmp$1 == 2) + if (language == 'IT') { + tmp$2 = 'Ciao!'; + break; + } + if (tmp$1 == 3) + tmp$2 = "Sorry, I can't greet you in " + language + ' yet'; + } + Kotlin.println(tmp$2); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/nullChecks.js b/k2js/translator/testFiles/webDemoExamples1/out/nullChecks.js new file mode 100644 index 00000000000..744e68cf888 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/nullChecks.js @@ -0,0 +1,33 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, myParseInt:function(str){ + { + try { + return Kotlin.parseInt(str); + } + catch (e) { + Kotlin.println("One of argument isn't Int"); + } + return null; + } +} +, main:function(args){ + { + if (args.length < 2) { + Kotlin.print('No number supplied'); + } + else { + var x = Anonymous.myParseInt(args[0]); + var y = Anonymous.myParseInt(args[1]); + if (x != null && y != null) { + Kotlin.print(x * y); + } + } + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/objectOrientedHello.js b/k2js/translator/testFiles/webDemoExamples1/out/objectOrientedHello.js new file mode 100644 index 00000000000..a2c79e7134a --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/objectOrientedHello.js @@ -0,0 +1,25 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(name_0){ + this.$name = name_0; + } + , get_name:function(){ + return this.$name; + } + , greet:function(){ + { + Kotlin.println('Hello, ' + this.get_name() + '!'); + } + } + }); + return {Greeter:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + (new Anonymous.Greeter(args[0])).greet(); + } +} +}, {Greeter:classes.Greeter}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/patternMatching.js b/k2js/translator/testFiles/webDemoExamples1/out/patternMatching.js new file mode 100644 index 00000000000..804b0e427c1 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/patternMatching.js @@ -0,0 +1,45 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(){ + } + }); + return {MyClass:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + Anonymous.cases('Hello'); + Anonymous.cases(1); + Anonymous.cases(new Anonymous.MyClass); + Anonymous.cases('hello'); + } +} +, cases:function(obj){ + { + var tmp$1; + var tmp$0; + for (tmp$0 = 0; tmp$0 < 4; ++tmp$0) { + if (tmp$0 == 0) + if (obj == 1) { + tmp$1 = Kotlin.println('One'); + break; + } + if (tmp$0 == 1) + if (obj == 'Hello') { + tmp$1 = Kotlin.println('Greeting'); + break; + } + if (tmp$0 == 2) + if (!(typeof obj == 'string')) { + tmp$1 = Kotlin.println('Not a string'); + break; + } + if (tmp$0 == 3) + tmp$1 = Kotlin.println('Unknown'); + } + tmp$1; + } +} +}, {MyClass:classes.MyClass}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/printArg.js b/k2js/translator/testFiles/webDemoExamples1/out/printArg.js new file mode 100644 index 00000000000..1d4bb0c45ef --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/printArg.js @@ -0,0 +1,13 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + Kotlin.print(args[0]); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/ranges.js b/k2js/translator/testFiles/webDemoExamples1/out/ranges.js new file mode 100644 index 00000000000..63df3d145d7 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/ranges.js @@ -0,0 +1,39 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + var tmp$0; + var x = Kotlin.parseInt(args[0]); + var y = 10; + if ((new Kotlin.NumberRange(1, y - 1 - 1 + 1, false)).contains(x)) + Kotlin.println('OK'); + { + tmp$0 = (new Kotlin.NumberRange(1, 5 - 1 + 1, false)).iterator(); + while (tmp$0.hasNext()) { + var a = tmp$0.next(); + { + Kotlin.print(' ' + a); + } + } + } + Kotlin.println(); + var array = new Kotlin.ArrayList; + array.add('aaa'); + array.add('bbb'); + array.add('ccc'); + if (!(new Kotlin.NumberRange(0, array.size() - 0 + 1, false)).contains(x)) + Kotlin.println('Out: array has only ' + array.size() + ' elements. x = ' + x); + if (array.contains('aaa')) + Kotlin.println('Yes: array contains aaa'); + if (array.contains('ddd')) + Kotlin.println('Yes: array contains ddd'); + else + Kotlin.println("No: array doesn't contains ddd"); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples1/out/whileLoop.js b/k2js/translator/testFiles/webDemoExamples1/out/whileLoop.js new file mode 100644 index 00000000000..8b6b3a7f076 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples1/out/whileLoop.js @@ -0,0 +1,15 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + var i = 0; + while (i < args.length) + Kotlin.println(args[i++]); + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples2/out/bottles.js b/k2js/translator/testFiles/webDemoExamples2/out/bottles.js new file mode 100644 index 00000000000..b64617b2e03 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples2/out/bottles.js @@ -0,0 +1,67 @@ +var classes = function(){ + return {}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + if (Anonymous.isEmpty(args)) { + Anonymous.printBottles(99); + } + else { + var bottles = Kotlin.parseInt(args[0]); + if (bottles != null) { + Anonymous.printBottles(bottles); + } + else { + Kotlin.println("You have passed '" + args[0] + "' as a number of bottles, " + 'but it is not a valid integral number'); + } + } + } +} +, printBottles:function(bottleCount){ + { + if (bottleCount <= 0) { + Kotlin.println('No bottles - no song'); + return; + } + Kotlin.println('The ' + '"' + Anonymous.bottlesOfBeer_0(bottleCount) + '"' + ' song' + '\n'); + var bottles = bottleCount; + while (bottles > 0) { + var bottlesOfBeer = Anonymous.bottlesOfBeer_0(bottles); + Kotlin.print(bottlesOfBeer + ' on the wall, ' + bottlesOfBeer + '.' + '\n' + 'Take one down, pass it around, '); + bottles--; + Kotlin.println(Anonymous.bottlesOfBeer_0(bottles) + ' on the wall.' + '\n'); + } + Kotlin.println('No more bottles of beer on the wall, no more bottles of beer.\n' + ('Go to the store and buy some more, ' + Anonymous.bottlesOfBeer_0(bottleCount) + ' on the wall.')); + } +} +, bottlesOfBeer_0:function(count){ + var tmp$1; + var tmp$0; + for (tmp$0 = 0; tmp$0 < 3; ++tmp$0) { + if (tmp$0 == 0) + if (count == 0) { + tmp$1 = 'no more bottles'; + break; + } + if (tmp$0 == 1) + if (count == 1) { + tmp$1 = '1 bottle'; + break; + } + if (tmp$0 == 2) + tmp$1 = count + ' bottles'; + } + { + return tmp$1 + ' of beer'; + } +} +, isEmpty:function(receiver){ + { + return receiver.length == 0; + } +} +}, {}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples2/out/builder.js b/k2js/translator/testFiles/webDemoExamples2/out/builder.js new file mode 100644 index 00000000000..8ff565ef968 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples2/out/builder.js @@ -0,0 +1,301 @@ +var classes = function(){ + var tmp$0 = Kotlin.Trait.create({render:function(builder, indent){ + } + , toString:function(){ + { + var builder = new Kotlin.StringBuilder; + this.render(builder, ''); + return builder.toString(); + } + } + }); + var tmp$1 = Kotlin.Class.create(tmp$0, {initialize:function(name_0){ + this.$name = name_0; + this.$children = new Kotlin.ArrayList; + this.$attributes = new Kotlin.HashMap; + } + , get_name:function(){ + return this.$name; + } + , get_children:function(){ + return this.$children; + } + , get_attributes:function(){ + return this.$attributes; + } + , initTag:function(tag, init){ + { + init.call(tag); + this.get_children().add(tag); + return tag; + } + } + , render:function(builder, indent){ + { + var tmp$0; + builder.append(indent + '<' + this.get_name() + this.renderAttributes() + '>' + '\n'); + { + tmp$0 = this.get_children().iterator(); + while (tmp$0.hasNext()) { + var c = tmp$0.next(); + { + c.render(builder, indent + ' '); + } + } + } + builder.append(indent + '<\/' + this.get_name() + '>' + '\n'); + } + } + , renderAttributes:function(){ + { + var tmp$0; + var builder = new Kotlin.StringBuilder; + { + tmp$0 = this.get_attributes().keySet().iterator(); + while (tmp$0.hasNext()) { + var a = tmp$0.next(); + { + builder.append(' ' + a + '=' + '"' + this.get_attributes().get(a) + '"'); + } + } + } + return builder.toString(); + } + } + }); + var tmp$2 = Kotlin.Class.create(tmp$1, {initialize:function(name_0){ + this.super_init(name_0); + } + , plus:function(receiver){ + { + this.get_children().add(new Anonymous.TextElement(receiver)); + } + } + }); + var tmp$3 = Kotlin.Class.create(tmp$2, {initialize:function(name_0){ + this.super_init(name_0); + } + , b:function(init){ + { + return this.initTag(new Anonymous.B, init); + } + } + , p:function(init){ + { + return this.initTag(new Anonymous.P, init); + } + } + , h1:function(init){ + { + return this.initTag(new Anonymous.H1, init); + } + } + , ul:function(init){ + { + return this.initTag(new Anonymous.UL, init); + } + } + , a_0:function(href, init){ + { + var a = this.initTag(new Anonymous.A, init); + a.set_href(href); + } + } + }); + var tmp$4 = Kotlin.Class.create(tmp$3, {initialize:function(){ + this.super_init('a'); + } + , get_href:function(){ + { + return this.get_attributes().get('href'); + } + } + , set_href:function(value){ + { + Anonymous.set(this.get_attributes(), 'href', value); + } + } + }); + var tmp$5 = Kotlin.Class.create(tmp$3, {initialize:function(){ + this.super_init('h1'); + } + }); + var tmp$6 = Kotlin.Class.create(tmp$3, {initialize:function(){ + this.super_init('p'); + } + }); + var tmp$7 = Kotlin.Class.create(tmp$3, {initialize:function(){ + this.super_init('li'); + } + }); + var tmp$8 = Kotlin.Class.create(tmp$3, {initialize:function(){ + this.super_init('b'); + } + }); + var tmp$9 = Kotlin.Class.create(tmp$3, {initialize:function(){ + this.super_init('ul'); + } + , li:function(init){ + { + return this.initTag(new Anonymous.LI, init); + } + } + }); + var tmp$10 = Kotlin.Class.create(tmp$3, {initialize:function(){ + this.super_init('body'); + } + }); + var tmp$11 = Kotlin.Class.create(tmp$2, {initialize:function(){ + this.super_init('title'); + } + }); + var tmp$12 = Kotlin.Class.create(tmp$2, {initialize:function(){ + this.super_init('head'); + } + , title:function(init){ + { + return this.initTag(new Anonymous.Title, init); + } + } + }); + var tmp$13 = Kotlin.Class.create(tmp$2, {initialize:function(){ + this.super_init('html'); + } + , head:function(init){ + { + return this.initTag(new Anonymous.Head, init); + } + } + , body:function(init){ + { + return this.initTag(new Anonymous.Body, init); + } + } + }); + var tmp$14 = Kotlin.Class.create(tmp$0, {initialize:function(text){ + this.$text = text; + } + , get_text:function(){ + return this.$text; + } + , render:function(builder, indent){ + { + builder.append(indent + this.get_text() + '\n'); + } + } + }); + return {Title:tmp$11, Body:tmp$10, HTML:tmp$13, Head:tmp$12, TextElement:tmp$14, UL:tmp$9, H1:tmp$5, P:tmp$6, LI:tmp$7, B:tmp$8, Tag:tmp$1, TagWithText:tmp$2, BodyTag:tmp$3, A:tmp$4, Element_0:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, main:function(args){ + { + var result = Anonymous.html_0(function(){ + { + this.head(function(){ + { + this.title(function(){ + { + this.plus('XML encoding with Kotlin'); + } + } + ); + } + } + ); + this.body(function(){ + { + this.h1(function(){ + { + this.plus('XML encoding with Kotlin'); + } + } + ); + this.p(function(){ + { + this.plus('this format can be used as an alternative markup to XML'); + } + } + ); + this.a_0('http://jetbrains.com/kotlin', function(){ + { + this.plus('Kotlin'); + } + } + ); + this.p(function(){ + { + this.plus('This is some'); + this.b(function(){ + { + this.plus('mixed'); + } + } + ); + this.plus('text. For more see the'); + this.a_0('http://jetbrains.com/kotlin', function(){ + { + this.plus('Kotlin'); + } + } + ); + this.plus('project'); + } + } + ); + this.p(function(){ + { + this.plus('some text'); + } + } + ); + this.p(function(){ + { + this.plus('Command line arguments were:'); + this.ul(function(){ + { + var tmp$0; + { + tmp$0 = Kotlin.arrayIterator(args); + while (tmp$0.hasNext()) { + var arg = tmp$0.next(); + { + this.li(function(){ + { + this.plus(arg); + } + } + ); + } + } + } + } + } + ); + } + } + ); + } + } + ); + } + } + ); + Kotlin.println(result); + } +} +, html_0:function(init){ + { + var html = new Anonymous.HTML; + init.call(html); + return html; + } +} +, set:function(receiver, key, value){ + { + return receiver.put(key, value); + } +} +}, {Element_0:classes.Element_0, TextElement:classes.TextElement, Tag:classes.Tag, TagWithText:classes.TagWithText, HTML:classes.HTML, Head:classes.Head, Title:classes.Title, BodyTag:classes.BodyTag, Body:classes.Body, UL:classes.UL, B:classes.B, LI:classes.LI, P:classes.P, H1:classes.H1, A:classes.A}); +Anonymous.initialize(); diff --git a/k2js/translator/testFiles/webDemoExamples2/out/life.js b/k2js/translator/testFiles/webDemoExamples2/out/life.js new file mode 100644 index 00000000000..15bb23c3152 --- /dev/null +++ b/k2js/translator/testFiles/webDemoExamples2/out/life.js @@ -0,0 +1,239 @@ +var classes = function(){ + var tmp$0 = Kotlin.Class.create({initialize:function(width, height, init){ + this.$width = width; + this.$height = height; + this.$live = Kotlin.arrayFromFun(this.get_height(), (tmp$0_0 = this , function(i){ + { + var tmp$0; + return Kotlin.arrayFromFun(tmp$0_0.get_width(), (tmp$0 = tmp$0_0 , function(j){ + { + return init(i, j); + } + } + )); + } + } + )); + } + , get_width:function(){ + return this.$width; + } + , get_height:function(){ + return this.$height; + } + , get_live:function(){ + return this.$live; + } + , liveCount:function(i, j){ + var tmp$0; + if ((new Kotlin.NumberRange(0, this.get_height() - 1 - 0 + 1, false)).contains(i) && (new Kotlin.NumberRange(0, this.get_width() - 1 - 0 + 1, false)).contains(j) && this.get_live()[i][j]) + tmp$0 = 1; + else + tmp$0 = 0; + { + return tmp$0; + } + } + , liveNeighbors:function(i, j){ + { + return this.liveCount(i - 1, j - 1) + this.liveCount(i - 1, j) + this.liveCount(i - 1, j + 1) + this.liveCount(i, j - 1) + this.liveCount(i, j + 1) + this.liveCount(i + 1, j - 1) + this.liveCount(i + 1, j) + this.liveCount(i + 1, j + 1); + } + } + , get:function(i, j){ + { + return this.get_live()[i][j]; + } + } + }); + return {Field:tmp$0}; +} +(); +var Anonymous = Kotlin.Namespace.create({initialize:function(){ +} +, next:function(field){ + { + return new Anonymous.Field(field.get_width(), field.get_height(), function(i, j){ + { + var n = field.liveNeighbors(i, j); + if (field.get(i, j)) + return (new Kotlin.NumberRange(2, 3 - 2 + 1, false)).contains(n); + else + return n == 3; + } + } + ); + } +} +, main:function(args){ + { + Anonymous.printField('***', 3); + Anonymous.printField('\n __*__\n _***_\n __*__\n ', 10); + Anonymous.printField('\n __*__\n _*_*_\n __*__\n ', 3); + Anonymous.printField('\n __**__\n __**__\n __**__\n ', 3); + Anonymous.printField('\n __**__\n __**__\n __**__\n __**__\n ', 6); + Anonymous.printField('\n ---------------\n ---***---***---\n ---------------\n -*----*-*----*-\n -*----*-*----*-\n -*----*-*----*-\n ---***---***---\n ---------------\n ---***---***---\n -*----*-*----*-\n -*----*-*----*-\n -*----*-*----*-\n ---------------\n ---***---***---\n ---------------\n ', 10); + } +} +, printField:function(s, steps){ + { + var tmp$0; + var field = Anonymous.makeField(s); + { + tmp$0 = (new Kotlin.NumberRange(1, steps - 1 + 1, false)).iterator(); + while (tmp$0.hasNext()) { + var step = tmp$0.next(); + { + var tmp$1; + Kotlin.println('Step: ' + step); + { + tmp$1 = (new Kotlin.NumberRange(0, field.get_height() - 1 - 0 + 1, false)).iterator(); + while (tmp$1.hasNext()) { + var i = tmp$1.next(); + { + var tmp$2; + { + tmp$2 = (new Kotlin.NumberRange(0, field.get_width() - 1 - 0 + 1, false)).iterator(); + while (tmp$2.hasNext()) { + var j = tmp$2.next(); + { + var tmp$3; + if (field.get(i, j)) + tmp$3 = '*'; + else + tmp$3 = ' '; + Kotlin.print(tmp$3); + } + } + } + Kotlin.println(''); + } + } + } + field = Anonymous.next(field); + } + } + } + } +} +, toList:function(receiver){ + { + return Anonymous.to(receiver, new Kotlin.ArrayList); + } +} +, get_size:function(receiver){ + var tmp$0; + if (receiver != null) + tmp$0 = receiver.length; + else + tmp$0 = 0; + { + return tmp$0; + } +} +, to:function(receiver, result){ + { + var tmp$0; + { + tmp$0 = Kotlin.arrayIterator(receiver); + while (tmp$0.hasNext()) { + var elem = tmp$0.next(); + { + result.add(elem); + } + } + } + return result; + } +} +, makeField:function(s){ + { + var tmp$2; + var tmp$0; + var lines = Kotlin.splitString(s, '\n'); + var w = Kotlin.sure(Kotlin.collectionsMax(Anonymous.toList(lines), Kotlin.comparator(function(o1, o2){ + { + var l1 = Anonymous.get_size(o1); + var l2 = Anonymous.get_size(o2); + return l1 - l2; + } + } + ))); + var data = Kotlin.arrayFromFun(lines.length, function(it_0){ + { + return Kotlin.arrayFromFun(Anonymous.get_size(w), function(it){ + { + return false; + } + } + ); + } + } + ); + { + tmp$0 = Kotlin.arrayIndices(data).iterator(); + while (tmp$0.hasNext()) { + var i_0 = tmp$0.next(); + { + var tmp$1; + data[i_0] = Kotlin.arrayFromFun(Anonymous.get_size(w), function(it){ + { + return false; + } + } + ); + { + tmp$1 = Kotlin.arrayIndices(data[i_0]).iterator(); + while (tmp$1.hasNext()) { + var j_0 = tmp$1.next(); + { + data[i_0][j_0] = false; + } + } + } + } + } + } + { + tmp$2 = Kotlin.arrayIndices(lines).iterator(); + while (tmp$2.hasNext()) { + var line = tmp$2.next(); + { + var tmp$3; + { + tmp$3 = Anonymous.get_indices(lines[line]).iterator(); + while (tmp$3.hasNext()) { + var x = tmp$3.next(); + { + var c = lines[line].charAt(x); + data[line][x] = c == '*'; + } + } + } + } + } + } + return new Anonymous.Field(Anonymous.get_size(w), lines.length, function(i, j){ + { + return data[i][j]; + } + } + ); + } +} +, get_indices:function(receiver){ + { + return new Kotlin.NumberRange(0, Anonymous.get_size(Kotlin.sure(receiver))); + } +} +, set:function(receiver, k, v){ + { + receiver.put(k, v); + } +} +, get_isEmpty:function(receiver){ + { + return receiver.length == 0; + } +} +}, {Field:classes.Field}); +Anonymous.initialize(); diff --git a/kotlin2js/k2js.iml b/kotlin2js/k2js.iml new file mode 100644 index 00000000000..af012ea065d --- /dev/null +++ b/kotlin2js/k2js.iml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + +