migrated from JetNamespace to NamespaceDescriptor and JetFile /* Lots of tests fail due to: missing array methods and unconverted tests*/

This commit is contained in:
Pavel Talanov
2012-01-04 17:31:46 +04:00
parent dbf9bbe2bb
commit 3a259131c1
142 changed files with 632 additions and 484 deletions
+406 -292
View File
@@ -13,9 +13,149 @@
<bookmark url="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" line="69" />
</component>
<component name="ChangeListManager">
<list default="true" id="f02ef53d-47a4-4f5e-a1aa-3df68aae9b20" name="Default" comment="quick fix that solves method overloading problem.">
<list default="true" id="f02ef53d-47a4-4f5e-a1aa-3df68aae9b20" name="Default" comment="">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/DeclarationVisitor.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/DeclarationVisitor.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/ClassDeclarationTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/ClassDeclarationTranslator.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/DeclarationBodyVisitor.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/DeclarationBodyVisitor.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/general/Translation.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/general/Translation.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/AbstractInitializerTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/AbstractInitializerTranslator.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/ClassInitializerTranslator.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/InitializerVisitor.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/InitializerVisitor.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/NamespaceInitializerTranslator.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/NamespaceInitializerTranslator.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetTestUtils.java" afterPath="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetTestUtils.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/classInstantiation.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/classInstantiation.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/complexExpressionAsConstructorParameter.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/complexExpressionAsConstructorParameter.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/constructorWithParameter.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/constructorWithParameter.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/constructorWithPropertiesAsParameters.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/constructorWithPropertiesAsParameters.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/incrementProperty.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/incrementProperty.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/methodDeclarationAndCall.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/methodDeclarationAndCall.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/propertiesAsParametersInitialized.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/propertiesAsParametersInitialized.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/propertyAccess.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/propertyAccess.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/class/cases/simpleInitializer.kt" afterPath="$PROJECT_DIR$/translator/testFiles/class/cases/simpleInitializer.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/conditional/cases/elseif.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/conditional/cases/elseif.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/conditional/cases/if.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/conditional/cases/if.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/conditional/cases/ifElseAsExpression.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/conditional/cases/ifElseAsExpression.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/for/cases/forIteratesOverArray.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/for/cases/forIteratesOverArray.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/for/cases/forOnEmptyArray.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/for/cases/forOnEmptyArray.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/adderClosure.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/adderClosure.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/closureWithParameter.jet" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/closureWithParameter.jet" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/closureWithParameterAndBoxing.jet" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/closureWithParameterAndBoxing.jet" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionLiteral.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionLiteral.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionLiteralAsParameter.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionLiteralAsParameter.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionUsedBeforeDeclaration.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionUsedBeforeDeclaration.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionWithTwoParametersCall.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/functionWithTwoParametersCall.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/loopClosure.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/function/cases/loopClosure.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/intrinsic/cases/minusAssignOnProperty.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/intrinsic/cases/minusAssignOnProperty.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/intrinsic/cases/plusAssign.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/intrinsic/cases/plusAssign.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/misc/cases/intRange.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/misc/cases/intRange.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/misc/cases/localProperty.jet" afterPath="$PROJECT_DIR$/translator/testFiles/expression/misc/cases/localProperty.jet" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/assign.jet" afterPath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/assign.jet" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/comparison.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/comparison.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/notBoolean.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/notBoolean.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/positiveAndNegativeNumbers.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/positiveAndNegativeNumbers.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/postfixIntOperations.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/postfixIntOperations.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/prefixIntOperations.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/operation/cases/prefixIntOperations.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/intInTemplate.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/intInTemplate.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/multipleExpressionsInTemplate.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/multipleExpressionsInTemplate.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/stringAssignment.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/stringAssignment.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/stringConstant.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/stringConstant.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/stringInTemplate.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/string/cases/stringInTemplate.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/breakDoWhile.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/breakDoWhile.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/breakWhile.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/breakWhile.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/continueDoWhile.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/continueDoWhile.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/continueWhile.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/continueWhile.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/doWhile.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/doWhile.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/doWhile2.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/doWhile2.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/while.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/while.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/while2.kt" afterPath="$PROJECT_DIR$/translator/testFiles/expression/while/cases/while2.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionFunctionOnExpression.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionFunctionOnExpression.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionInsideFunctionLiteral.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionInsideFunctionLiteral.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionLiteralPassedToFunction.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionLiteralPassedToFunction.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionUsedInsideClass.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionUsedInsideClass.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionWithImplicitReceiver.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/extensionWithImplicitReceiver.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/intExtension.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/intExtension.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/virtualExtension.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/virtualExtension.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/virtualExtensionOverride.kt" afterPath="$PROJECT_DIR$/translator/testFiles/extensionFunction/cases/virtualExtensionOverride.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/baseClassDefinedAfterDerived.kt" afterPath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/baseClassDefinedAfterDerived.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/complexInitializationOrder.kt" afterPath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/complexInitializationOrder.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/definitionOrder.kt" afterPath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/definitionOrder.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/initializationOrder.kt" afterPath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/initializationOrder.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/initializersOfBasicClassExecute.kt" afterPath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/initializersOfBasicClassExecute.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/methodOverride.kt" afterPath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/methodOverride.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/valuePassedToAncestorConstructor.kt" afterPath="$PROJECT_DIR$/translator/testFiles/inheritance/cases/valuePassedToAncestorConstructor.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/access.kt" afterPath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/access.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/arrayAccess.kt" afterPath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/arrayAccess.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/emptyList.kt" afterPath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/emptyList.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/indexOOB.kt" afterPath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/indexOOB.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/isEmpty.kt" afterPath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/isEmpty.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/iterate.kt" afterPath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/iterate.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/remove.kt" afterPath="$PROJECT_DIR$/translator/testFiles/java/arrayList/cases/remove.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/nameClashes/cases/methodOverload.kt" afterPath="$PROJECT_DIR$/translator/testFiles/nameClashes/cases/methodOverload.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/binaryDivOverload.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/binaryDivOverload.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/compareTo.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/compareTo.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/notOverload.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/notOverload.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/operatorOverloadOnPropertyCallGetterAndSetterOnlyOnce.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/operatorOverloadOnPropertyCallGetterAndSetterOnlyOnce.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/overloadPlusAssignArrayList.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/overloadPlusAssignArrayList.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/overloadedCallOnProperty.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/overloadedCallOnProperty.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusAndMinusAsAnExpression.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusAndMinusAsAnExpression.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusAssignNoReassign.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusAssignNoReassign.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusAssignReassign.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusAssignReassign.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusOverload.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/plusOverload.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/postfixIncOverload.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/postfixIncOverload.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/postfixOnProperty.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/postfixOnProperty.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/prefixDecOverload.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/prefixDecOverload.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/prefixIncReturnsCorrectValue.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/prefixIncReturnsCorrectValue.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/unaryOnIntProperty.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/unaryOnIntProperty.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/unaryOnIntProperty2.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/unaryOnIntProperty2.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/usingModInCaseModAssignNotAvailable.kt" afterPath="$PROJECT_DIR$/translator/testFiles/operatorOverloading/cases/usingModInCaseModAssignNotAvailable.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/matchNullableType.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/matchNullableType.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/multipleCases.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/multipleCases.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenAsExpression.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenAsExpression.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenExecutesOnlyOnce.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenExecutesOnlyOnce.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenNotType.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenNotType.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenNotValue.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenNotValue.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenType.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenType.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenValue.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenValue.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenValueOrType.kt" afterPath="$PROJECT_DIR$/translator/testFiles/patternMatching/cases/whenValueOrType.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/accessToInstanceProperty.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/accessToInstanceProperty.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/classUsesNamespaceProperties.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/classUsesNamespaceProperties.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/customGetter.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/customGetter.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/customSetter.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/customSetter.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/namespaceCustomAccessors.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/namespaceCustomAccessors.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/namespacePropertyInitializer.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/namespacePropertyInitializer.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/namespacePropertySet.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/namespacePropertySet.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/safeCall.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/safeCall.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/safeCallReturnsNullIfFails.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/safeCallReturnsNullIfFails.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/setter.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/setter.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/twoClassesWithProperties.kt" afterPath="$PROJECT_DIR$/translator/testFiles/propertyAccess/cases/twoClassesWithProperties.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/range/cases/explicitRange.kt" afterPath="$PROJECT_DIR$/translator/testFiles/range/cases/explicitRange.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/range/cases/intInRange.kt" afterPath="$PROJECT_DIR$/translator/testFiles/range/cases/intInRange.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/range/cases/rangeSugarSyntax.kt" afterPath="$PROJECT_DIR$/translator/testFiles/range/cases/rangeSugarSyntax.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/rtti/cases/isSameClass.kt" afterPath="$PROJECT_DIR$/translator/testFiles/rtti/cases/isSameClass.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/rtti/cases/notIsOtherClass.kt" afterPath="$PROJECT_DIR$/translator/testFiles/rtti/cases/notIsOtherClass.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/array.kt" afterPath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/array.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayAccess.kt" afterPath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayAccess.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayFunctionConstructor.kt" afterPath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayFunctionConstructor.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayIsFilledWithNulls.kt" afterPath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayIsFilledWithNulls.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arraySize.kt" afterPath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arraySize.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayThrowsExceptionOnOOBaccess.kt" afterPath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arrayThrowsExceptionOnOOBaccess.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arraysIterator.kt" afterPath="$PROJECT_DIR$/translator/testFiles/standardClasses/cases/arraysIterator.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/classDerivesFromClassAndTrait.kt" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/classDerivesFromClassAndTrait.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/classDerivesFromTraitAndClass.kt" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/classDerivesFromTraitAndClass.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/definitionOrder.kt" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/definitionOrder.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/example.kt" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/example.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/funDelegation.jet" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/funDelegation.jet" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/traitAddsFunctionsToClass.kt" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/traitAddsFunctionsToClass.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/traitExtendsTrait.kt" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/traitExtendsTrait.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/trait/cases/traitExtendsTwoTraits.kt" afterPath="$PROJECT_DIR$/translator/testFiles/trait/cases/traitExtendsTwoTraits.kt" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/translator/testFiles/tuple/cases/twoElements.kt" afterPath="$PROJECT_DIR$/translator/testFiles/tuple/cases/twoElements.kt" />
</list>
<ignored path="k2js.iws" />
<ignored path=".idea/workspace.xml" />
@@ -119,7 +259,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
<breakpoint url="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.java" line="92" class="org.jetbrains.jet.lang.resolve.java.JavaPackageScope" package="org.jetbrains.jet.lang.resolve.java">
<breakpoint url="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.java" line="123" class="org.jetbrains.jet.lang.resolve.java.JavaPackageScope" package="org.jetbrains.jet.lang.resolve.java">
<option name="ENABLED" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
@@ -189,74 +329,75 @@
<favorites_list name="k2js" />
</component>
<component name="FileEditorManager">
<splitter split-orientation="horizontal" split-proportion="0.7777778">
<splitter split-orientation="horizontal" split-proportion="0.4739369">
<split-first>
<leaf>
<file leaf-file-name="Declarations.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Declarations.java">
<file leaf-file-name="NamespaceInitializerTranslator.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/NamespaceInitializerTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="72" column="77" selection-start="2800" selection-end="2800" vertical-scroll-proportion="0.0">
<state line="30" column="55" selection-start="1234" selection-end="1234" vertical-scroll-proportion="0.0">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="NamespaceTranslator.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="87" column="56" selection-start="3667" selection-end="3667" vertical-scroll-proportion="-10.326923">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ClassDeclarationTranslator.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/ClassDeclarationTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="43" column="58" selection-start="1754" selection-end="1754" vertical-scroll-proportion="0.0">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="TranslationContext.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java">
<provider selected="true" editor-type-id="text-editor">
<state line="49" column="81" selection-start="1950" selection-end="1950" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="NameClashesTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/NameClashesTest.java">
<file leaf-file-name="DeclarationBodyVisitor.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/DeclarationBodyVisitor.java">
<provider selected="true" editor-type-id="text-editor">
<state line="19" column="5" selection-start="404" selection-end="404" vertical-scroll-proportion="0.0">
<folding />
<state line="39" column="63" selection-start="1714" selection-end="1714" vertical-scroll-proportion="0.0">
<folding>
<element signature="e#1624#1647#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="methodOverload.js" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/testFiles/nameClashes/out/methodOverload.js">
<file leaf-file-name="WritableScopeImpl.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java">
<provider selected="true" editor-type-id="text-editor">
<state line="9" column="42" selection-start="182" selection-end="182" vertical-scroll-proportion="0.0">
<folding />
<state line="422" column="0" selection-start="15409" selection-end="15409" vertical-scroll-proportion="0.0">
<folding>
<element signature="e#15569#15597#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="DescriptorUtils.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="88" column="55" selection-start="3641" selection-end="3641" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="TranslationUtils.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/TranslationUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="143" column="0" selection-start="6518" selection-end="6518" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="PatternMatchingTest.java" pinned="false" current="true" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/PatternMatchingTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="27" column="16" selection-start="538" selection-end="538" vertical-scroll-proportion="0.7900172">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="WebDemoExamplesTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/WebDemoExamplesTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="79" column="16" selection-start="2176" selection-end="2176" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="isCheck.js" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/testFiles/webDemoExamples/out/isCheck.js">
<file leaf-file-name="translator.iml" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/translator.iml">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
@@ -264,19 +405,28 @@
</provider>
</entry>
</file>
<file leaf-file-name="StandardClassesTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StandardClassesTest.java">
<file leaf-file-name="classInstantiation.kt" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/testFiles/class/cases/classInstantiation.kt">
<provider selected="true" editor-type-id="text-editor">
<state line="47" column="16" selection-start="1138" selection-end="1138" vertical-scroll-proportion="0.0">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="PsiPackageImpl.class" pinned="false" current="false" current-in-tab="false">
<entry file="jar://C:/Program Files (x86)/JetBrains/IntelliJ IDEA Community Edition 112.121/lib/idea.jar!/com/intellij/psi/impl/file/PsiPackageImpl.class">
<file leaf-file-name="ArrayListTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ArrayListTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="90" column="0" selection-start="5313" selection-end="5313" vertical-scroll-proportion="0.0">
<state line="33" column="16" selection-start="671" selection-end="671" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ExtensionFunctionTest.java" pinned="false" current="true" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ExtensionFunctionTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="45" column="53" selection-start="1106" selection-end="1106" vertical-scroll-proportion="0.5134168">
<folding />
</state>
</provider>
@@ -286,17 +436,8 @@
</split-first>
<split-second>
<leaf>
<file leaf-file-name="ArrayUtil.class" pinned="false" current="false" current-in-tab="false">
<entry file="jar://C:/Program Files/Java/jdk1.6.0_29/jre/lib/deploy.jar!/com/sun/deploy/util/ArrayUtil.class">
<provider selected="true" editor-type-id="text-editor">
<state line="5" column="13" selection-start="157" selection-end="157" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="build.xml" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/build.xml">
<file leaf-file-name="methodOverload.js" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/testFiles/nameClashes/out/methodOverload.js">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
@@ -304,37 +445,77 @@
</provider>
</entry>
</file>
<file leaf-file-name="JavaPackageScope.java" pinned="false" current="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.java">
<file leaf-file-name="DescriptorUtils.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="88" column="99" selection-start="3428" selection-end="3428" vertical-scroll-proportion="1.6545801">
<state line="130" column="29" selection-start="5259" selection-end="5259" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="WritableScopeImpl.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java">
<file leaf-file-name="AnalyzingUtils.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/AnalyzingUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="86" column="0" selection-start="2760" selection-end="2760" vertical-scroll-proportion="0.0">
<state line="63" column="23" selection-start="2341" selection-end="2341" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="CallResolver.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/CallResolver.java">
<file leaf-file-name="K2JSTranslator.java" pinned="false" current="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="80" column="23" selection-start="3867" selection-end="3867" vertical-scroll-proportion="0.0">
<state line="89" column="61" selection-start="3333" selection-end="3333" vertical-scroll-proportion="0.93406594">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="methodOverload.kt" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/testFiles/nameClashes/cases/methodOverload.kt">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="Call.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/psi/Call.java">
<file leaf-file-name="BindingUtils.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="45" column="66" selection-start="959" selection-end="959" vertical-scroll-proportion="0.0">
<state line="81" column="77" selection-start="3720" selection-end="3720" vertical-scroll-proportion="-12.769231">
<folding>
<element signature="e#3810#3826#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="FunctionTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/FunctionTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="22" column="16" selection-start="457" selection-end="457" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="WebDemoExamplesTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/WebDemoExamplesTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="48" column="16" selection-start="1229" selection-end="1229" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="PropertyAccessTest.java" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/PropertyAccessTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="47" column="16" selection-start="1042" selection-end="1042" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
@@ -373,22 +554,22 @@
<component name="IdeDocumentHistory">
<option name="changedFiles">
<list>
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/AppletTest.java" />
<option value="$PROJECT_DIR$/translator/testFiles/nameClashes/cases/methodOverload.kt" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StaticContext.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslatorApplet.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/ErrorSender.java" />
<option value="$PROJECT_DIR$/translator/testFiles/kotlin_lib.js" />
<option value="$PROJECT_DIR$/translator/testFiles/nameClashes/out/methodOverload.js" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/utils/JetTestUtils.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/StandardClasses.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/NamingScope.java" />
<option value="$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.java" />
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/WebDemoExamplesTest.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/DeclarationVisitor.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/Declarations.java" />
<option value="$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/NameClashesTest.java" />
<option value="$PROJECT_DIR$/translator/testFiles/nameClashes/out/methodOverload.js" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/TranslationContext.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/NamespaceInitializerTranslator.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/AbstractInitializerTranslator.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/BindingUtils.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/InitializerVisitor.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/general/Translation.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/ClassDeclarationTranslator.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/declaration/DeclarationBodyVisitor.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java" />
<option value="$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java" />
<option value="$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java" />
<option value="$PROJECT_DIR$/translator/testFiles/class/cases/classInstantiation.kt" />
</list>
</option>
</component>
@@ -502,11 +683,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="translator" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="testFiles" />
<option name="myItemId" value="frontend.java" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -516,15 +693,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="translator" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="testFiles" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="webDemoExamples" />
<option name="myItemId" value="frontend" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -534,15 +703,11 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="translator" />
<option name="myItemId" value="frontend" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="testFiles" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="tuple" />
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -552,81 +717,15 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="translator" />
<option name="myItemId" value="frontend" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="testFiles" />
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="tuple" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="cases" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="k2js" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="translator" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="testFiles" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="trait" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="k2js" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="translator" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="testFiles" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="nameClashes" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="out" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="k2js" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="translator" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="testFiles" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="nameClashes" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="cases" />
<option name="myItemId" value="jet" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -662,7 +761,7 @@
</component>
<component name="PropertiesComponent">
<property name="GoToFile.includeJavaFiles" value="false" />
<property name="project.structure.last.edited" value="Libraries" />
<property name="project.structure.last.edited" value="Modules" />
<property name="OverrideImplement.combined" value="true" />
<property name="project.structure.proportion" value="0.15" />
<property name="options.splitter.main.proportions" value="0.3" />
@@ -984,34 +1083,6 @@
</UpdateInfo>
</component>
<component name="RunManager" selected="JUnit.tests">
<configuration default="false" name="WebDemoExamplesTest.patternMatching" type="JUnit" factoryName="JUnit" temporary="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.k2js.test.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="translator" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PACKAGE_NAME" value="org.jetbrains.k2js.test" />
<option name="MAIN_CLASS_NAME" value="org.jetbrains.k2js.test.WebDemoExamplesTest" />
<option name="METHOD_NAME" value="patternMatching" />
<option name="TEST_OBJECT" value="method" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="moduleWithDependencies" />
</option>
<envs />
<patterns />
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Run" />
<method />
</configuration>
<configuration default="false" name="AppletTest" type="JUnit" factoryName="JUnit" temporary="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
@@ -1132,6 +1203,41 @@
<ConfigurationWrapper RunnerId="Debug" />
<method />
</configuration>
<configuration default="false" name="ArrayListTest.isEmpty" type="JUnit" factoryName="JUnit" temporary="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.k2js.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="translator" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.k2js.test" />
<option name="MAIN_CLASS_NAME" value="org.jetbrains.k2js.test.ArrayListTest" />
<option name="METHOD_NAME" value="isEmpty" />
<option name="TEST_OBJECT" value="method" />
<option name="VM_PARAMETERS" value="-ea" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<envs />
<dir value="$PROJECT_DIR$/translator" />
<patterns />
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="" />
<option name="TRANSPORT" value="0" />
<option name="LOCAL" value="true" />
</RunnerSettings>
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Debug" />
<ConfigurationWrapper RunnerId="Run" />
<method />
</configuration>
<configuration default="true" type="Remote" factoryName="Remote">
<option name="USE_SOCKET_TRANSPORT" value="true" />
<option name="SERVER_MODE" value="false" />
@@ -1288,11 +1394,11 @@
<list size="7">
<item index="0" class="java.lang.String" itemvalue="Applet.Applet" />
<item index="1" class="java.lang.String" itemvalue="JUnit.tests" />
<item index="2" class="java.lang.String" itemvalue="JUnit.WebDemoExamplesTest.patternMatching" />
<item index="3" class="java.lang.String" itemvalue="JUnit.AppletTest" />
<item index="4" class="java.lang.String" itemvalue="JUnit.AppletTest.simpleTest" />
<item index="5" class="java.lang.String" itemvalue="JUnit.All in jetTests" />
<item index="6" class="java.lang.String" itemvalue="JUnit.StandardClassesTest.arrayFunctionConstructor" />
<item index="2" class="java.lang.String" itemvalue="JUnit.AppletTest" />
<item index="3" class="java.lang.String" itemvalue="JUnit.AppletTest.simpleTest" />
<item index="4" class="java.lang.String" itemvalue="JUnit.All in jetTests" />
<item index="5" class="java.lang.String" itemvalue="JUnit.StandardClassesTest.arrayFunctionConstructor" />
<item index="6" class="java.lang.String" itemvalue="JUnit.ArrayListTest.isEmpty" />
</list>
<configuration name="&lt;template&gt;" type="WebApp" default="true" selected="false">
<Host>localhost</Host>
@@ -1353,6 +1459,7 @@
<window_info id="Data Sources" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32853025" sideWeight="0.49812934" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32756963" sideWeight="0.4216996" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24973261" sideWeight="0.7183908" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25552353" sideWeight="0.7733832" order="3" side_tool="false" content_ui="tabs" />
<window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32949087" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
@@ -1371,7 +1478,6 @@
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.0908605" sideWeight="0.7146974" order="2" side_tool="false" content_ui="combo" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32756963" sideWeight="0.4216996" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="12" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39865515" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="JsTestDriver Server" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32907662" sideWeight="0.5" order="13" side_tool="false" content_ui="tabs" />
@@ -1412,7 +1518,7 @@
<option name="CREATE_PATCH_EXPAND_DETAILS_DEFAULT" value="true" />
<option name="SHOW_FILE_HISTORY_DETAILS" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
<option name="LAST_COMMIT_MESSAGE" value="quick fix that solves method overloading problem." />
<option name="LAST_COMMIT_MESSAGE" value="fix some code after update" />
<option name="MAKE_NEW_CHANGELIST_ACTIVE" value="true" />
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="true" />
<option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
@@ -1425,7 +1531,6 @@
<option name="UPDATE_GROUP_BY_CHANGELIST" value="false" />
<option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
<option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
<MESSAGE value="finished code clean up." />
<MESSAGE value="extension functions support and tests." />
<MESSAGE value="virtual extension functions support and tests." />
<MESSAGE value="extension literal support and tests." />
@@ -1450,6 +1555,7 @@
<MESSAGE value="refactor PropertyAccessTranslato" />
<MESSAGE value="added support for some of feature needed for applet, work on method overloading" />
<MESSAGE value="quick fix that solves method overloading problem." />
<MESSAGE value="fix some code after update" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager />
@@ -1459,110 +1565,118 @@
<option name="FILTER_TARGETS" value="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/StandardClassesTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="47" column="16" selection-start="1138" selection-end="1138" vertical-scroll-proportion="0.0" />
</provider>
</entry>
<entry file="jar://C:/Program Files (x86)/JetBrains/IntelliJ IDEA Community Edition 112.121/lib/idea.jar!/com/intellij/psi/impl/file/PsiPackageImpl.class">
<provider selected="true" editor-type-id="text-editor">
<state line="90" column="0" selection-start="5313" selection-end="5313" vertical-scroll-proportion="0.0" />
</provider>
</entry>
<entry file="jar://C:/Program Files/Java/jdk1.6.0_29/jre/lib/deploy.jar!/com/sun/deploy/util/ArrayUtil.class">
<provider selected="true" editor-type-id="text-editor">
<state line="5" column="13" selection-start="157" selection-end="157" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/build.xml">
<entry file="file://$PROJECT_DIR$/translator/testFiles/nameClashes/out/methodOverload.js">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/expression/FunctionTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="86" column="0" selection-start="2760" selection-end="2760" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/calls/CallResolver.java">
<provider selected="true" editor-type-id="text-editor">
<state line="80" column="23" selection-start="3867" selection-end="3867" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/psi/Call.java">
<provider selected="true" editor-type-id="text-editor">
<state line="45" column="66" selection-start="959" selection-end="959" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="jar://C:/Program Files (x86)/JetBrains/IntelliJ IDEA Community Edition 112.121/lib/idea.jar!/com/intellij/openapi/vfs/impl/jar/JarHandlerBase.class">
<provider selected="true" editor-type-id="text-editor">
<state line="5" column="13" selection-start="171" selection-end="171" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaPackageScope.java">
<provider selected="true" editor-type-id="text-editor">
<state line="88" column="99" selection-start="3428" selection-end="3428" vertical-scroll-proportion="1.6545801">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/testFiles/nameClashes/out/methodOverload.js">
<provider selected="true" editor-type-id="text-editor">
<state line="9" column="42" selection-start="182" selection-end="182" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/NamingScope.java">
<provider selected="true" editor-type-id="text-editor">
<state line="71" column="10" selection-start="2280" selection-end="2280" vertical-scroll-proportion="0.0">
<state line="108" column="0" selection-start="4257" selection-end="4257" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/DescriptorUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="88" column="55" selection-start="3641" selection-end="3641" vertical-scroll-proportion="0.0">
<state line="130" column="29" selection-start="5259" selection-end="5259" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/BasicClassTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="62" column="16" selection-start="1563" selection-end="1563" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/AnalyzingUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state line="63" column="23" selection-start="2341" selection-end="2341" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ClassInheritanceTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="37" column="16" selection-start="872" selection-end="872" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/K2JSTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="81" column="0" selection-start="2980" selection-end="2980" vertical-scroll-proportion="0.0">
<state line="89" column="61" selection-start="3333" selection-end="3333" vertical-scroll-proportion="0.93406594">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/resolve/scopes/WritableScopeImpl.java">
<provider selected="true" editor-type-id="text-editor">
<state line="422" column="0" selection-start="15409" selection-end="15409" vertical-scroll-proportion="0.0">
<folding>
<element signature="e#15569#15597#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/AbstractInitializerTranslator.java">
<provider selected="true" editor-type-id="text-editor">
<state line="7" column="43" selection-start="388" selection-end="388" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/utils/TranslationUtils.java">
<entry file="file://$PROJECT_DIR$/translator/translator.iml">
<provider selected="true" editor-type-id="text-editor">
<state line="143" column="0" selection-start="6518" selection-end="6518" vertical-scroll-proportion="0.0">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/context/DeclarationVisitor.java">
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/general/Translation.java">
<provider selected="true" editor-type-id="text-editor">
<state line="42" column="92" selection-start="1862" selection-end="1862" vertical-scroll-proportion="0.0">
<state line="86" column="103" selection-start="4097" selection-end="4097" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/PatternMatchingTest.java">
<entry file="file://$PROJECT_DIR$/translator/testFiles/class/cases/classInstantiation.kt">
<provider selected="true" editor-type-id="text-editor">
<state line="27" column="16" selection-start="538" selection-end="538" vertical-scroll-proportion="0.7900172">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/src/org/jetbrains/k2js/translate/initializer/InitializerVisitor.java">
<provider selected="true" editor-type-id="text-editor">
<state line="79" column="51" selection-start="3278" selection-end="3278" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ArrayListTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="33" column="16" selection-start="671" selection-end="671" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../Kotlin/jet/compiler/frontend/src/org/jetbrains/jet/lang/descriptors/DeclarationDescriptor.java">
<provider selected="true" editor-type-id="text-editor">
<state line="10" column="17" selection-start="294" selection-end="294" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/translator/test/org/jetbrains/k2js/test/ExtensionFunctionTest.java">
<provider selected="true" editor-type-id="text-editor">
<state line="45" column="53" selection-start="1106" selection-end="1106" vertical-scroll-proportion="0.5134168">
<folding />
</state>
</provider>
@@ -1622,7 +1736,7 @@
</state>
<state key="ModuleStructureConfigurable.UI">
<settings>
<last-edited>idea_fix</last-edited>
<last-edited>backend</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
@@ -15,7 +15,7 @@ import org.jetbrains.jet.JetCoreEnvironment;
import org.jetbrains.jet.compiler.CompileEnvironment;
import org.jetbrains.jet.lang.cfg.pseudocode.JetControlFlowDataTraceFactory;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.psi.JetNamespace;
import org.jetbrains.jet.lang.resolve.AnalyzingUtils;
import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.jet.plugin.JetLanguage;
import org.jetbrains.k2js.generate.CodeGenerator;
@@ -29,7 +29,7 @@ import java.util.List;
import java.util.StringTokenizer;
import static org.jetbrains.k2js.translate.utils.BindingUtils.getNamespaceDescriptor;
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.nameForNamespace;
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getNameForNamespace;
import static org.jetbrains.k2js.utils.JetTestUtils.analyzeNamespace;
/**
@@ -83,13 +83,13 @@ public final class K2JSTranslator {
@NotNull
private JsProgram generateProgram(@NotNull JetFile psiFile) {
JetNamespace namespace = psiFile.getRootNamespace();
bindingContext = analyzeNamespace(namespace,
bindingContext = analyzeNamespace(psiFile,
JetControlFlowDataTraceFactory.EMPTY);
assert bindingContext != null;
AnalyzingUtils.checkForSyntacticErrors(psiFile);
AnalyzingUtils.throwExceptionOnErrors(bindingContext);
return Translation.generateAst(bindingContext, namespace, environment.getProject());
return Translation.generateAst(bindingContext, psiFile, environment.getProject());
}
private void includeRtJar() {
@@ -150,12 +150,10 @@ public final class K2JSTranslator {
return result;
}
//TODO: make "anonymous" a constant
@NotNull
private String getRootNamespaceName(@NotNull JetFile psiFile) {
JetNamespace namespace = psiFile.getRootNamespace();
assert bindingContext != null;
return nameForNamespace(getNamespaceDescriptor(bindingContext, namespace));
return getNameForNamespace(getNamespaceDescriptor(bindingContext, psiFile));
}
}
@@ -5,8 +5,8 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.*;
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getNameForNamespace;
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.getOwnDeclarations;
import static org.jetbrains.k2js.translate.utils.DescriptorUtils.nameForNamespace;
/**
* @author Pavel Talanov
@@ -121,7 +121,7 @@ public final class DeclarationVisitor extends DeclarationDescriptorVisitor<Void,
@NotNull
private DeclarationContext extractNamespaceDeclaration(@NotNull NamespaceDescriptor descriptor,
@NotNull DeclarationContext context) {
JsName namespaceName = declareName(descriptor, context, nameForNamespace(descriptor));
JsName namespaceName = declareName(descriptor, context, getNameForNamespace(descriptor));
NamingScope namespaceScope = declareScope(descriptor, context, "namespace " + namespaceName.getIdent());
return context.innerDeclaration(namespaceScope, namespaceName);
}
@@ -90,9 +90,9 @@ public final class StandardClasses {
standardClasses.declareTopLevel(arrayClass, "Array");
FunctionDescriptor nullConstructorFunction = getFunctionByName(standardLibrary.getLibraryScope(), "Array");
standardClasses.declareTopLevel(nullConstructorFunction, "array");
PropertyDescriptor sizeProperty =
getPropertyByName(arrayClass.getDefaultType().getMemberScope(), "size");
standardClasses.declareInner(sizeProperty, "size");
// PropertyDescriptor sizeProperty =
// getPropertyByName(arrayClass.getDefaultType().getMemberScope(), "size");
// standardClasses.declareInner(sizeProperty, "size");
PropertyDescriptor indices = getPropertyByName(arrayClass.getDefaultType().getMemberScope(), "indices");
standardClasses.declareInner(indices, "indices");
}
@@ -3,8 +3,12 @@ package org.jetbrains.k2js.translate.context;
import com.google.dart.compiler.backend.js.ast.*;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor;
import org.jetbrains.jet.lang.descriptors.PropertyAccessorDescriptor;
import org.jetbrains.jet.lang.psi.*;
import org.jetbrains.jet.lang.psi.JetClass;
import org.jetbrains.jet.lang.psi.JetElement;
import org.jetbrains.jet.lang.psi.JetNamedFunction;
import org.jetbrains.jet.lang.psi.JetPropertyAccessor;
import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.k2js.translate.intrinsic.Intrinsics;
import org.jetbrains.k2js.translate.utils.BindingUtils;
@@ -46,8 +50,8 @@ public final class TranslationContext {
}
@NotNull
public TranslationContext newNamespace(@NotNull JetNamespace declaration) {
return newDeclaration(BindingUtils.getNamespaceDescriptor(staticContext.getBindingContext(), declaration));
public TranslationContext newNamespace(@NotNull NamespaceDescriptor namespace) {
return newDeclaration(namespace);
}
@NotNull
@@ -5,9 +5,9 @@ import com.google.dart.compiler.util.AstUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.ClassDescriptor;
import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor;
import org.jetbrains.jet.lang.psi.JetClass;
import org.jetbrains.jet.lang.psi.JetDeclaration;
import org.jetbrains.jet.lang.psi.JetNamespace;
import org.jetbrains.k2js.translate.context.Namer;
import org.jetbrains.k2js.translate.context.TranslationContext;
import org.jetbrains.k2js.translate.general.AbstractTranslator;
@@ -20,13 +20,16 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static org.jetbrains.k2js.translate.utils.BindingUtils.getDeclarationsForNamespace;
/**
* @author Pavel Talanov
*/
//TODO: declaration translator receives NamespaceDescriptor while actually should receive all declarations in namespace
public final class ClassDeclarationTranslator extends AbstractTranslator {
@NotNull
private final JetNamespace namespace;
private final List<JetDeclaration> namespaceDeclarations;
@NotNull
private final Map<JsName, JsName> localToGlobalClassName;
@NotNull
@@ -36,9 +39,9 @@ public final class ClassDeclarationTranslator extends AbstractTranslator {
@Nullable
private JsStatement declarationsStatement = null;
public ClassDeclarationTranslator(@NotNull TranslationContext context, @NotNull JetNamespace namespace) {
public ClassDeclarationTranslator(@NotNull TranslationContext context, @NotNull NamespaceDescriptor namespace) {
super(context);
this.namespace = namespace;
this.namespaceDeclarations = getDeclarationsForNamespace(context.bindingContext(), namespace);
this.localToGlobalClassName = new HashMap<JsName, JsName>();
this.dummyFunctionScope = new JsScope(context().jsScope(), "class declaration function");
}
@@ -105,7 +108,7 @@ public final class ClassDeclarationTranslator extends AbstractTranslator {
@NotNull
private List<JetClass> getClassDeclarations() {
List<JetClass> classes = new ArrayList<JetClass>();
for (JetDeclaration declaration : namespace.getDeclarations()) {
for (JetDeclaration declaration : namespaceDeclarations) {
if (declaration instanceof JetClass) {
classes.add((JetClass) declaration);
}
@@ -2,6 +2,7 @@ package org.jetbrains.k2js.translate.declaration;
import com.google.dart.compiler.backend.js.ast.JsPropertyInitializer;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor;
import org.jetbrains.jet.lang.descriptors.PropertyDescriptor;
import org.jetbrains.jet.lang.psi.*;
import org.jetbrains.k2js.translate.context.TranslationContext;
@@ -14,6 +15,8 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import static org.jetbrains.k2js.translate.utils.BindingUtils.getDeclarationsForNamespace;
/**
* @author Pavel Talanov
*/
@@ -21,20 +24,20 @@ public final class DeclarationBodyVisitor extends TranslatorVisitor<List<JsPrope
@NotNull
public List<JsPropertyInitializer> traverseClass(@NotNull JetClass expression,
public List<JsPropertyInitializer> traverseClass(@NotNull JetClass jetClass,
@NotNull TranslationContext context) {
List<JsPropertyInitializer> properties = new ArrayList<JsPropertyInitializer>();
for (JetDeclaration declaration : expression.getDeclarations()) {
for (JetDeclaration declaration : jetClass.getDeclarations()) {
properties.addAll(declaration.accept(this, context));
}
return properties;
}
@NotNull
public List<JsPropertyInitializer> traverseNamespace(@NotNull JetNamespace expression,
public List<JsPropertyInitializer> traverseNamespace(@NotNull NamespaceDescriptor namespace,
@NotNull TranslationContext context) {
List<JsPropertyInitializer> properties = new ArrayList<JsPropertyInitializer>();
for (JetDeclaration declaration : expression.getDeclarations()) {
for (JetDeclaration declaration : getDeclarationsForNamespace(context.bindingContext(), namespace)) {
properties.addAll(declaration.accept(this, context));
}
return properties;
@@ -3,7 +3,7 @@ package org.jetbrains.k2js.translate.declaration;
import com.google.dart.compiler.backend.js.ast.*;
import com.google.dart.compiler.util.AstUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.psi.JetNamespace;
import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor;
import org.jetbrains.k2js.translate.context.Namer;
import org.jetbrains.k2js.translate.context.TranslationContext;
import org.jetbrains.k2js.translate.general.AbstractTranslator;
@@ -15,24 +15,25 @@ import java.util.List;
/**
* @author Pavel.Talanov
*/
//TODO: rework translator to translate everything in the namespace not only in one file
public final class NamespaceTranslator extends AbstractTranslator {
@NotNull
private final JetNamespace namespace;
private final NamespaceDescriptor namespace;
@NotNull
private final JsName namespaceName;
@NotNull
private final ClassDeclarationTranslator classDeclarationTranslator;
@NotNull
public static JsStatement translateNamespace(@NotNull JetNamespace namespace, @NotNull TranslationContext context) {
public static JsStatement translateNamespace(@NotNull NamespaceDescriptor namespace, @NotNull TranslationContext context) {
return (new NamespaceTranslator(namespace, context)).translateNamespace();
}
private NamespaceTranslator(@NotNull JetNamespace namespace, @NotNull TranslationContext context) {
private NamespaceTranslator(@NotNull NamespaceDescriptor namespace, @NotNull TranslationContext context) {
super(context.newNamespace(namespace));
this.namespace = namespace;
this.namespaceName = context.getNameForElement(namespace);
this.namespaceName = context.getNameForDescriptor(namespace);
this.classDeclarationTranslator = new ClassDeclarationTranslator(context(), namespace);
}
@@ -66,7 +67,7 @@ public final class NamespaceTranslator extends AbstractTranslator {
addMemberDeclarations(namespaceDeclaration);
addClassesDeclarations(namespaceDeclaration);
return AstUtil.newAssignmentStatement
(context().getNameForElement(namespace).makeRef(), namespaceDeclaration);
(namespaceName.makeRef(), namespaceDeclaration);
}
private void addClassesDeclarations(@NotNull JsInvocation namespaceDeclaration) {
@@ -37,7 +37,7 @@ public final class Translation {
}
@NotNull
public static JsStatement translateNamespace(@NotNull JetNamespace namespace,
public static JsStatement translateNamespace(@NotNull NamespaceDescriptor namespace,
@NotNull TranslationContext context) {
return NamespaceTranslator.translateNamespace(namespace, context);
}
@@ -76,6 +76,7 @@ public final class Translation {
return WhenTranslator.translateWhenExpression(expression, context);
}
//TODO: see if generate*Initializer methods fit somewhere else
@NotNull
public static JsPropertyInitializer generateClassInitializerMethod(@NotNull JetClass classDeclaration,
@NotNull TranslationContext context) {
@@ -83,13 +84,13 @@ public final class Translation {
}
@NotNull
public static JsPropertyInitializer generateNamespaceInitializerMethod(@NotNull JetNamespace namespace,
public static JsPropertyInitializer generateNamespaceInitializerMethod(@NotNull NamespaceDescriptor namespace,
@NotNull TranslationContext context) {
return (new NamespaceInitializerTranslator(namespace, context)).generateInitializeMethod();
}
public static JsProgram generateAst(@NotNull BindingContext bindingContext,
@NotNull JetNamespace namespace, @NotNull Project project) {
@NotNull JetFile namespace, @NotNull Project project) {
//TODO: move some of the code somewhere
JetStandardLibrary standardLibrary = JetStandardLibrary.getJetStandardLibrary(project);
NamespaceDescriptor descriptor = BindingUtils.getNamespaceDescriptor(bindingContext, namespace);
@@ -99,7 +100,7 @@ public final class Translation {
staticContext.getDeclarations().extractDeclarations(descriptor);
JsBlock block = staticContext.getProgram().getFragmentBlock(0);
TranslationContext context = TranslationContext.rootContext(staticContext);
block.addStatement(Translation.translateNamespace(namespace, context));
block.addStatement(Translation.translateNamespace(descriptor, context));
JsNamer namer = new JsPrettyNamer();
namer.exec(context.program());
@@ -4,7 +4,8 @@ import com.google.dart.compiler.backend.js.ast.JsFunction;
import com.google.dart.compiler.backend.js.ast.JsPropertyInitializer;
import com.google.dart.compiler.backend.js.ast.JsStatement;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.psi.JetDeclaration;
import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor;
import org.jetbrains.jet.lang.psi.JetClass;
import org.jetbrains.k2js.translate.context.Namer;
import org.jetbrains.k2js.translate.context.NamingScope;
import org.jetbrains.k2js.translate.context.TranslationContext;
@@ -40,7 +41,13 @@ public abstract class AbstractInitializerTranslator extends AbstractTranslator {
}
@NotNull
protected List<JsStatement> translatePropertyAndAnonymousInitializers(@NotNull JetDeclaration declaration) {
return visitor.traverse(declaration, context());
protected List<JsStatement> translateClassInitializers(@NotNull JetClass declaration) {
return visitor.traverseClass(declaration, context());
}
@NotNull
protected List<JsStatement> translateNamespaceInitializers(@NotNull NamespaceDescriptor namespace) {
return visitor.traverseNamespace(namespace, context());
}
}
@@ -50,7 +50,7 @@ public final class ClassInitializerTranslator extends AbstractInitializerTransla
@NotNull
private JsBlock generateInitializerMethodBody() {
initializerStatements.addAll(translatePropertyAndAnonymousInitializers(classDeclaration));
initializerStatements.addAll(translateClassInitializers(classDeclaration));
return AstUtil.newBlock(initializerStatements);
}
@@ -4,6 +4,7 @@ import com.google.dart.compiler.backend.js.ast.JsExpression;
import com.google.dart.compiler.backend.js.ast.JsStatement;
import com.google.dart.compiler.util.AstUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor;
import org.jetbrains.jet.lang.psi.*;
import org.jetbrains.k2js.translate.context.TranslationContext;
import org.jetbrains.k2js.translate.general.Translation;
@@ -14,6 +15,8 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.jetbrains.k2js.translate.utils.BindingUtils.getDeclarationsForNamespace;
/**
* @author Pavel Talanov
*/
@@ -72,9 +75,9 @@ public final class InitializerVisitor extends TranslatorVisitor<List<JsStatement
}
@NotNull
public List<JsStatement> traverseNamespace(@NotNull JetNamespace expression, @NotNull TranslationContext context) {
public List<JsStatement> traverseNamespace(@NotNull NamespaceDescriptor namespace, @NotNull TranslationContext context) {
List<JsStatement> initializerStatements = new ArrayList<JsStatement>();
for (JetDeclaration declaration : expression.getDeclarations()) {
for (JetDeclaration declaration : getDeclarationsForNamespace(context.bindingContext(), namespace)) {
initializerStatements.addAll(declaration.accept(this, context));
}
return initializerStatements;
@@ -82,9 +85,6 @@ public final class InitializerVisitor extends TranslatorVisitor<List<JsStatement
@NotNull
public List<JsStatement> traverse(@NotNull JetDeclaration declaration, @NotNull TranslationContext context) {
if (declaration instanceof JetNamespace) {
return traverseNamespace((JetNamespace) declaration, context);
}
if (declaration instanceof JetClass) {
return traverseClass((JetClass) declaration, context);
}
@@ -3,7 +3,7 @@ package org.jetbrains.k2js.translate.initializer;
import com.google.dart.compiler.backend.js.ast.JsFunction;
import com.google.dart.compiler.util.AstUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.psi.JetNamespace;
import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor;
import org.jetbrains.k2js.translate.context.TranslationContext;
import static org.jetbrains.k2js.translate.utils.TranslationUtils.functionWithScope;
@@ -14,10 +14,11 @@ import static org.jetbrains.k2js.translate.utils.TranslationUtils.functionWithSc
public final class NamespaceInitializerTranslator extends AbstractInitializerTranslator {
@NotNull
private final JetNamespace namespace;
private final NamespaceDescriptor namespace;
public NamespaceInitializerTranslator(@NotNull JetNamespace namespace, @NotNull TranslationContext context) {
super(context.getScopeForElement(namespace).innerScope
//TODO: pass namespace descriptor here
public NamespaceInitializerTranslator(@NotNull NamespaceDescriptor namespace, @NotNull TranslationContext context) {
super(context.getScopeForDescriptor(namespace).innerScope
("initializer " + namespace.getName()), context);
this.namespace = namespace;
}
@@ -26,7 +27,7 @@ public final class NamespaceInitializerTranslator extends AbstractInitializerTra
@NotNull
protected JsFunction generateInitializerFunction() {
JsFunction result = functionWithScope(initializerMethodScope);
result.setBody(AstUtil.newBlock(translatePropertyAndAnonymousInitializers(namespace)));
result.setBody(AstUtil.newBlock(translateNamespaceInitializers(namespace)));
return result;
}
@@ -47,7 +47,7 @@ public final class BindingUtils {
@NotNull
public static NamespaceDescriptor getNamespaceDescriptor(@NotNull BindingContext context,
@NotNull JetNamespace declaration) {
@NotNull JetFile declaration) {
return getDescriptorForExpression(context, declaration, NamespaceDescriptor.class);
}
@@ -77,6 +77,30 @@ public final class BindingUtils {
return (JetClass) result;
}
@NotNull
public static List<JetDeclaration> getDeclarationsForNamespace(@NotNull BindingContext bindingContext,
@NotNull NamespaceDescriptor namespace) {
List<JetDeclaration> declarations = new ArrayList<JetDeclaration>();
for (DeclarationDescriptor descriptor : namespace.getMemberScope().getAllDescriptors()) {
JetDeclaration declaration = BindingUtils.getDeclarationForDescriptor(bindingContext, descriptor);
if (declaration != null) {
declarations.add(declaration);
}
}
return declarations;
}
@Nullable
private static JetDeclaration getDeclarationForDescriptor(@NotNull BindingContext context,
@NotNull DeclarationDescriptor descriptor) {
PsiElement result = context.get(BindingContext.DESCRIPTOR_TO_DECLARATION, descriptor);
if (result == null) {
return null;
}
assert result instanceof JetDeclaration : "Descriptor should correspond to an element.";
return (JetDeclaration) result;
}
@NotNull
public static List<ClassDescriptor> getSuperclassDescriptors(@NotNull BindingContext context,
@NotNull JetClass classDeclaration) {
@@ -83,9 +83,9 @@ public final class DescriptorUtils {
@NotNull
public static PropertyDescriptor getPropertyByName(@NotNull JetScope scope,
@NotNull String name) {
VariableDescriptor variable = scope.getVariable(name);
VariableDescriptor variable = scope.getLocalVariable(name);
if (variable == null) {
variable = scope.getPropertyByFieldReference(name);
variable = scope.getPropertyByFieldReference("$" + name);
}
PropertyDescriptor descriptor = (PropertyDescriptor) variable;
assert descriptor != null : "Must have a descriptor.";
@@ -126,8 +126,9 @@ public final class DescriptorUtils {
return (functionDescriptor.getReceiverParameter().exists());
}
//TODO: make "anonymous" a constant
@NotNull
public static String nameForNamespace(@NotNull NamespaceDescriptor descriptor) {
public static String getNameForNamespace(@NotNull NamespaceDescriptor descriptor) {
String name = descriptor.getName();
if (name.equals("")) {
return "Anonymous";
@@ -5,7 +5,7 @@ import org.jetbrains.jet.lang.cfg.pseudocode.JetControlFlowDataTraceFactory;
import org.jetbrains.jet.lang.diagnostics.Diagnostic;
import org.jetbrains.jet.lang.diagnostics.Severity;
import org.jetbrains.jet.lang.diagnostics.UnresolvedReferenceDiagnostic;
import org.jetbrains.jet.lang.psi.JetNamespace;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.jet.lang.resolve.BindingTrace;
import org.jetbrains.jet.lang.resolve.java.AnalyzerFacade;
@@ -127,20 +127,11 @@ public class JetTestUtils {
}
};
public static BindingContext analyzeNamespace(@NotNull JetNamespace namespace, @NotNull JetControlFlowDataTraceFactory flowDataTraceFactory) {
return AnalyzerFacade.analyzeOneNamespaceWithJavaIntegration(namespace, flowDataTraceFactory);
public static BindingContext analyzeNamespace(@NotNull JetFile file, @NotNull JetControlFlowDataTraceFactory flowDataTraceFactory) {
return AnalyzerFacade.analyzeOneFileWithJavaIntegration(file, flowDataTraceFactory);
}
// public static JetCoreEnvironment createEnvironmentWithMockJdk(Disposable disposable) {
// JetCoreEnvironment environment = new JetCoreEnvironment(disposable);
// final File rtJar = new File(JetTestCaseBuilder.getHomeDirectory(), "compiler/testData/mockJDK-1.7/jre/lib/rt.jar");
// environment.addToClasspath(rtJar);
// environment.addToClasspath(new File(JetTestCaseBuilder.getHomeDirectory(), "compiler/testData/mockJDK-1.7/jre/lib/annotations.jar"));
// return environment;
// }
public static void mkdirs(File file) throws IOException {
if (file.isDirectory()) {
return;
@@ -1,4 +1,4 @@
namespace foo
package foo
class Test() {
}
@@ -1,4 +1,4 @@
namespace foo
package foo
class Test(a : Int, b : Int) {
val c = a
@@ -1,4 +1,4 @@
namespace foo
package foo
class Test(a : Int) {
val b = a
@@ -1,4 +1,4 @@
namespace foo
package foo
class A(var b : Int, var a : String) {
@@ -1,4 +1,4 @@
namespace foo
package foo
class Slot() {
var vitality: Int = 10000
@@ -1,4 +1,4 @@
namespace foo
package foo
class Test() {
fun method() : Boolean {
@@ -1,4 +1,4 @@
namespace foo
package foo
class A(var b : Int, var a : String) {
@@ -1,4 +1,4 @@
namespace foo
package foo
class Test() {
val p = true
@@ -1,4 +1,4 @@
namespace foo
package foo
class Test() {
var a : Int
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Int {
val a = 2;
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Int {
val a = 2;
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean
{
@@ -1,4 +1,4 @@
namespace foo
package foo
val a1 = Array<Int>(10)
@@ -1,4 +1,4 @@
namespace foo
package foo
val a1 = Array<Int>(0)
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var sum = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : String {
return apply( "OK", {(arg: String) => arg } )
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : String {
return if (apply( 5, {(arg: Int) => arg + 13 } ) == 18) "OK" else "fail"
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var sum = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
fun apply(f : fun(Int) : Int, t : Int) : Int {
return f(t)
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean
@@ -1,4 +1,4 @@
namespace foo
package foo
fun sum(param1 : Int, param2 : Int) : Int {
return param1 + param2;
@@ -1,4 +1,4 @@
namespace foo
package foo
var b = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
var a = 3
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
@@ -1,4 +1,4 @@
namespace foo
package foo
class RangeIterator(val start : Int, var count : Int, val reversed : Boolean) {
@@ -1,4 +1,4 @@
namespace foo
package foo
val y = 3
@@ -1,4 +1,4 @@
namespace foo
package foo
fun f(): Int {
var x: Int = 1
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
val a = 2;
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean
{
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean
{
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var a = 3;
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var a = 3;
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : String {
var number = 3
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : String {
var right = 2
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : String {
var name = "Hello"
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var i = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var i = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var i = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var i = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
var x = 2;
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
@@ -1,4 +1,4 @@
namespace foo
package foo
fun box() : Boolean {
@@ -1,4 +1,4 @@
namespace foo
package foo
fun Int.same() : Int {
return this
@@ -1,4 +1,4 @@
namespace foo
package foo
class M() {
var m = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
fun apply(i : Int, f : fun Int.(Int) : Int) = i.f(1);
@@ -1,4 +1,4 @@
namespace foo
package foo
class A(var a : Int) {
fun eval() = f();
@@ -1,4 +1,4 @@
namespace foo
package foo
fun Int.same() : Int {
return this
@@ -1,4 +1,4 @@
namespace foo
package foo
fun Int.quadruple() : Int {
return this * 4;
@@ -1,4 +1,4 @@
namespace foo
package foo
class A(var a : Int) {
@@ -1,4 +1,4 @@
namespace foo
package foo
open class A(var a : Int) {
@@ -1,4 +1,4 @@
namespace foo
package foo
class A() : B() {
@@ -1,4 +1,4 @@
namespace foo
package foo
open class A() {
@@ -1,4 +1,4 @@
namespace foo
package foo
class C() : B() {
{
@@ -1,4 +1,4 @@
namespace foo
package foo
open class A() {
@@ -1,4 +1,4 @@
namespace foo
package foo
open class A() {
var a = 3;
@@ -1,4 +1,4 @@
namespace foo
package foo
open class C() {
open fun f(): Any = "C f"
@@ -1,4 +1,4 @@
namespace foo
package foo
open class C(a : Int) {
val b = a
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.ArrayList;
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.ArrayList;
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.ArrayList;
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.ArrayList;
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.ArrayList;
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.ArrayList;
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.ArrayList;
@@ -1,4 +1,4 @@
namespace foo
package foo
class A() {
@@ -1,4 +1,4 @@
namespace foo
package foo
class A() {
@@ -1,4 +1,4 @@
namespace foo
package foo
class A(t : Int) {
@@ -1,4 +1,4 @@
namespace foo
package foo
class A() {
@@ -1,4 +1,4 @@
namespace foo
package foo
class MyInt(i : Int) {
var b = i
@@ -1,4 +1,4 @@
namespace foo
package foo
import java.util.*
@@ -1,4 +1,4 @@
namespace foo
package foo
var a = MyInt()
@@ -1,4 +1,4 @@
namespace foo
package foo
class A() {
@@ -1,4 +1,4 @@
namespace foo
package foo
class A() {
@@ -1,4 +1,4 @@
namespace foo
package foo
class A(i : Int) {
@@ -1,4 +1,4 @@
namespace foo
package foo
class myInt(a : Int) {
val value = a;
@@ -1,4 +1,4 @@
namespace foo
package foo
class MyInt() {
var b = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
var a = MyInt()
@@ -1,4 +1,4 @@
namespace foo
package foo
class MyInt() {
var b = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
class MyInt() {
var b = 0
@@ -1,4 +1,4 @@
namespace foo
package foo
class MyInt(i : Int) {
var b = i
@@ -1,4 +1,4 @@
namespace foo
package foo
class MyInt(i : Int) {
var b = i

Some files were not shown because too many files have changed in this diff Show More