From 3b97bb612970876c2c4805c27643ee7810e0fca6 Mon Sep 17 00:00:00 2001 From: Pavel Talanov Date: Fri, 2 Dec 2011 16:28:47 +0400 Subject: [PATCH] imolement most of the intrinsic logic. test fixes to follow --- .idea/workspace.xml | 973 ++++++++++-------- .../k2js/declarations/DeclarationVisitor.java | 2 +- .../{general => context}/Aliaser.java | 3 +- .../translate/{utils => context}/Namer.java | 2 +- .../{general => context}/StaticContext.java | 3 +- .../TranslationContext.java | 3 +- .../ClassDeclarationTranslator.java | 4 +- .../declaration/ClassTranslator.java | 2 +- .../declaration/DeclarationBodyVisitor.java | 2 +- .../declaration/NamespaceTranslator.java | 4 +- .../declaration/PropertyTranslator.java | 2 +- .../expression/ExpressionVisitor.java | 17 +- .../expression/FunctionTranslator.java | 2 +- .../expression/PatternTranslator.java | 2 +- .../translate/expression/WhenTranslator.java | 2 +- .../translate/general/AbstractTranslator.java | 1 + .../k2js/translate/general/Translation.java | 2 + .../translate/general/TranslatorVisitor.java | 1 + .../AbstractInitializerTranslator.java | 4 +- .../ClassInitializerTranslator.java | 4 +- .../initializer/InitializerVisitor.java | 2 +- .../NamespaceInitializerTranslator.java | 2 +- .../intrinsic/BinaryOperationIntrinsic.java | 2 +- .../k2js/translate/intrinsic/Intrinsic.java | 2 +- .../k2js/translate/intrinsic/Intrinsics.java | 7 +- .../PrimitiveCompareToIntrinsic.java | 2 +- .../intrinsic/PrimitiveEqualsIntrinsic.java | 2 +- .../intrinsic/UnaryOperationIntrinsic.java | 2 +- .../operation/AssignmentTranslator.java | 56 + .../operation/BinaryOperationTranslator.java | 129 ++- .../translate/operation/EqualsTranslator.java | 9 - .../operation/IncrementTranslator.java | 152 +++ ...ava => IntrinsicAssignmentTranslator.java} | 28 +- ...java => IntrinsicIncrementTranslator.java} | 33 +- .../operation/OperationTranslator.java | 157 --- .../translate/operation/OperatorTable.java | 19 - ...va => OverloadedAssignmentTranslator.java} | 43 +- .../OverloadedIncrementTranslator.java | 53 + .../OverloadedUnaryOperationTranslator.java | 44 - .../operation/UnaryOperationTranslator.java | 132 +-- .../translate/reference/AccessTranslator.java | 44 + .../reference/ArrayAccessTranslator.java | 60 +- .../translate/reference/CallTranslator.java | 2 +- .../reference/PropertyAccessTranslator.java | 80 +- .../reference/ReferenceAccessTranslator.java | 45 + .../reference/ReferenceTranslator.java | 2 +- .../k2js/translate/utils/BindingUtils.java | 14 + .../k2js/translate/utils/DescriptorUtils.java | 23 + .../k2js/translate/utils/PsiUtils.java | 11 + .../translate/utils/TranslationUtils.java | 14 +- .../patternMatching/cases/multipleCases.kt | 4 +- .../patternMatching/cases/whenNotValue.kt | 4 +- .../patternMatching/cases/whenValue.kt | 4 +- 53 files changed, 1218 insertions(+), 1000 deletions(-) rename translator/src/org/jetbrains/k2js/translate/{general => context}/Aliaser.java (96%) rename translator/src/org/jetbrains/k2js/translate/{utils => context}/Namer.java (98%) rename translator/src/org/jetbrains/k2js/translate/{general => context}/StaticContext.java (97%) rename translator/src/org/jetbrains/k2js/translate/{general => context}/TranslationContext.java (98%) create mode 100644 translator/src/org/jetbrains/k2js/translate/operation/AssignmentTranslator.java delete mode 100644 translator/src/org/jetbrains/k2js/translate/operation/EqualsTranslator.java create mode 100644 translator/src/org/jetbrains/k2js/translate/operation/IncrementTranslator.java rename translator/src/org/jetbrains/k2js/translate/operation/{IntrinsicBinaryOperationTranslator.java => IntrinsicAssignmentTranslator.java} (51%) rename translator/src/org/jetbrains/k2js/translate/operation/{IntrinsicUnaryOperationTranslator.java => IntrinsicIncrementTranslator.java} (58%) delete mode 100644 translator/src/org/jetbrains/k2js/translate/operation/OperationTranslator.java rename translator/src/org/jetbrains/k2js/translate/operation/{OverloadedBinaryOperationTranslator.java => OverloadedAssignmentTranslator.java} (58%) create mode 100644 translator/src/org/jetbrains/k2js/translate/operation/OverloadedIncrementTranslator.java delete mode 100644 translator/src/org/jetbrains/k2js/translate/operation/OverloadedUnaryOperationTranslator.java create mode 100644 translator/src/org/jetbrains/k2js/translate/reference/AccessTranslator.java create mode 100644 translator/src/org/jetbrains/k2js/translate/reference/ReferenceAccessTranslator.java create mode 100644 translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java diff --git a/.idea/workspace.xml b/.idea/workspace.xml index c292e4af82d..85246e6097c 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -8,24 +8,59 @@ - - - - - + + + + + + + + + + + + + + + + - + + + + + - + + - + + + + + + + + + + + - + + + + + + + + + + @@ -67,8 +102,8 @@ @@ -192,72 +214,22 @@ - + - - + + - - - - - - - - - - - - - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -265,10 +237,19 @@ - - + + - + + + + + + + + + + @@ -276,8 +257,44 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -285,10 +302,10 @@ - - + + - + @@ -298,10 +315,19 @@ - - + + - + + + + + + + + + + @@ -310,54 +336,25 @@ - - - - - - - - - - - - + - + - + - - + + - - - - - - - - - - - - - - - - - - - + @@ -372,26 +369,47 @@ - - + + - + - - + + - + - + + + + + + + + + + + + + + + + + + + + + + @@ -413,22 +431,22 @@ @@ -532,7 +550,6 @@ - @@ -579,11 +596,87 @@ + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -605,11 +698,7 @@ - - - @@ -627,7 +716,7 @@ + @@ -809,9 +907,9 @@ - - + + @@ -829,8 +927,8 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +