From b13f7431f2059ff38e406552b6ec3fe8ebb720f0 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Tue, 26 Mar 2019 22:32:42 +0300 Subject: [PATCH] New J2K: Fix existing test data --- .../anonymousClass/kt-13146.new.kt | 4 +- .../expressionIndex.new.kt | 1 - .../arrayInitializationStatement.new.kt | 2 +- ...nitializationStatementWithDimension.new.kt | 1 + ...tializationStatementWithDimension3d.new.kt | 2 +- .../arrayType/d2StringEmptyArray.new.kt | 2 +- .../arrayType/d3StringEmptyArray.new.kt | 2 +- .../nullability-settings.new.kt | 6 +-- .../assignmentExpression/nullability.new.kt | 6 --- .../fileOrElement/class/ClassShadowing.new.kt | 17 +++++++ .../class/classWithFields.new.kt | 4 -- .../class/classWithMultiplyFields.new.kt | 5 -- .../fileOrElement/class/utilityClass4.new.kt | 10 ++++ .../fileOrElement/comments/comments.new.kt | 29 ++++++++++++ .../fileOrElement/comments/comments2.new.kt | 33 +++++++++++++ .../conditionalExpression/simple.new.kt | 1 - .../constructors/artificialPrimary.new.kt | 4 +- .../constructors/customerBuilder.kt | 1 + .../constructors/customerBuilder.new.kt | 10 ++-- .../fieldsInitializedFromParams6.new.kt | 4 +- .../constructors/genericIdentifier.new.kt | 12 ++--- .../constructors/identifier.new.kt | 8 ++-- .../nestedClassNameInParameterDefaults.new.kt | 4 +- ...nestedClassNameInParameterDefaults2.new.kt | 2 +- ...nestedClassNameInParameterDefaults3.new.kt | 2 +- ...nestedClassNameInParameterDefaults4.new.kt | 2 +- ...condaryConstructorWithDefaultValues.new.kt | 4 +- ...ondaryConstructorWithDefaultValues2.new.kt | 4 +- .../secondaryConstructorsInNestedClass.new.kt | 46 +++++++++++++++++++ .../constructors/withManyDefaultParams.new.kt | 6 +-- .../AssignFieldInsideSetter2.new.kt | 12 +++++ .../detectProperties/DataClass.new.kt | 2 +- .../DataClassWithAnnotations.new.kt | 2 +- .../GetterWithSideEffect1.new.kt | 4 +- .../GetterWithSideEffect2.new.kt | 6 +-- .../GetterWithSideEffect3.new.kt | 6 +-- .../GetterWithSideEffect4.new.kt | 2 +- .../GetterWithSideEffect5.new.kt | 7 --- .../detectProperties/PropertyType.new.kt | 13 +++--- .../SetterWithSideEffect1.new.kt | 4 +- .../SetterWithSideEffect2.new.kt | 6 +-- .../SetterWithSideEffect4.new.kt | 2 +- .../SetterWithSideEffect5.new.kt | 2 +- .../SetterWithSideEffect6.new.kt | 2 +- .../docComments/primaryConstructorDoc.new.kt | 6 +-- .../enum/primaryPrivateConstructor.new.kt | 3 ++ .../fileOrElement/equals/EqOperator.new.kt | 2 +- .../fileOrElement/equals/Equals2.new.kt | 9 ---- .../fileOrElement/equals/Equals3.new.kt | 9 ---- .../fileOrElement/equals/Equals4.new.kt | 5 -- .../{Equals1.new.kt => ObjectsEquals.new.kt} | 2 + .../fileOrElement/field/conversion.new.kt | 13 ++++++ .../field/needInitializer.new.kt | 2 +- .../fileOrElement/field/specifyType.new.kt | 29 ++++++------ .../fileOrElement/field/varWithInit.new.kt | 2 +- .../for/forThroughListIndices.new.kt | 4 +- .../for/forThroughListIndicesNE.new.kt | 6 ++- .../fileOrElement/for/overMapEntries.new.kt | 2 +- .../formatting/nonStaticMembers.new.kt | 10 ++++ .../nonStaticMembersWithComments.new.kt | 21 +++++++++ ...aticAndNonStaticMembersWithComments.new.kt | 31 +++++++++++++ .../staticMembersWithComments.new.kt | 21 +++++++++ .../fileOrElement/function/varVararg.new.kt | 2 +- .../classOneExtendsBaseGeneric.new.kt | 2 +- ...seWithZeroParamsNonEmptyConstructor.new.kt | 4 +- .../isOperator/complicatedExpression.new.kt | 1 - j2k/testData/fileOrElement/issues/Outer.kt | 33 +++++++++++++ .../fileOrElement/issues/kt-14248.new.kt | 1 - .../fileOrElement/issues/kt-19634.new.kt | 5 ++ .../fileOrElement/issues/kt-5294.new.kt | 3 -- .../fileOrElement/issues/kt-543-boxed.new.kt | 2 +- .../fileOrElement/issues/kt-543-mixed.new.kt | 10 ++++ .../fileOrElement/issues/kt-638.new.kt | 14 +++--- .../fileOrElement/issues/kt-794-mixed.new.kt | 11 +++++ .../fileOrElement/issues/kt-809-string.new.kt | 10 ++-- .../fileOrElement/issues/kt-809.new.kt | 19 -------- .../fileOrElement/issues/kt-820-field.new.kt | 13 ------ .../fileOrElement/issues/kt-820.new.kt | 15 ------ .../fileOrElement/issues/kt-824.new.kt | 15 ++---- .../fileOrElement/issues/kt-836.new.kt | 23 ---------- .../issues/spaceBeforeAssignment.new.kt | 5 -- .../kotlinApiAccess/ClassObjectMembers.java | 5 +- .../complicatedExampleFromJavaTutorial.new.kt | 4 +- .../fileOrElement/list/ForEach.new.kt | 4 +- j2k/testData/fileOrElement/list/Lists.new.kt | 6 +-- .../literalExpression/double.new.kt | 24 ++++++++++ .../literalExpression/exponentDouble.new.kt | 9 ++++ .../literalExpression/exponentFloat.new.kt | 10 ++++ .../literalExpression/float.new.kt | 26 +++++++++++ .../literalExpression/long.new.kt | 2 +- .../literalExpression/stringOctalChars.new.kt | 7 --- .../methodCallExpression/genericMethod.new.kt | 4 +- .../FunctionReturnValue.new.kt | 6 +-- .../FunctionReturnValue2.new.kt | 10 ++-- .../mutableCollections/Iterator2.new.kt | 2 +- .../genericClassInvocation.new.kt | 2 +- .../newListAndNewMember.new.kt | 4 +- .../nullability/nullableField.new.kt | 45 ++++++++++++++++++ .../nullability/nullableInitializer4.new.kt | 19 ++++++++ .../overloads/Annotations.new.kt | 6 +-- .../fileOrElement/overloads/Override.new.kt | 4 +- .../fileOrElement/overloads/Simple.new.kt | 2 +- .../postProcessing/GetOperator.new.kt | 2 +- .../postProcessing/RedundantTypeCast.new.kt | 7 +++ .../projections/projections.new.kt | 8 ++-- .../rawGenerics/kt-540-map.new.kt | 2 +- .../rawGenerics/kt-540-rawGenericClass.new.kt | 4 +- .../fileOrElement/rawGenerics/kt-540.new.kt | 3 +- .../returnStatement/currentMethodBug.new.kt | 4 +- .../settings/specifyFieldTypeByDefault.new.kt | 6 +-- .../PrivateStaticMethods1.new.kt | 11 +++++ .../PrivateStaticMethods4.new.kt | 16 +++++++ .../switch/comlicatedFallDown.new.kt | 2 +- .../toKotlinClasses/LibraryFunctions.new.kt | 6 +-- .../iterableAndIterator.new.kt | 4 +- .../iterableAndIterator2.new.kt | 6 ++- .../iterableAndIterator3.new.kt | 2 +- .../WithReturnInAnonymousClass.new.kt | 8 ++-- .../WithReturnInAnonymousClass2.new.kt | 8 ++-- .../typeParameters/needTypeArgs.new.kt | 8 ++-- .../typeParameters/rawTypeCast.new.kt | 2 +- 121 files changed, 655 insertions(+), 324 deletions(-) delete mode 100644 j2k/testData/fileOrElement/arrayAccessExpression/expressionIndex.new.kt create mode 100644 j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension.new.kt delete mode 100644 j2k/testData/fileOrElement/assignmentExpression/nullability.new.kt create mode 100644 j2k/testData/fileOrElement/class/ClassShadowing.new.kt delete mode 100644 j2k/testData/fileOrElement/class/classWithFields.new.kt delete mode 100644 j2k/testData/fileOrElement/class/classWithMultiplyFields.new.kt create mode 100644 j2k/testData/fileOrElement/class/utilityClass4.new.kt create mode 100644 j2k/testData/fileOrElement/comments/comments.new.kt create mode 100644 j2k/testData/fileOrElement/comments/comments2.new.kt delete mode 100644 j2k/testData/fileOrElement/conditionalExpression/simple.new.kt create mode 100644 j2k/testData/fileOrElement/constructors/secondaryConstructorsInNestedClass.new.kt create mode 100644 j2k/testData/fileOrElement/detectProperties/AssignFieldInsideSetter2.new.kt delete mode 100644 j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect5.new.kt create mode 100644 j2k/testData/fileOrElement/enum/primaryPrivateConstructor.new.kt delete mode 100644 j2k/testData/fileOrElement/equals/Equals2.new.kt delete mode 100644 j2k/testData/fileOrElement/equals/Equals3.new.kt delete mode 100644 j2k/testData/fileOrElement/equals/Equals4.new.kt rename j2k/testData/fileOrElement/equals/{Equals1.new.kt => ObjectsEquals.new.kt} (87%) create mode 100644 j2k/testData/fileOrElement/field/conversion.new.kt create mode 100644 j2k/testData/fileOrElement/formatting/nonStaticMembers.new.kt create mode 100644 j2k/testData/fileOrElement/formatting/nonStaticMembersWithComments.new.kt create mode 100644 j2k/testData/fileOrElement/formatting/staticAndNonStaticMembersWithComments.new.kt create mode 100644 j2k/testData/fileOrElement/formatting/staticMembersWithComments.new.kt delete mode 100644 j2k/testData/fileOrElement/isOperator/complicatedExpression.new.kt create mode 100644 j2k/testData/fileOrElement/issues/Outer.kt delete mode 100644 j2k/testData/fileOrElement/issues/kt-14248.new.kt create mode 100644 j2k/testData/fileOrElement/issues/kt-19634.new.kt delete mode 100644 j2k/testData/fileOrElement/issues/kt-5294.new.kt create mode 100644 j2k/testData/fileOrElement/issues/kt-543-mixed.new.kt create mode 100644 j2k/testData/fileOrElement/issues/kt-794-mixed.new.kt delete mode 100644 j2k/testData/fileOrElement/issues/kt-809.new.kt delete mode 100644 j2k/testData/fileOrElement/issues/kt-820-field.new.kt delete mode 100644 j2k/testData/fileOrElement/issues/kt-820.new.kt delete mode 100644 j2k/testData/fileOrElement/issues/kt-836.new.kt delete mode 100644 j2k/testData/fileOrElement/issues/spaceBeforeAssignment.new.kt create mode 100644 j2k/testData/fileOrElement/literalExpression/double.new.kt create mode 100644 j2k/testData/fileOrElement/literalExpression/exponentDouble.new.kt create mode 100644 j2k/testData/fileOrElement/literalExpression/exponentFloat.new.kt create mode 100644 j2k/testData/fileOrElement/literalExpression/float.new.kt delete mode 100644 j2k/testData/fileOrElement/literalExpression/stringOctalChars.new.kt create mode 100644 j2k/testData/fileOrElement/nullability/nullableField.new.kt create mode 100644 j2k/testData/fileOrElement/nullability/nullableInitializer4.new.kt create mode 100644 j2k/testData/fileOrElement/postProcessing/RedundantTypeCast.new.kt create mode 100644 j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods1.new.kt create mode 100644 j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods4.new.kt diff --git a/j2k/testData/fileOrElement/anonymousClass/kt-13146.new.kt b/j2k/testData/fileOrElement/anonymousClass/kt-13146.new.kt index 04f5e3abad0..d6c30503f90 100644 --- a/j2k/testData/fileOrElement/anonymousClass/kt-13146.new.kt +++ b/j2k/testData/fileOrElement/anonymousClass/kt-13146.new.kt @@ -1,5 +1,5 @@ class Test { - var someRunnable: Runnable? = object : Runnable { + var someRunnable: Runnable = object : Runnable { override fun run() { this.run() } @@ -15,7 +15,7 @@ class Test2 { } class Handler { - fun postDelayed(r: Runnable?, time: Long) {} + fun postDelayed(r: Runnable, time: Long) {} } class Test3 { diff --git a/j2k/testData/fileOrElement/arrayAccessExpression/expressionIndex.new.kt b/j2k/testData/fileOrElement/arrayAccessExpression/expressionIndex.new.kt deleted file mode 100644 index 501e3a92517..00000000000 --- a/j2k/testData/fileOrElement/arrayAccessExpression/expressionIndex.new.kt +++ /dev/null @@ -1 +0,0 @@ -myArray[myLibrary!!.calculateIndex(100)] \ No newline at end of file diff --git a/j2k/testData/fileOrElement/arrayType/arrayInitializationStatement.new.kt b/j2k/testData/fileOrElement/arrayType/arrayInitializationStatement.new.kt index f3d373d93a6..77debe93a02 100644 --- a/j2k/testData/fileOrElement/arrayType/arrayInitializationStatement.new.kt +++ b/j2k/testData/fileOrElement/arrayType/arrayInitializationStatement.new.kt @@ -1 +1 @@ -val d2: Array = arrayOf() \ No newline at end of file +val d2: Array = arrayOf() \ No newline at end of file diff --git a/j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension.new.kt b/j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension.new.kt new file mode 100644 index 00000000000..4a3f34f4de2 --- /dev/null +++ b/j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension.new.kt @@ -0,0 +1 @@ +val d2: Array = arrayOfNulls(5) \ No newline at end of file diff --git a/j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension3d.new.kt b/j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension3d.new.kt index 9b573a3b8f3..c92369fb13f 100644 --- a/j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension3d.new.kt +++ b/j2k/testData/fileOrElement/arrayType/arrayInitializationStatementWithDimension3d.new.kt @@ -1 +1 @@ -val d3: Array?> = Array(5) { arrayOfNulls(5) } \ No newline at end of file +val d3 = Array>(5) { arrayOfNulls(5) } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/arrayType/d2StringEmptyArray.new.kt b/j2k/testData/fileOrElement/arrayType/d2StringEmptyArray.new.kt index c8636888837..0db72939b6b 100644 --- a/j2k/testData/fileOrElement/arrayType/d2StringEmptyArray.new.kt +++ b/j2k/testData/fileOrElement/arrayType/d2StringEmptyArray.new.kt @@ -1 +1 @@ -val ss: Array?> = Array(5) { arrayOfNulls(5) } \ No newline at end of file +val ss = Array>(5) { arrayOfNulls(5) } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/arrayType/d3StringEmptyArray.new.kt b/j2k/testData/fileOrElement/arrayType/d3StringEmptyArray.new.kt index 0d13952255a..14d4dd69cf5 100644 --- a/j2k/testData/fileOrElement/arrayType/d3StringEmptyArray.new.kt +++ b/j2k/testData/fileOrElement/arrayType/d3StringEmptyArray.new.kt @@ -1 +1 @@ -val sss: Array?>?> = Array(5) { Array(5) { arrayOfNulls(5) } } \ No newline at end of file +val sss = Array(5) { Array>(5) { arrayOfNulls(5) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/assignmentExpression/nullability-settings.new.kt b/j2k/testData/fileOrElement/assignmentExpression/nullability-settings.new.kt index af2b2041250..b481deca041 100644 --- a/j2k/testData/fileOrElement/assignmentExpression/nullability-settings.new.kt +++ b/j2k/testData/fileOrElement/assignmentExpression/nullability-settings.new.kt @@ -2,9 +2,9 @@ // !specifyLocalVariableTypeByDefault: true internal class Foo { - fun foo(o: HashSet<*>?) { - val o2: HashSet<*>? = o + fun foo(o: HashSet<*>) { + val o2: HashSet<*> = o var foo: Int = 0 - foo = o2!!.size + foo = o2.size } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/assignmentExpression/nullability.new.kt b/j2k/testData/fileOrElement/assignmentExpression/nullability.new.kt deleted file mode 100644 index 538deb1d4de..00000000000 --- a/j2k/testData/fileOrElement/assignmentExpression/nullability.new.kt +++ /dev/null @@ -1,6 +0,0 @@ -internal class Foo { - fun foo(o: HashSet<*>?) { - var foo = 0 - foo = o!!.size - } -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/class/ClassShadowing.new.kt b/j2k/testData/fileOrElement/class/ClassShadowing.new.kt new file mode 100644 index 00000000000..d6007b27148 --- /dev/null +++ b/j2k/testData/fileOrElement/class/ClassShadowing.new.kt @@ -0,0 +1,17 @@ +package test + +class Short(s: String?) { + companion object { + fun valueOf(value: String): Short { + return Short(value) + } + } +} + +internal object Test { + fun test() { + Short.valueOf("1") + test.Short.valueOf("1") + java.lang.Short.valueOf("1") + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/class/classWithFields.new.kt b/j2k/testData/fileOrElement/class/classWithFields.new.kt deleted file mode 100644 index 6dc1e950f04..00000000000 --- a/j2k/testData/fileOrElement/class/classWithFields.new.kt +++ /dev/null @@ -1,4 +0,0 @@ -internal class T { - var a: String? = "abc" - var b = 10 -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/class/classWithMultiplyFields.new.kt b/j2k/testData/fileOrElement/class/classWithMultiplyFields.new.kt deleted file mode 100644 index aa37c7766a7..00000000000 --- a/j2k/testData/fileOrElement/class/classWithMultiplyFields.new.kt +++ /dev/null @@ -1,5 +0,0 @@ -internal class T { - var a: String? = null - var b: String? = null - var c: String? = "abc" -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/class/utilityClass4.new.kt b/j2k/testData/fileOrElement/class/utilityClass4.new.kt new file mode 100644 index 00000000000..c578b2e51ef --- /dev/null +++ b/j2k/testData/fileOrElement/class/utilityClass4.new.kt @@ -0,0 +1,10 @@ +internal object Util { + const val publicStr = "" + internal const val protectedStr = "" + const val packageStr = "" + private const val privateStr = "" + fun publicMethod() {} + internal fun protectedMethod() {} + fun packageMethod() {} + private fun privateMethod() {} +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/comments/comments.new.kt b/j2k/testData/fileOrElement/comments/comments.new.kt new file mode 100644 index 00000000000..264ae39595f --- /dev/null +++ b/j2k/testData/fileOrElement/comments/comments.new.kt @@ -0,0 +1,29 @@ +// ERROR: Class 'A' is not abstract and does not implement abstract member public abstract fun run(): Unit defined in java.lang.Runnable +package foo + +// we use package 'foo' + +// imports: +import java.util.ArrayList + +// we need ArrayList +// let's declare a class: +internal class A /* just a sample name*/ : Runnable /* let's implement Runnable */ { + fun foo /* again a sample name */(p: Int /* parameter p */, c: Char /* parameter c */) { + // let's print something: + println("1") // print 1 + println("2") // print 2 + + println("3") // print 3 + + // end of printing + + if (p > 0) { // do this only when p > 0 + // we print 4 and return + println("3") + return // do not continue + } + + // some code to be added + } +} // end of class A \ No newline at end of file diff --git a/j2k/testData/fileOrElement/comments/comments2.new.kt b/j2k/testData/fileOrElement/comments/comments2.new.kt new file mode 100644 index 00000000000..3ae2e71c03a --- /dev/null +++ b/j2k/testData/fileOrElement/comments/comments2.new.kt @@ -0,0 +1,33 @@ +// ERROR: A 'return' expression required in a function with a block body ('{...}') +// ERROR: A 'return' expression required in a function with a block body ('{...}') +package foo + +internal class A { + private/*it's private*/ val field = 0 + fun /* nothing to return */ foo(/* no parameters at all */) { + // let declare a variable + // with 2 comments before + val /*int*/ a /* it's a */ = 2 /* it's 2 */ + 1 /* it's 1 */ // variable a declared + } // end of foo + + fun /* we return int*/ foo( /*int*/ p: Int/* parameter p */): Int { /* body is empty */ + } + + /*it's public*/ fun foo(s: String?): Char {} + protected/*it's protected*/ fun foo(c: Char) {} + /** + * Method description. + * Multi-line method description. + * + * + * @param param1 param1 description + * @param param2 param2 description + * + * @param param3 param3 description + */ + fun foo(param1: String?, param2: String?, param3: String?) {} + + companion object { + /*it's public*/const /*and static*/ val/*and final*/ C = 1 + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/conditionalExpression/simple.new.kt b/j2k/testData/fileOrElement/conditionalExpression/simple.new.kt deleted file mode 100644 index 3df43253875..00000000000 --- a/j2k/testData/fileOrElement/conditionalExpression/simple.new.kt +++ /dev/null @@ -1 +0,0 @@ -if (a!!.isEmpty()) 0 else 1 \ No newline at end of file diff --git a/j2k/testData/fileOrElement/constructors/artificialPrimary.new.kt b/j2k/testData/fileOrElement/constructors/artificialPrimary.new.kt index 03903869fd4..deb70acd949 100644 --- a/j2k/testData/fileOrElement/constructors/artificialPrimary.new.kt +++ b/j2k/testData/fileOrElement/constructors/artificialPrimary.new.kt @@ -1,6 +1,6 @@ // ERROR: Property must be initialized or be abstract class Test { - private val s: String? + private val s: String internal var b = false internal var d = 0.0 @@ -8,7 +8,7 @@ class Test { b = true } - constructor(s: String?) { + constructor(s: String) { this.s = s } } diff --git a/j2k/testData/fileOrElement/constructors/customerBuilder.kt b/j2k/testData/fileOrElement/constructors/customerBuilder.kt index 3ef3e091bd5..631b47f8485 100644 --- a/j2k/testData/fileOrElement/constructors/customerBuilder.kt +++ b/j2k/testData/fileOrElement/constructors/customerBuilder.kt @@ -12,6 +12,7 @@ internal class Customer(val firstName: String, val lastName: String) { } internal class CustomerBuilder { + var _firstName = "Homer" var _firstName = "Homer" var _lastName = "Simpson" diff --git a/j2k/testData/fileOrElement/constructors/customerBuilder.new.kt b/j2k/testData/fileOrElement/constructors/customerBuilder.new.kt index 42506f73f7a..10a7cc9f54e 100644 --- a/j2k/testData/fileOrElement/constructors/customerBuilder.new.kt +++ b/j2k/testData/fileOrElement/constructors/customerBuilder.new.kt @@ -1,6 +1,6 @@ package org.test.customer -internal class Customer(val firstName: String?, val lastName: String?) { +internal class Customer(val firstName: String, val lastName: String) { init { doSmthBefore() doSmthAfter() @@ -12,14 +12,14 @@ internal class Customer(val firstName: String?, val lastName: String?) { } internal class CustomerBuilder { - var _firstName: String? = "Homer" - var _lastName: String? = "Simpson" - fun WithFirstName(firstName: String?): CustomerBuilder { + var _firstName = "Homer" + var _lastName = "Simpson" + fun WithFirstName(firstName: String): CustomerBuilder { _firstName = firstName return this } - fun WithLastName(lastName: String?): CustomerBuilder { + fun WithLastName(lastName: String): CustomerBuilder { _lastName = lastName return this } diff --git a/j2k/testData/fileOrElement/constructors/fieldsInitializedFromParams6.new.kt b/j2k/testData/fileOrElement/constructors/fieldsInitializedFromParams6.new.kt index 6ee5fae078c..70b5c3efde6 100644 --- a/j2k/testData/fileOrElement/constructors/fieldsInitializedFromParams6.new.kt +++ b/j2k/testData/fileOrElement/constructors/fieldsInitializedFromParams6.new.kt @@ -1,5 +1,5 @@ -internal class C(x: String?) { - var x: Any? +internal class C(x: String) { + var x: Any init { this.x = x diff --git a/j2k/testData/fileOrElement/constructors/genericIdentifier.new.kt b/j2k/testData/fileOrElement/constructors/genericIdentifier.new.kt index 73e15967941..396bdeff881 100644 --- a/j2k/testData/fileOrElement/constructors/genericIdentifier.new.kt +++ b/j2k/testData/fileOrElement/constructors/genericIdentifier.new.kt @@ -1,18 +1,18 @@ class Identifier { - val name: T? + val name: T private var myHasDollar = false private var myNullable = true - constructor(name: T?) { + constructor(name: T) { this.name = name } - constructor(name: T?, isNullable: Boolean) { + constructor(name: T, isNullable: Boolean) { this.name = name myNullable = isNullable } - constructor(name: T?, hasDollar: Boolean, isNullable: Boolean) { + constructor(name: T, hasDollar: Boolean, isNullable: Boolean) { this.name = name myHasDollar = hasDollar myNullable = isNullable @@ -22,7 +22,7 @@ class Identifier { object User { fun main() { val i1: Identifier<*> = Identifier("name", false, true) - val i2 = Identifier("name", false) - val i3 = Identifier("name") + val i2 = Identifier("name", false) + val i3 = Identifier("name") } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/constructors/identifier.new.kt b/j2k/testData/fileOrElement/constructors/identifier.new.kt index b2eef0194ef..fd2410e795c 100644 --- a/j2k/testData/fileOrElement/constructors/identifier.new.kt +++ b/j2k/testData/fileOrElement/constructors/identifier.new.kt @@ -1,19 +1,19 @@ // ERROR: Property must be initialized or be abstract class Identifier { - val name: String? + val name: String private var myHasDollar = false private var myNullable = true - constructor(name: String?) { + constructor(name: String) { this.name = name } - constructor(name: String?, isNullable: Boolean) { + constructor(name: String, isNullable: Boolean) { this.name = name myNullable = isNullable } - constructor(name: String?, hasDollar: Boolean, isNullable: Boolean) { + constructor(name: String, hasDollar: Boolean, isNullable: Boolean) { this.name = name myHasDollar = hasDollar myNullable = isNullable diff --git a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults.new.kt b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults.new.kt index 3abf416f367..a559029bb51 100644 --- a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults.new.kt +++ b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults.new.kt @@ -1,6 +1,8 @@ -internal class A @JvmOverloads constructor(nested: Nested? = Nested(Nested.FIELD)) { +internal class A @JvmOverloads constructor(nested: Nested = Nested(Nested.FIELD)) { + internal class Nested(p: Int) { companion object { + const val FIELD = 0 } } diff --git a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.new.kt b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.new.kt index 412b10eed73..781f010b40d 100644 --- a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.new.kt +++ b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults2.new.kt @@ -1,4 +1,4 @@ -internal class A @JvmOverloads constructor(nested: Nested? = Nested(Nested.FIELD)) { +internal class A @JvmOverloads constructor(nested: Nested = Nested(Nested.FIELD)) { internal class Nested(p: Int) { companion object { const val FIELD = 0 diff --git a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.new.kt b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.new.kt index 31852bcc4a0..7b5ec9c0695 100644 --- a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.new.kt +++ b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults3.new.kt @@ -1,6 +1,6 @@ package pack -internal class A @JvmOverloads constructor(nested: Nested? = Nested(Nested.FIELD)) { +internal class A @JvmOverloads constructor(nested: Nested = Nested(Nested.FIELD)) { internal class Nested(p: Int) { companion object { const val FIELD = 0 diff --git a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.new.kt b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.new.kt index 31852bcc4a0..7b5ec9c0695 100644 --- a/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.new.kt +++ b/j2k/testData/fileOrElement/constructors/nestedClassNameInParameterDefaults4.new.kt @@ -1,6 +1,6 @@ package pack -internal class A @JvmOverloads constructor(nested: Nested? = Nested(Nested.FIELD)) { +internal class A @JvmOverloads constructor(nested: Nested = Nested(Nested.FIELD)) { internal class Nested(p: Int) { companion object { const val FIELD = 0 diff --git a/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues.new.kt b/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues.new.kt index 3be3810cb09..51a8e60348a 100644 --- a/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues.new.kt +++ b/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues.new.kt @@ -1,11 +1,11 @@ internal class A { - private var s: String? = "" + private var s = "" private var x = 0 constructor() {} @JvmOverloads - constructor(p: Int, s: String?, x: Int = 1) { + constructor(p: Int, s: String, x: Int = 1) { this.s = s this.x = x } diff --git a/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues2.new.kt b/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues2.new.kt index 90438b7d8c0..87987f6673a 100644 --- a/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues2.new.kt +++ b/j2k/testData/fileOrElement/constructors/secondaryConstructorWithDefaultValues2.new.kt @@ -1,9 +1,9 @@ internal class A() { - private var s: String? = "" + private var s = "" private var x = 0 @JvmOverloads - constructor(p: Int, s: String?, x: Int = 1) : this() { + constructor(p: Int, s: String, x: Int = 1) : this() { this.s = s this.x = x } diff --git a/j2k/testData/fileOrElement/constructors/secondaryConstructorsInNestedClass.new.kt b/j2k/testData/fileOrElement/constructors/secondaryConstructorsInNestedClass.new.kt new file mode 100644 index 00000000000..bbc9badc9b7 --- /dev/null +++ b/j2k/testData/fileOrElement/constructors/secondaryConstructorsInNestedClass.new.kt @@ -0,0 +1,46 @@ +// ERROR: Modifier 'protected' is not applicable inside 'object' +internal object Outer { + private class Nested1() { + + constructor(a: Int) : this() {} + + protected constructor(c: Char) : this() {} + + private constructor(b: Boolean) : this() {} + } + + protected class Nested2() { + + constructor(a: Int) : this() {} + + protected constructor(c: Char) : this() {} + + private constructor(b: Boolean) : this() {} + + } + + internal class Nested3() { + + constructor(a: Int) : this() {} + + protected constructor(c: Char) : this() {} + + private constructor(b: Boolean) : this() {} + } + + class Nested4() { + + constructor(a: Int) : this() {} + + protected constructor(c: Char) : this() {} + + private constructor(b: Boolean) : this() {} + } + + fun foo() { + val nested1 = Nested1(1) + val nested2 = Nested2(2) + val nested3 = Nested3(3) + val nested4 = Nested4(4) + } +} diff --git a/j2k/testData/fileOrElement/constructors/withManyDefaultParams.new.kt b/j2k/testData/fileOrElement/constructors/withManyDefaultParams.new.kt index a7063b061da..06bd6dcb715 100644 --- a/j2k/testData/fileOrElement/constructors/withManyDefaultParams.new.kt +++ b/j2k/testData/fileOrElement/constructors/withManyDefaultParams.new.kt @@ -1,6 +1,6 @@ // ERROR: Property must be initialized or be abstract class Test { - private val myName: String? + private val myName: String internal var a = false internal var b = 0.0 internal var c = 0f @@ -11,13 +11,13 @@ class Test { constructor() {} - constructor(name: String?) { + constructor(name: String) { myName = foo(name) } companion object { - internal fun foo(n: String?): String { + internal fun foo(n: String): String { return "" } } diff --git a/j2k/testData/fileOrElement/detectProperties/AssignFieldInsideSetter2.new.kt b/j2k/testData/fileOrElement/detectProperties/AssignFieldInsideSetter2.new.kt new file mode 100644 index 00000000000..89cf9e8335e --- /dev/null +++ b/j2k/testData/fileOrElement/detectProperties/AssignFieldInsideSetter2.new.kt @@ -0,0 +1,12 @@ +class C { + var x = "" + internal + set(x) { + println("setter invoked") + if (other != null) { + other!!.x = x + } + field = x + } + internal var other: C? = null +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/detectProperties/DataClass.new.kt b/j2k/testData/fileOrElement/detectProperties/DataClass.new.kt index 20617aa7a0f..4af7c675759 100644 --- a/j2k/testData/fileOrElement/detectProperties/DataClass.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/DataClass.new.kt @@ -1,4 +1,4 @@ -class Test(var id: String?, val name: String?, val age: Int) { +class Test(var id: String, val name: String, val age: Int) { init { println(age) diff --git a/j2k/testData/fileOrElement/detectProperties/DataClassWithAnnotations.new.kt b/j2k/testData/fileOrElement/detectProperties/DataClassWithAnnotations.new.kt index 0d81e4b1be8..4b7777fa515 100644 --- a/j2k/testData/fileOrElement/detectProperties/DataClassWithAnnotations.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/DataClassWithAnnotations.new.kt @@ -1,3 +1,3 @@ internal annotation class TestAnnotation -class Test(@field:TestAnnotation @set:TestAnnotation @get:TestAnnotation @param:TestAnnotation var arg: String?) \ No newline at end of file +class Test(@field:TestAnnotation @set:TestAnnotation @get:TestAnnotation @param:TestAnnotation var arg: String) \ No newline at end of file diff --git a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect1.new.kt b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect1.new.kt index 99c945c7a74..0577106bb5a 100644 --- a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect1.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect1.new.kt @@ -1,7 +1,7 @@ class C { - private var myX: String? = "" + private var myX = "" - var x: String? + var x: String get() { println("getter invoked") return myX diff --git a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect2.new.kt b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect2.new.kt index 830c4451ea9..fd71d6209f9 100644 --- a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect2.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect2.new.kt @@ -1,12 +1,12 @@ class C { - private var x: String? = "" + private var x = "" - fun getX(): String? { + fun getX(): String { println("getter invoked") return x } - fun setX(x: String?) { + fun setX(x: String) { this.x = x } diff --git a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect3.new.kt b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect3.new.kt index 89fcb101cbb..433b9281cc1 100644 --- a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect3.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect3.new.kt @@ -1,12 +1,12 @@ class C { - var x: String? = "" + var x = "" - fun getX(): String? { + fun getX(): String { println("getter invoked") return x } - fun setX(x: String?) { + fun setX(x: String) { this.x = x } } diff --git a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect4.new.kt b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect4.new.kt index fe671bf6b94..de42ff80f32 100644 --- a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect4.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect4.new.kt @@ -1,5 +1,5 @@ class C { - var x: String? = "" + var x = "" get() { println("getter invoked") return field diff --git a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect5.new.kt b/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect5.new.kt deleted file mode 100644 index fe671bf6b94..00000000000 --- a/j2k/testData/fileOrElement/detectProperties/GetterWithSideEffect5.new.kt +++ /dev/null @@ -1,7 +0,0 @@ -class C { - var x: String? = "" - get() { - println("getter invoked") - return field - } -} diff --git a/j2k/testData/fileOrElement/detectProperties/PropertyType.new.kt b/j2k/testData/fileOrElement/detectProperties/PropertyType.new.kt index 3f20788d465..c409787857d 100644 --- a/j2k/testData/fileOrElement/detectProperties/PropertyType.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/PropertyType.new.kt @@ -1,17 +1,16 @@ internal class A { - private val list1: ArrayList = ArrayList() - private val list2: MutableList = ArrayList() - private val myList3: MutableList = ArrayList() - - fun getList1(): List? { + private val list1: ArrayList = ArrayList() + private val list2: MutableList = ArrayList() + private val myList3: MutableList = ArrayList() + fun getList1(): List { return list1 } - fun getList2(): List? { + fun getList2(): List { return list2 } - val list3: List? + val list3: List get() = myList3 fun foo() { diff --git a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect1.new.kt b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect1.new.kt index de90b2a99e7..f1913abcb86 100644 --- a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect1.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect1.new.kt @@ -1,7 +1,7 @@ class C { - private var myX: String? = "" + private var myX = "" - var x: String? + var x: String get() = myX set(x) { println("setter invoked") diff --git a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect2.new.kt b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect2.new.kt index 9b49b1d28c3..cb356a939bc 100644 --- a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect2.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect2.new.kt @@ -1,11 +1,11 @@ class C { - private var x: String? = "" + private var x = "" - fun getX(): String? { + fun getX(): String { return x } - fun setX(x: String?) { + fun setX(x: String) { println("setter invoked") this.x = x } diff --git a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect4.new.kt b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect4.new.kt index 82f406d5f20..4ced9917081 100644 --- a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect4.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect4.new.kt @@ -1,5 +1,5 @@ class C { - var x: String? = "" + var x = "" set(value) { println("setter invoked") field = value diff --git a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect5.new.kt b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect5.new.kt index f083868b8b3..82005503a40 100644 --- a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect5.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect5.new.kt @@ -1,5 +1,5 @@ class C { - var x: String? = "" + var x = "" set(x) { println("setter invoked") field = x diff --git a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect6.new.kt b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect6.new.kt index b8395afc2a7..531904f9405 100644 --- a/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect6.new.kt +++ b/j2k/testData/fileOrElement/detectProperties/SetterWithSideEffect6.new.kt @@ -1,5 +1,5 @@ class C { - var x: String? = "" + var x = "" set(x) { println("old value: " + this.x) field = x diff --git a/j2k/testData/fileOrElement/docComments/primaryConstructorDoc.new.kt b/j2k/testData/fileOrElement/docComments/primaryConstructorDoc.new.kt index cd86e8ff8ab..7a55b3327a6 100644 --- a/j2k/testData/fileOrElement/docComments/primaryConstructorDoc.new.kt +++ b/j2k/testData/fileOrElement/docComments/primaryConstructorDoc.new.kt @@ -1,5 +1,5 @@ internal class CtorComment { - var myA: String? + var myA: String /** * This constructor is especially useful @@ -9,7 +9,7 @@ internal class CtorComment { } } +internal class CtorComment2 /** * This constructor is especially useful - */ -internal class CtorComment2 \ No newline at end of file + */ \ No newline at end of file diff --git a/j2k/testData/fileOrElement/enum/primaryPrivateConstructor.new.kt b/j2k/testData/fileOrElement/enum/primaryPrivateConstructor.new.kt new file mode 100644 index 00000000000..c4eb1bceb93 --- /dev/null +++ b/j2k/testData/fileOrElement/enum/primaryPrivateConstructor.new.kt @@ -0,0 +1,3 @@ +package demo + +internal enum class Color(val code: Int) \ No newline at end of file diff --git a/j2k/testData/fileOrElement/equals/EqOperator.new.kt b/j2k/testData/fileOrElement/equals/EqOperator.new.kt index 18730c8a824..d51fcd408ac 100644 --- a/j2k/testData/fileOrElement/equals/EqOperator.new.kt +++ b/j2k/testData/fileOrElement/equals/EqOperator.new.kt @@ -23,7 +23,7 @@ internal enum class EE { } internal class X { - fun foo(i1: I?, i2: I?, s1: String?, s2: String?, c1: C?, c2: C?, i: Int, o1: O?, o2: O?, e1: E?, e2: E?, bb1: BB?, bb2: BB?, arr1: IntArray, arr2: IntArray, ee1: EE?, ee2: EE?) { + fun foo(i1: I?, i2: I?, s1: String, s2: String, c1: C, c2: C, i: Int, o1: O, o2: O, e1: E, e2: E, bb1: BB, bb2: BB, arr1: IntArray, arr2: IntArray, ee1: EE?, ee2: EE) { if (i1 === i2) return if (s1 === s2) return if (c1 == c2) return diff --git a/j2k/testData/fileOrElement/equals/Equals2.new.kt b/j2k/testData/fileOrElement/equals/Equals2.new.kt deleted file mode 100644 index eb0ffa751db..00000000000 --- a/j2k/testData/fileOrElement/equals/Equals2.new.kt +++ /dev/null @@ -1,9 +0,0 @@ -internal class C { - fun foo1(s1: String?, s2: String?): Boolean { - return s1 == s2 - } - - fun foo2(s1: String?, s2: String?): Boolean { - return s1 != s2 - } -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/equals/Equals3.new.kt b/j2k/testData/fileOrElement/equals/Equals3.new.kt deleted file mode 100644 index 23a0448b0d2..00000000000 --- a/j2k/testData/fileOrElement/equals/Equals3.new.kt +++ /dev/null @@ -1,9 +0,0 @@ -internal class C { - fun equals(c: C?): Boolean { - return false - } - - fun foo(c1: C, c2: C?): Boolean { - return c1.equals(c2) - } -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/equals/Equals4.new.kt b/j2k/testData/fileOrElement/equals/Equals4.new.kt deleted file mode 100644 index 04ae0a81a75..00000000000 --- a/j2k/testData/fileOrElement/equals/Equals4.new.kt +++ /dev/null @@ -1,5 +0,0 @@ -internal class C { - fun foo(s1: String?, s2: String?, s3: String?, s4: String?): Boolean { - return s1 == s2 == (s3 != s4) - } -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/equals/Equals1.new.kt b/j2k/testData/fileOrElement/equals/ObjectsEquals.new.kt similarity index 87% rename from j2k/testData/fileOrElement/equals/Equals1.new.kt rename to j2k/testData/fileOrElement/equals/ObjectsEquals.new.kt index fa0efb69c46..1a2fd163185 100644 --- a/j2k/testData/fileOrElement/equals/Equals1.new.kt +++ b/j2k/testData/fileOrElement/equals/ObjectsEquals.new.kt @@ -1,3 +1,5 @@ +import java.util.Objects + internal interface I internal class C { diff --git a/j2k/testData/fileOrElement/field/conversion.new.kt b/j2k/testData/fileOrElement/field/conversion.new.kt new file mode 100644 index 00000000000..931f10e0d9d --- /dev/null +++ b/j2k/testData/fileOrElement/field/conversion.new.kt @@ -0,0 +1,13 @@ +internal class A { + private var i = byte.toInt() + + fun foo() { + i = 10 + } + + companion object { + + val byte: Byte + get() = 0 + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/field/needInitializer.new.kt b/j2k/testData/fileOrElement/field/needInitializer.new.kt index b0bd7306e28..53bea8d402d 100644 --- a/j2k/testData/fileOrElement/field/needInitializer.new.kt +++ b/j2k/testData/fileOrElement/field/needInitializer.new.kt @@ -1,5 +1,5 @@ class Init { - var field1: String? + var field1: String var field2: String? = null var field3: Int diff --git a/j2k/testData/fileOrElement/field/specifyType.new.kt b/j2k/testData/fileOrElement/field/specifyType.new.kt index 081cd1743bb..86b97ecf9e1 100644 --- a/j2k/testData/fileOrElement/field/specifyType.new.kt +++ b/j2k/testData/fileOrElement/field/specifyType.new.kt @@ -1,21 +1,20 @@ -import java.util.ArrayList +import java.util.* internal class A { - private val field1: List = ArrayList() - val field2: List = ArrayList() + private val field1: List = ArrayList() + val field2: List = ArrayList() val field3 = 0 protected val field4 = 0 - private var field5: List? = ArrayList() - var field6: List? = ArrayList() + private var field5: List = ArrayList() + var field6: List = ArrayList() private var field7 = 0 var field8 = 0 private var field9: String? = "a" private var field10: String? = foo() - private val anonymous: I = object : I { - } - var anonymous2: I? = object : I {} - private var anonymous3: I? = object : I {} - private var iimpl: I? = anonymous + private val anonymous: I = object : I {} + var anonymous2: I = object : I {} + private var anonymous3: I = object : I {} + private var iimpl = anonymous fun foo(): String { return "x" } @@ -30,17 +29,17 @@ internal class A { internal interface I - fun testAnonymousObject(i: Any?) { + fun testAnonymousObject(i: Any) { if (true) { - iimpl = i as I? + iimpl = i as I } else if (true) { - anonymous3 = i as I? + anonymous3 = i as I } val anonymousLocal1: I = object : I {} - var anonymousLocal2: I? = object : I {} + var anonymousLocal2: I = object : I {} val iimpl = anonymousLocal1 if (true) { - anonymousLocal2 = i as I? + anonymousLocal2 = i as I } } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/field/varWithInit.new.kt b/j2k/testData/fileOrElement/field/varWithInit.new.kt index d79f0339816..5f179a6e1ee 100644 --- a/j2k/testData/fileOrElement/field/varWithInit.new.kt +++ b/j2k/testData/fileOrElement/field/varWithInit.new.kt @@ -1,5 +1,5 @@ internal class Foo(a: Int, b: Int) internal class C { - var f: Foo? = Foo(1, 2) + var f = Foo(1, 2) } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/for/forThroughListIndices.new.kt b/j2k/testData/fileOrElement/for/forThroughListIndices.new.kt index 1a6adf1625e..de15d19be85 100644 --- a/j2k/testData/fileOrElement/for/forThroughListIndices.new.kt +++ b/j2k/testData/fileOrElement/for/forThroughListIndices.new.kt @@ -1,11 +1,11 @@ internal class C { - fun foo1(list: MutableList) { + fun foo1(list: MutableList) { for (i in list.indices) { list[i] = "a" } } - fun foo2(list: ArrayList) { + fun foo2(list: ArrayList) { for (i in list.indices) { list[i] = "a" } diff --git a/j2k/testData/fileOrElement/for/forThroughListIndicesNE.new.kt b/j2k/testData/fileOrElement/for/forThroughListIndicesNE.new.kt index 762ac8fd7b9..f87ac5eee4c 100644 --- a/j2k/testData/fileOrElement/for/forThroughListIndicesNE.new.kt +++ b/j2k/testData/fileOrElement/for/forThroughListIndicesNE.new.kt @@ -1,7 +1,9 @@ +import java.util.ArrayList + internal class C { - fun foo(list: MutableList) { + fun foo(list: MutableList) { for (i in list.indices) { list[i] = "a" } } -} +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/for/overMapEntries.new.kt b/j2k/testData/fileOrElement/for/overMapEntries.new.kt index 64adce4158f..3c140200d16 100644 --- a/j2k/testData/fileOrElement/for/overMapEntries.new.kt +++ b/j2k/testData/fileOrElement/for/overMapEntries.new.kt @@ -1,7 +1,7 @@ internal object Test { @JvmStatic fun main(args: Array) { - val resultMap: Map = HashMap() + val resultMap: Map = HashMap() for ((key, type) in resultMap) { if (key == "myKey") { println(type) diff --git a/j2k/testData/fileOrElement/formatting/nonStaticMembers.new.kt b/j2k/testData/fileOrElement/formatting/nonStaticMembers.new.kt new file mode 100644 index 00000000000..d74c636540d --- /dev/null +++ b/j2k/testData/fileOrElement/formatting/nonStaticMembers.new.kt @@ -0,0 +1,10 @@ +internal class F { + var i = 0 + + fun f1() {} + + + fun f2() {} + + fun f3() {} +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/formatting/nonStaticMembersWithComments.new.kt b/j2k/testData/fileOrElement/formatting/nonStaticMembersWithComments.new.kt new file mode 100644 index 00000000000..24945a292f6 --- /dev/null +++ b/j2k/testData/fileOrElement/formatting/nonStaticMembersWithComments.new.kt @@ -0,0 +1,21 @@ +internal class F { + var i = 0 + + //c1 + + /*c2*/ + + fun f1() {} + + + //c3 + + + //c4 + + fun f2() {} + + fun f3() {} + + //c5 +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/formatting/staticAndNonStaticMembersWithComments.new.kt b/j2k/testData/fileOrElement/formatting/staticAndNonStaticMembersWithComments.new.kt new file mode 100644 index 00000000000..1ef2d0b37fd --- /dev/null +++ b/j2k/testData/fileOrElement/formatting/staticAndNonStaticMembersWithComments.new.kt @@ -0,0 +1,31 @@ +internal class F { + + + //c3 + + + //c4 + + fun f2() {} + + fun f3() {} + + fun f4() {} + + companion object { + + //c1 + + /*c2*/ + + fun f1() {} + var i = 0 + + //c5 + + fun f5() {} + } + + //c6 + +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/formatting/staticMembersWithComments.new.kt b/j2k/testData/fileOrElement/formatting/staticMembersWithComments.new.kt new file mode 100644 index 00000000000..1ea2afcb160 --- /dev/null +++ b/j2k/testData/fileOrElement/formatting/staticMembersWithComments.new.kt @@ -0,0 +1,21 @@ +internal object F { + var i = 0 + + //c1 + + /*c2*/ + + fun f1() {} + + + //c3 + + + //c4 + + fun f2() {} + + fun f3() {} + + //c5 +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/function/varVararg.new.kt b/j2k/testData/fileOrElement/function/varVararg.new.kt index a9288d0843f..e223f6a9064 100644 --- a/j2k/testData/fileOrElement/function/varVararg.new.kt +++ b/j2k/testData/fileOrElement/function/varVararg.new.kt @@ -2,7 +2,7 @@ package demo internal class Test { fun test(vararg args: Any?) { - var args: Any? = args + var argsx = args args = arrayOf(1, 2, 3) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.new.kt b/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.new.kt index 16b23b8d72c..316fbbd64b1 100644 --- a/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.new.kt +++ b/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseGeneric.new.kt @@ -1,3 +1,3 @@ internal open class Base(name: T?) -internal class One(name: T?, private val mySecond: K?) : Base(name) \ No newline at end of file +internal class One(name: T?, private val mySecond: K) : Base(name) \ No newline at end of file diff --git a/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.new.kt b/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.new.kt index 71a80e022fd..090e66db118 100644 --- a/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.new.kt +++ b/j2k/testData/fileOrElement/inheritance/classOneExtendsBaseWithZeroParamsNonEmptyConstructor.new.kt @@ -1,3 +1,3 @@ -internal open class Base(name: String?) +internal open class Base(name: String) -internal class One(name: String?, private val mySecond: String?) : Base(name) \ No newline at end of file +internal class One(name: String, private val mySecond: String) : Base(name) \ No newline at end of file diff --git a/j2k/testData/fileOrElement/isOperator/complicatedExpression.new.kt b/j2k/testData/fileOrElement/isOperator/complicatedExpression.new.kt deleted file mode 100644 index c5c0c4cc9f6..00000000000 --- a/j2k/testData/fileOrElement/isOperator/complicatedExpression.new.kt +++ /dev/null @@ -1 +0,0 @@ -c!!.getType().getName() is String \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/Outer.kt b/j2k/testData/fileOrElement/issues/Outer.kt new file mode 100644 index 00000000000..08ec3ae17c5 --- /dev/null +++ b/j2k/testData/fileOrElement/issues/Outer.kt @@ -0,0 +1,33 @@ +// ERROR: Modifier 'protected' is not applicable inside 'object' +internal object Outer { + fun foo() { + val nested1 = Nested1(1) + val nested2 = Nested2(2) + val nested3 = Nested3(3) + val nested4 = Nested4(4) + } + + private class Nested1() { + constructor(a: Int) : this() {} + protected constructor(c: Char) : this() {} + private constructor(b: Boolean) : this() {} + } + + protected class Nested2() { + constructor(a: Int) : this() {} + protected constructor(c: Char) : this() {} + private constructor(b: Boolean) : this() {} + } + + internal class Nested3() { + constructor(a: Int) : this() {} + protected constructor(c: Char) : this() {} + private constructor(b: Boolean) : this() {} + } + + class Nested4() { + constructor(a: Int) : this() {} + protected constructor(c: Char) : this() {} + private constructor(b: Boolean) : this() {} + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-14248.new.kt b/j2k/testData/fileOrElement/issues/kt-14248.new.kt deleted file mode 100644 index bf3e0de7828..00000000000 --- a/j2k/testData/fileOrElement/issues/kt-14248.new.kt +++ /dev/null @@ -1 +0,0 @@ -class AppInfo(internal var mName: String?, internal var mIcon: String?, internal var mLastUpdateTime: Long) \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-19634.new.kt b/j2k/testData/fileOrElement/issues/kt-19634.new.kt new file mode 100644 index 00000000000..4c2c591a0cb --- /dev/null +++ b/j2k/testData/fileOrElement/issues/kt-19634.new.kt @@ -0,0 +1,5 @@ +class TestBoxedEqEqPrimitive { + fun test(value: Double): Boolean { + return value == 3.14 + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-5294.new.kt b/j2k/testData/fileOrElement/issues/kt-5294.new.kt deleted file mode 100644 index a7d1d24c962..00000000000 --- a/j2k/testData/fileOrElement/issues/kt-5294.new.kt +++ /dev/null @@ -1,3 +0,0 @@ -internal class X(private val list: List?) { - internal inner class Y -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-543-boxed.new.kt b/j2k/testData/fileOrElement/issues/kt-543-boxed.new.kt index bf6baee28e0..ad9cd2223d4 100644 --- a/j2k/testData/fileOrElement/issues/kt-543-boxed.new.kt +++ b/j2k/testData/fileOrElement/issues/kt-543-boxed.new.kt @@ -1,7 +1,7 @@ package demo internal class Test { - fun putInt(i: Int?) {} + fun putInt(i: Int) {} fun test() { val b: Byte = 10 diff --git a/j2k/testData/fileOrElement/issues/kt-543-mixed.new.kt b/j2k/testData/fileOrElement/issues/kt-543-mixed.new.kt new file mode 100644 index 00000000000..cb70bc4cf3a --- /dev/null +++ b/j2k/testData/fileOrElement/issues/kt-543-mixed.new.kt @@ -0,0 +1,10 @@ +package demo + +internal class Test { + fun putInt(i: Int) {} + + fun test() { + val i = 10 + putInt(i) + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-638.new.kt b/j2k/testData/fileOrElement/issues/kt-638.new.kt index 24b41a69177..715e725407d 100644 --- a/j2k/testData/fileOrElement/issues/kt-638.new.kt +++ b/j2k/testData/fileOrElement/issues/kt-638.new.kt @@ -1,18 +1,18 @@ class Identifier { - val name: T? + val name: T private var myHasDollar = false private var myNullable = true - constructor(name: T?) { + constructor(name: T) { this.name = name } - constructor(name: T?, isNullable: Boolean) { + constructor(name: T, isNullable: Boolean) { this.name = name myNullable = isNullable } - constructor(name: T?, hasDollar: Boolean, isNullable: Boolean) { + constructor(name: T, hasDollar: Boolean, isNullable: Boolean) { this.name = name myHasDollar = hasDollar myNullable = isNullable @@ -23,7 +23,7 @@ object User { @JvmStatic fun main(args: Array) { val i1: Identifier<*> = Identifier("name", false, true) - val i2 = Identifier("name", false) - val i3 = Identifier("name") + val i2 = Identifier("name", false) + val i3 = Identifier("name") } -} \ No newline at end of file +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-794-mixed.new.kt b/j2k/testData/fileOrElement/issues/kt-794-mixed.new.kt new file mode 100644 index 00000000000..59e08137191 --- /dev/null +++ b/j2k/testData/fileOrElement/issues/kt-794-mixed.new.kt @@ -0,0 +1,11 @@ +package demo + +internal class Test { + fun getInteger(i: Int): Int { + return i + } + + fun test() { + val i = getInteger(10) + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-809-string.new.kt b/j2k/testData/fileOrElement/issues/kt-809-string.new.kt index fefdd2dc340..fcd0dc07745 100644 --- a/j2k/testData/fileOrElement/issues/kt-809-string.new.kt +++ b/j2k/testData/fileOrElement/issues/kt-809-string.new.kt @@ -1,19 +1,19 @@ package demo internal class Container { - var myString: String? = "1" + var myString = "1" } internal object One { - var myContainer: Container? = Container() + var myContainer = Container() } internal class StringContainer(s: String?) internal class Test { - fun putString(s: String?) {} + fun putString(s: String) {} fun test() { - putString(One.myContainer!!.myString) - StringContainer(One.myContainer!!.myString) + putString(One.myContainer.myString) + StringContainer(One.myContainer.myString) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-809.new.kt b/j2k/testData/fileOrElement/issues/kt-809.new.kt deleted file mode 100644 index 63365a78f13..00000000000 --- a/j2k/testData/fileOrElement/issues/kt-809.new.kt +++ /dev/null @@ -1,19 +0,0 @@ -package demo - -internal class Container { - var myInt = 1 -} - -internal object One { - var myContainer: Container? = Container() -} - -internal class IntContainer(i: Int) - -internal class Test { - fun putInt(i: Int) {} - fun test() { - putInt(One.myContainer!!.myInt) - IntContainer(One.myContainer!!.myInt) - } -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-820-field.new.kt b/j2k/testData/fileOrElement/issues/kt-820-field.new.kt deleted file mode 100644 index 9b746736255..00000000000 --- a/j2k/testData/fileOrElement/issues/kt-820-field.new.kt +++ /dev/null @@ -1,13 +0,0 @@ -package demo - -internal class Container { - var myInt = 1 -} - -internal object One { - var myContainer: Container? = Container() -} - -internal class Test { - var b = One.myContainer!!.myInt.toByte() -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-820.new.kt b/j2k/testData/fileOrElement/issues/kt-820.new.kt deleted file mode 100644 index 607bed48fc3..00000000000 --- a/j2k/testData/fileOrElement/issues/kt-820.new.kt +++ /dev/null @@ -1,15 +0,0 @@ -package demo - -internal class Container { - var myInt = 1 -} - -internal object One { - var myContainer: Container? = Container() -} - -internal class Test { - fun test() { - val b = One.myContainer!!.myInt.toByte() - } -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-824.new.kt b/j2k/testData/fileOrElement/issues/kt-824.new.kt index 1316c1c24bf..2f7e3eba0ed 100644 --- a/j2k/testData/fileOrElement/issues/kt-824.new.kt +++ b/j2k/testData/fileOrElement/issues/kt-824.new.kt @@ -5,21 +5,16 @@ internal class Container { } internal object One { - var myContainer: Container? = Container() + var myContainer = Container() } internal class Test { fun test() { - if (One.myContainer!!.myBoolean) - println("Ok") - - val s = if (One.myContainer!!.myBoolean) "YES" else "NO" - - while (One.myContainer!!.myBoolean) - println("Ok") - + if (One.myContainer.myBoolean) println("Ok") + val s = if (One.myContainer.myBoolean) "YES" else "NO" + while (One.myContainer.myBoolean) println("Ok") do { println("Ok") - } while (One.myContainer!!.myBoolean) + } while (One.myContainer.myBoolean) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/kt-836.new.kt b/j2k/testData/fileOrElement/issues/kt-836.new.kt deleted file mode 100644 index 0e6e61b03f4..00000000000 --- a/j2k/testData/fileOrElement/issues/kt-836.new.kt +++ /dev/null @@ -1,23 +0,0 @@ -package com.voltvoodoo.saplo4j.model - -import java.io.Serializable - -class Language(protected var code: String?) : Serializable { - override fun toString(): String { - return code - } -} - -internal open class Base { - internal open fun test() {} - override fun toString(): String { - return "BASE" - } -} - -internal class Child : Base() { - override fun test() {} - override fun toString(): String { - return "Child" - } -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/issues/spaceBeforeAssignment.new.kt b/j2k/testData/fileOrElement/issues/spaceBeforeAssignment.new.kt deleted file mode 100644 index 82504fdda77..00000000000 --- a/j2k/testData/fileOrElement/issues/spaceBeforeAssignment.new.kt +++ /dev/null @@ -1,5 +0,0 @@ -import java.util.ArrayList - -internal class A { - var list: List? = ArrayList() -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/kotlinApiAccess/ClassObjectMembers.java b/j2k/testData/fileOrElement/kotlinApiAccess/ClassObjectMembers.java index a2ca67fd8e4..1d4f0db2473 100644 --- a/j2k/testData/fileOrElement/kotlinApiAccess/ClassObjectMembers.java +++ b/j2k/testData/fileOrElement/kotlinApiAccess/ClassObjectMembers.java @@ -1,10 +1,9 @@ //file + import kotlinApi.KotlinClass; class C { int foo() { - KotlinClass.staticVar = KotlinClass.staticVar * 2; - KotlinClass.Companion.setStaticProperty(KotlinClass.Companion.getStaticVar() + KotlinClass.Companion.getStaticProperty()); - return KotlinClass.Companion.staticFun(1); + KotlinClass.Companion.getStaticVar() } } diff --git a/j2k/testData/fileOrElement/labelStatement/complicatedExampleFromJavaTutorial.new.kt b/j2k/testData/fileOrElement/labelStatement/complicatedExampleFromJavaTutorial.new.kt index 640d9eaa5d9..cc6557bfae1 100644 --- a/j2k/testData/fileOrElement/labelStatement/complicatedExampleFromJavaTutorial.new.kt +++ b/j2k/testData/fileOrElement/labelStatement/complicatedExampleFromJavaTutorial.new.kt @@ -1,9 +1,9 @@ test@ for (i in 0..max) { - var n: Int = substring!!.length() + var n: Int = substring.length() var j = i var k = 0 while (n-- != 0) { - if (searchMe!!.charAt(j++) !== substring!!.charAt(k++)) { + if (searchMe.charAt(j++) !== substring.charAt(k++)) { continue@test } } diff --git a/j2k/testData/fileOrElement/list/ForEach.new.kt b/j2k/testData/fileOrElement/list/ForEach.new.kt index 26907d2d133..845190fb702 100644 --- a/j2k/testData/fileOrElement/list/ForEach.new.kt +++ b/j2k/testData/fileOrElement/list/ForEach.new.kt @@ -1,10 +1,10 @@ // ERROR: Unresolved reference: LinkedList -import java.util.ArrayList +import java.util.* class ForEach { fun test() { val xs: ArrayList = ArrayList() - val ys: MutableList = LinkedList() + val ys: MutableList = LinkedList() for (x in xs) { ys.add(x) } diff --git a/j2k/testData/fileOrElement/list/Lists.new.kt b/j2k/testData/fileOrElement/list/Lists.new.kt index 92cb61dce4c..793eda3824b 100644 --- a/j2k/testData/fileOrElement/list/Lists.new.kt +++ b/j2k/testData/fileOrElement/list/Lists.new.kt @@ -1,12 +1,10 @@ // ERROR: Unresolved reference: LinkedList -// ERROR: Null can not be a value of a non-null type Any -// ERROR: Null can not be a value of a non-null type Any -import java.util.ArrayList +import java.util.* class Lists { fun test() { val xs: MutableList = ArrayList() - val ys: MutableList = LinkedList() + val ys: MutableList = LinkedList() val zs: ArrayList = ArrayList() xs.add(null) ys.add(null) diff --git a/j2k/testData/fileOrElement/literalExpression/double.new.kt b/j2k/testData/fileOrElement/literalExpression/double.new.kt new file mode 100644 index 00000000000..9f88435b34d --- /dev/null +++ b/j2k/testData/fileOrElement/literalExpression/double.new.kt @@ -0,0 +1,24 @@ +internal class A { + private var d1 = 1.0 + private var d2 = 1.0 + private val d3 = 1.0 + private val d4 = 1.0 + private val d5 = 1.0 + private val d6 = 1.0 + private val d7 = Math.sqrt(2.0) - 1 + private val d8 = 1.0 + private val d9 = 1.0 + private val x = 1 / (1.0 + 0) + + fun foo1(d: Double) {} + fun foo2(d: Double) {} + + fun bar() { + foo1(1.0) + foo1(1.0) + foo1(1.0) + foo2(1.0) + d1 = 1.0 + d2 = 1.0 + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/literalExpression/exponentDouble.new.kt b/j2k/testData/fileOrElement/literalExpression/exponentDouble.new.kt new file mode 100644 index 00000000000..8ce3a5ef7db --- /dev/null +++ b/j2k/testData/fileOrElement/literalExpression/exponentDouble.new.kt @@ -0,0 +1,9 @@ +class Exponent { + private val doubles = doubleArrayOf( + 5e5, +5e5, -5e5, 5e+5, 5e-5, + 5E5, +5E5, -5E5, 5E+5, 5E-5, + 2.5e5, +2.5e5, -2.5e5, 2.5e+5, 2.5e-5, + 2.5E5, +2.5E5, -2.5E5, 2.5E+5, 2.5E-5, 5e5, 5e5, 5e5, 5e5, + 5e-6, 7e+8, 9e-1, 2e+3, 4e5, 6e7 + ) +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/literalExpression/exponentFloat.new.kt b/j2k/testData/fileOrElement/literalExpression/exponentFloat.new.kt new file mode 100644 index 00000000000..5141c1b0dd1 --- /dev/null +++ b/j2k/testData/fileOrElement/literalExpression/exponentFloat.new.kt @@ -0,0 +1,10 @@ +class Exponent { + private val floats = floatArrayOf( + 5e5f, +5e5f, -5e5f, 5e+5f, 5e-5f, + 5E5f, +5E5f, -5E5f, 5E+5f, 5E-5f, + 2.5e5f, +2.5e5f, -2.5e5f, 2.5e+5f, 2.5e-5f, + 2.5E5f, +2.5E5f, -2.5E5f, 2.5E+5f, 2.5E-5f, + 5e5f, 5e5f, + 5e-6f, 7e+8f, 9e-1f, 2e+3f, 4e5f, 6e7f + ) +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/literalExpression/float.new.kt b/j2k/testData/fileOrElement/literalExpression/float.new.kt new file mode 100644 index 00000000000..c478a3a259c --- /dev/null +++ b/j2k/testData/fileOrElement/literalExpression/float.new.kt @@ -0,0 +1,26 @@ +internal class A { + private var f1 = 1.0f + private val f2 = 1.0f + private val f3 = 1f + private var f4 = 1f + private val f5 = 1f + private val f6 = -1f + private val f7 = -1f + private val f8 = +1f + private val f9 = 1f + private val f10 = 1f + + fun foo1(f: Float) {} + fun foo2(f: Float) {} + + fun bar() { + foo1(1f) + foo2(1f) + foo1(1f) + foo1(1f) + foo1(-1f) + foo1(-1f) + f1 = 1f + f4 = 1.0f + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/literalExpression/long.new.kt b/j2k/testData/fileOrElement/literalExpression/long.new.kt index dccfd3cd4b3..41f07d4a824 100644 --- a/j2k/testData/fileOrElement/literalExpression/long.new.kt +++ b/j2k/testData/fileOrElement/literalExpression/long.new.kt @@ -9,7 +9,7 @@ internal class A { private val l8 = +1L fun foo1(l: Long) {} - fun foo2(l: Long?) {} + fun foo2(l: Long) {} fun bar() { foo1(1) diff --git a/j2k/testData/fileOrElement/literalExpression/stringOctalChars.new.kt b/j2k/testData/fileOrElement/literalExpression/stringOctalChars.new.kt deleted file mode 100644 index f074d513bb4..00000000000 --- a/j2k/testData/fileOrElement/literalExpression/stringOctalChars.new.kt +++ /dev/null @@ -1,7 +0,0 @@ -class A { - var a: String? = "\u003f0123" - var b: String? = "\u00490123" - var c: String? = "\u00ff0123" - var d: String? = "\u0000Text" - var f: String? = "\u00009" -} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/methodCallExpression/genericMethod.new.kt b/j2k/testData/fileOrElement/methodCallExpression/genericMethod.new.kt index 2be7a08a929..53c37030ee7 100644 --- a/j2k/testData/fileOrElement/methodCallExpression/genericMethod.new.kt +++ b/j2k/testData/fileOrElement/methodCallExpression/genericMethod.new.kt @@ -1,12 +1,12 @@ package demo internal class Map { - fun put(k: K?, v: V?) {} + fun put(k: K?, v: V) {} } internal class U { fun test() { val m = Map() - m.put(null, 10) + m.put(null, 10) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue.new.kt b/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue.new.kt index 32ebbaa5841..2f9ab2b6ca1 100644 --- a/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue.new.kt +++ b/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue.new.kt @@ -1,11 +1,11 @@ -import java.util.ArrayList +import java.util.* internal class A { - fun createCollection(): MutableCollection { + fun createCollection(): MutableCollection { return ArrayList() } - fun foo(): Collection { + fun foo(): Collection { val collection = createCollection() collection.add("a") return collection diff --git a/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue2.new.kt b/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue2.new.kt index 91a95abd5c1..4b13f3aa8c1 100644 --- a/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue2.new.kt +++ b/j2k/testData/fileOrElement/mutableCollections/FunctionReturnValue2.new.kt @@ -1,21 +1,21 @@ -import java.util.ArrayList +import java.util.* internal class A { - private val collection: MutableCollection? + private val collection: MutableCollection init { collection = createCollection() } - fun createCollection(): MutableCollection { + fun createCollection(): MutableCollection { return ArrayList() } fun foo() { - collection!!.add("1") + collection.add("1") } - fun getCollection(): Collection? { + fun getCollection(): Collection { return collection } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/mutableCollections/Iterator2.new.kt b/j2k/testData/fileOrElement/mutableCollections/Iterator2.new.kt index 0beb59fb8c8..03674157a08 100644 --- a/j2k/testData/fileOrElement/mutableCollections/Iterator2.new.kt +++ b/j2k/testData/fileOrElement/mutableCollections/Iterator2.new.kt @@ -1,5 +1,5 @@ class TestMutableCollection { - val list: MutableList = ArrayList() + val list: MutableList = ArrayList() fun test() { val it = list.iterator() diff --git a/j2k/testData/fileOrElement/newClassExpression/genericClassInvocation.new.kt b/j2k/testData/fileOrElement/newClassExpression/genericClassInvocation.new.kt index 5e777eacaf3..a500cadb3da 100644 --- a/j2k/testData/fileOrElement/newClassExpression/genericClassInvocation.new.kt +++ b/j2k/testData/fileOrElement/newClassExpression/genericClassInvocation.new.kt @@ -1,5 +1,5 @@ internal class User { fun main() { - val list: List = ArrayList() + val list: List = ArrayList() } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/newClassExpression/newListAndNewMember.new.kt b/j2k/testData/fileOrElement/newClassExpression/newListAndNewMember.new.kt index e8e7da65641..11a9ce290b3 100644 --- a/j2k/testData/fileOrElement/newClassExpression/newListAndNewMember.new.kt +++ b/j2k/testData/fileOrElement/newClassExpression/newListAndNewMember.new.kt @@ -1,10 +1,12 @@ package org.test +import java.util.ArrayList + internal class Member internal class User { fun main() { - val members: MutableList = ArrayList() + val members: MutableList = ArrayList() members.add(Member()) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/nullability/nullableField.new.kt b/j2k/testData/fileOrElement/nullability/nullableField.new.kt new file mode 100644 index 00000000000..b81005ee889 --- /dev/null +++ b/j2k/testData/fileOrElement/nullability/nullableField.new.kt @@ -0,0 +1,45 @@ +package test + +class Test { + private var myProp: String? = null + private var myIntProp: Int? = null + fun onCreate() { + myProp = "" + myIntProp = 1 + } + + fun test1() { + foo1(myProp!!) + } + + fun test2() { + foo2(myProp) + } + + fun test3() { + foo3(myProp) + } + + fun test4() { + myProp!![myIntProp!!] + println(myProp) + } + + fun test5() { + val b = "aaa" == myProp + val s = "aaa$myProp" + } + + fun test6() { + myProp!!.compareTo(myProp!!, ignoreCase = true) + } + + fun test7() { + val list: MutableList = ArrayList() + list.remove(myIntProp!!) + } + + fun foo1(s: String) {} + fun foo2(s: String?) {} + fun foo3(s: String?) {} +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/nullability/nullableInitializer4.new.kt b/j2k/testData/fileOrElement/nullability/nullableInitializer4.new.kt new file mode 100644 index 00000000000..61a65ddb7e9 --- /dev/null +++ b/j2k/testData/fileOrElement/nullability/nullableInitializer4.new.kt @@ -0,0 +1,19 @@ +class TestJava { + private var notNullInitializerFieldNullableUsage: String? = "aaa" + private var notNullInitializerFieldNotNullUsage = "aaa" + private var nullInitializerFieldNullableUsage: String? = null + private var nullInitializerFieldNotNullUsage: String? = null + fun testNotNull(obj: Any?) { + if (true) { + notNullInitializerFieldNullableUsage = obj as String? + notNullInitializerFieldNotNullUsage = "str" + notNullInitializerFieldNullableUsage!![1] + notNullInitializerFieldNotNullUsage[1] + } else { + nullInitializerFieldNullableUsage = obj as String? + nullInitializerFieldNotNullUsage = "str" + nullInitializerFieldNullableUsage!![1] + nullInitializerFieldNotNullUsage!![1] + } + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/overloads/Annotations.new.kt b/j2k/testData/fileOrElement/overloads/Annotations.new.kt index 21f20d81977..e4718675c17 100644 --- a/j2k/testData/fileOrElement/overloads/Annotations.new.kt +++ b/j2k/testData/fileOrElement/overloads/Annotations.new.kt @@ -1,5 +1,3 @@ -// ERROR: Type mismatch: inferred type is Any? but Any was expected -// ERROR: Type mismatch: inferred type is Any? but Any was expected internal class A { @JvmOverloads fun foo(s: String? = null): Any { @@ -13,7 +11,7 @@ internal class A { } fun bar(): Any { - return bar(null) + return bar(null)!! } fun bar1(s: String?): Any? { @@ -22,7 +20,7 @@ internal class A { } fun bar1(): Any { - return bar1(null) + return bar1(null)!! } @Deprecated("") diff --git a/j2k/testData/fileOrElement/overloads/Override.new.kt b/j2k/testData/fileOrElement/overloads/Override.new.kt index b00e48a5652..320f95fb191 100644 --- a/j2k/testData/fileOrElement/overloads/Override.new.kt +++ b/j2k/testData/fileOrElement/overloads/Override.new.kt @@ -1,10 +1,10 @@ internal interface I { - fun foo(i: Int, c: Char, s: String?) + fun foo(i: Int, c: Char, s: String) fun bar() } internal open class A : I { - override fun foo(i: Int, c: Char, s: String?) { + override fun foo(i: Int, c: Char, s: String) { println("foo$i$c$s") } diff --git a/j2k/testData/fileOrElement/overloads/Simple.new.kt b/j2k/testData/fileOrElement/overloads/Simple.new.kt index 5bbd87a0a32..5a6e6130bcb 100644 --- a/j2k/testData/fileOrElement/overloads/Simple.new.kt +++ b/j2k/testData/fileOrElement/overloads/Simple.new.kt @@ -1,6 +1,6 @@ internal class A { @JvmOverloads - fun foo(i: Int, c: Char = 'a', s: String? = "") { + fun foo(i: Int, c: Char = 'a', s: String = "") { println("foo$i$c$s") } diff --git a/j2k/testData/fileOrElement/postProcessing/GetOperator.new.kt b/j2k/testData/fileOrElement/postProcessing/GetOperator.new.kt index 22723d71e3f..f30abaad1d7 100644 --- a/j2k/testData/fileOrElement/postProcessing/GetOperator.new.kt +++ b/j2k/testData/fileOrElement/postProcessing/GetOperator.new.kt @@ -8,7 +8,7 @@ internal class X { } internal class C { - fun foo(map: HashMap): String? { + fun foo(map: HashMap): String { return map["a"] } diff --git a/j2k/testData/fileOrElement/postProcessing/RedundantTypeCast.new.kt b/j2k/testData/fileOrElement/postProcessing/RedundantTypeCast.new.kt new file mode 100644 index 00000000000..10bf32e2e43 --- /dev/null +++ b/j2k/testData/fileOrElement/postProcessing/RedundantTypeCast.new.kt @@ -0,0 +1,7 @@ +internal class C { + fun foo(o: Any?) { + if (o is String) { + val l = o.length + } + } +} diff --git a/j2k/testData/fileOrElement/projections/projections.new.kt b/j2k/testData/fileOrElement/projections/projections.new.kt index 3c8ae164438..4e67b422fdb 100644 --- a/j2k/testData/fileOrElement/projections/projections.new.kt +++ b/j2k/testData/fileOrElement/projections/projections.new.kt @@ -1,17 +1,17 @@ internal class C { - fun foo1(src: Collection) { + fun foo1(src: Collection) { val t = src.iterator().next() } - fun foo2(src: ArrayList) { + fun foo2(src: ArrayList) { val t = src.iterator().next() } - fun foo3(dst: MutableCollection, t: T?) { + fun foo3(dst: MutableCollection, t: T) { dst.add(t) } - fun foo4(comparable: Comparable, t: T?): Int { + fun foo4(comparable: Comparable, t: T): Int { return comparable.compareTo(t) } diff --git a/j2k/testData/fileOrElement/rawGenerics/kt-540-map.new.kt b/j2k/testData/fileOrElement/rawGenerics/kt-540-map.new.kt index bad98f69af9..4867a12bb33 100644 --- a/j2k/testData/fileOrElement/rawGenerics/kt-540-map.new.kt +++ b/j2k/testData/fileOrElement/rawGenerics/kt-540-map.new.kt @@ -2,7 +2,7 @@ package demo internal class Test { fun main() { - val commonMap: HashMap = HashMap() + val commonMap: HashMap = HashMap() val rawMap: HashMap<*, *> = HashMap() val superRawMap: HashMap<*, *> = HashMap() } diff --git a/j2k/testData/fileOrElement/rawGenerics/kt-540-rawGenericClass.new.kt b/j2k/testData/fileOrElement/rawGenerics/kt-540-rawGenericClass.new.kt index b9f1eb0b266..26fa34a6f18 100644 --- a/j2k/testData/fileOrElement/rawGenerics/kt-540-rawGenericClass.new.kt +++ b/j2k/testData/fileOrElement/rawGenerics/kt-540-rawGenericClass.new.kt @@ -9,7 +9,7 @@ internal class Collection(e: E?) { internal class Test { fun main() { val raw1 = Collection(1) - val raw2 = Collection(1) - val raw3 = Collection("1") + val raw2 = Collection(1) + val raw3 = Collection("1") } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/rawGenerics/kt-540.new.kt b/j2k/testData/fileOrElement/rawGenerics/kt-540.new.kt index 659b44b5303..0fb5a935603 100644 --- a/j2k/testData/fileOrElement/rawGenerics/kt-540.new.kt +++ b/j2k/testData/fileOrElement/rawGenerics/kt-540.new.kt @@ -1,9 +1,8 @@ -// ERROR: Type inference failed: Not enough information to infer parameter E in constructor ArrayList() Please specify it explicitly. package demo internal class Test { fun main() { - val common: List = ArrayList() + val common: List = ArrayList() val raw: List<*> = ArrayList() val superRaw: List<*> = ArrayList() } diff --git a/j2k/testData/fileOrElement/returnStatement/currentMethodBug.new.kt b/j2k/testData/fileOrElement/returnStatement/currentMethodBug.new.kt index 7cd7f540aec..04e8742ff01 100644 --- a/j2k/testData/fileOrElement/returnStatement/currentMethodBug.new.kt +++ b/j2k/testData/fileOrElement/returnStatement/currentMethodBug.new.kt @@ -6,7 +6,6 @@ internal class C { var string: String? = null val `object`: Any? get() { - foo(object : I { override val int: Int get() = 0 @@ -14,6 +13,5 @@ internal class C { return string } - fun foo(i: I?) { - } + fun foo(i: I) {} } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/settings/specifyFieldTypeByDefault.new.kt b/j2k/testData/fileOrElement/settings/specifyFieldTypeByDefault.new.kt index df9b97aa4c6..276d9d6adda 100644 --- a/j2k/testData/fileOrElement/settings/specifyFieldTypeByDefault.new.kt +++ b/j2k/testData/fileOrElement/settings/specifyFieldTypeByDefault.new.kt @@ -1,8 +1,8 @@ -import java.util.ArrayList +import java.util.* internal class A { - private val field1: List = ArrayList() - val field2: List = ArrayList() + private val field1: List = ArrayList() + val field2: List = ArrayList() val field3: Int = 0 protected val field4: Int = 0 } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods1.new.kt b/j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods1.new.kt new file mode 100644 index 00000000000..f198bbf03da --- /dev/null +++ b/j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods1.new.kt @@ -0,0 +1,11 @@ +internal class A { + fun foo() { + privateStatic1() + privateStatic2() + } + + companion object { + private fun privateStatic1() {} + private fun privateStatic2() {} + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods4.new.kt b/j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods4.new.kt new file mode 100644 index 00000000000..7584ac3178c --- /dev/null +++ b/j2k/testData/fileOrElement/staticMembers/PrivateStaticMethods4.new.kt @@ -0,0 +1,16 @@ +internal class A { + inner class Inner { + internal fun foo() { + privateStatic1() + } + } + + fun bar() { + privateStatic2() + } + + companion object { + private fun privateStatic1() {} + private fun privateStatic2() {} + } +} \ No newline at end of file diff --git a/j2k/testData/fileOrElement/switch/comlicatedFallDown.new.kt b/j2k/testData/fileOrElement/switch/comlicatedFallDown.new.kt index 41ebbf97a1c..7078133583e 100644 --- a/j2k/testData/fileOrElement/switch/comlicatedFallDown.new.kt +++ b/j2k/testData/fileOrElement/switch/comlicatedFallDown.new.kt @@ -1,7 +1,7 @@ package demo object SwitchDemo { - fun print(o: Any?) { + fun print(o: Any) { println(o) } diff --git a/j2k/testData/fileOrElement/toKotlinClasses/LibraryFunctions.new.kt b/j2k/testData/fileOrElement/toKotlinClasses/LibraryFunctions.new.kt index b168955675d..32f7dd04e3d 100644 --- a/j2k/testData/fileOrElement/toKotlinClasses/LibraryFunctions.new.kt +++ b/j2k/testData/fileOrElement/toKotlinClasses/LibraryFunctions.new.kt @@ -1,15 +1,15 @@ package demo class TestJava { - fun f(result: Function1) { + fun f(result: Function1) { result.invoke("a") } companion object { @JvmStatic fun main(args: Array) { - val x: List = ArrayList() - x.filter { o: String? -> o == "a" } + val x: List = ArrayList() + x.filter { o: String -> o == "a" } val lazy: Lazy = lazy(LazyThreadSafetyMode.NONE) { "aaa" } } } diff --git a/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator.new.kt b/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator.new.kt index 3be72cf4943..d1b048fc229 100644 --- a/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator.new.kt +++ b/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator.new.kt @@ -7,7 +7,7 @@ internal class Test : Iterable { return null } - fun push(i: Iterator?): Iterator? { + fun push(i: Iterator): Iterator { return i } } @@ -17,7 +17,7 @@ internal class FullTest : Iterable { return null } - fun push(i: Iterator?): Iterator? { + fun push(i: Iterator): Iterator { return i } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.new.kt b/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.new.kt index 3be72cf4943..c81587aeee0 100644 --- a/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.new.kt +++ b/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator2.new.kt @@ -2,12 +2,14 @@ // ERROR: Null can not be a value of a non-null type Iterator package demo +import java.util.* + internal class Test : Iterable { override fun iterator(): Iterator { return null } - fun push(i: Iterator?): Iterator? { + fun push(i: Iterator): Iterator { return i } } @@ -17,7 +19,7 @@ internal class FullTest : Iterable { return null } - fun push(i: Iterator?): Iterator? { + fun push(i: Iterator): Iterator { return i } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.new.kt b/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.new.kt index 96c8d7686aa..589d2e0cdb2 100644 --- a/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.new.kt +++ b/j2k/testData/fileOrElement/toKotlinClasses/iterableAndIterator3.new.kt @@ -6,7 +6,7 @@ internal class Test : Iterable { return null } - fun push(i: Iterator?): Iterator? { + fun push(i: Iterator): Iterator { return i } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.new.kt b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.new.kt index c7d5071282b..e6ff0724964 100644 --- a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.new.kt +++ b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.new.kt @@ -1,10 +1,8 @@ -import java.io.ByteArrayInputStream -import java.io.IOException -import java.io.InputStream +import java.io.* internal interface I { @Throws(IOException::class) - fun doIt(stream: InputStream?): Int + fun doIt(stream: InputStream): Int } class C { @@ -21,7 +19,7 @@ class C { } @Throws(IOException::class) - internal fun bar(i: I, stream: InputStream?): Int { + internal fun bar(i: I, stream: InputStream): Int { return i.doIt(stream) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.new.kt b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.new.kt index 7d83b0bd7bb..35673b345b7 100644 --- a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.new.kt +++ b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.new.kt @@ -1,10 +1,8 @@ -import java.io.ByteArrayInputStream -import java.io.IOException -import java.io.InputStream +import java.io.* internal interface I { @Throws(IOException::class) - fun doIt(stream: InputStream?): Int + fun doIt(stream: InputStream): Int } class C { @@ -21,7 +19,7 @@ class C { } @Throws(IOException::class) - internal fun bar(i: I, stream: InputStream?): Int { + internal fun bar(i: I, stream: InputStream): Int { return i.doIt(stream) } } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/typeParameters/needTypeArgs.new.kt b/j2k/testData/fileOrElement/typeParameters/needTypeArgs.new.kt index 5ba7fe26e0d..bbfaa0555e6 100644 --- a/j2k/testData/fileOrElement/typeParameters/needTypeArgs.new.kt +++ b/j2k/testData/fileOrElement/typeParameters/needTypeArgs.new.kt @@ -1,15 +1,15 @@ internal class A { fun foo() { - val map1: Map = getMap1() + val map1: Map = getMap1() val map2 = getMap2("a", 1) } - fun getMap1(): Map { + fun getMap1(): Map { return HashMap() } - fun getMap2(k: K?, v: V?): Map { - val map: HashMap = HashMap() + fun getMap2(k: K, v: V): Map { + val map: HashMap = HashMap() map[k] = v return map } diff --git a/j2k/testData/fileOrElement/typeParameters/rawTypeCast.new.kt b/j2k/testData/fileOrElement/typeParameters/rawTypeCast.new.kt index c50a53f1f1b..aebbcbd9bc2 100644 --- a/j2k/testData/fileOrElement/typeParameters/rawTypeCast.new.kt +++ b/j2k/testData/fileOrElement/typeParameters/rawTypeCast.new.kt @@ -5,6 +5,6 @@ import java.util.Properties internal object A { fun foo(): Map { val props = Properties() - return HashMap(props as Map<*, *>) + return HashMap(props as Map<*, *>) } } \ No newline at end of file