From 25959fefdcf6d3f41a5dca73858bff6d8c277743 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Mon, 11 May 2015 19:36:22 +0200 Subject: [PATCH] J2K: generate 'interface' keyword instead of 'trait' --- j2k/src/org/jetbrains/kotlin/j2k/ast/Trait.kt | 2 +- .../fileOrElement/annotations/annotationInterface3.kt | 2 +- .../fileOrElement/annotations/annotationInterface4.kt | 8 ++++---- j2k/testData/fileOrElement/class/innerClassInInterface.kt | 2 +- j2k/testData/fileOrElement/class/innerInterface.kt | 2 +- .../dropAccessors/AccessorsImplementInterface.kt | 2 +- j2k/testData/fileOrElement/equals/Equals1.kt | 2 +- j2k/testData/fileOrElement/equals/ObjectsEquals.kt | 2 +- j2k/testData/fileOrElement/inheritance/openModifier.kt | 2 +- .../nullability/MethodResultComparedWithNull.kt | 2 +- .../nullability/MethodResultComparedWithNull2.kt | 2 +- .../nullability/MethodResultComparedWithNull3.kt | 2 +- .../nullability/MethodResultComparedWithNull4.kt | 2 +- .../nullability/MethodReturnsNullInAnonymousClass.kt | 2 +- j2k/testData/fileOrElement/nullability/Overrides.kt | 2 +- j2k/testData/fileOrElement/objectLiteral/MyFrame.kt | 2 +- j2k/testData/fileOrElement/overloads/Override.kt | 2 +- .../fileOrElement/returnStatement/currentMethodBug.kt | 2 +- j2k/testData/fileOrElement/settings/openByDefault.kt | 2 +- .../fileOrElement/toKotlinClasses/TypeParameterBound.kt | 2 +- j2k/testData/fileOrElement/trait/abstactInterface.kt | 2 +- j2k/testData/fileOrElement/trait/emptyInterface.kt | 2 +- .../extendsOneClassAndImplementsSeveralInterfaces.kt | 2 +- j2k/testData/fileOrElement/trait/extendsOneInterface.kt | 2 +- j2k/testData/fileOrElement/trait/interfaceWithFields.kt | 2 +- .../fileOrElement/trait/interfaceWithMethodDeclaration.kt | 2 +- .../fileOrElement/trait/interfaceWithStaticFields.kt | 2 +- j2k/testData/fileOrElement/trait/internalInterface.kt | 2 +- j2k/testData/fileOrElement/trait/privateInterface.kt | 2 +- j2k/testData/fileOrElement/trait/protectedInterface.kt | 2 +- j2k/testData/fileOrElement/trait/publicInterface.kt | 2 +- .../tryWithResource/WithReturnInAnonymousClass.kt | 2 +- .../tryWithResource/WithReturnInAnonymousClass2.kt | 2 +- .../typeParameters/complexExampleWithClassExtending.kt | 2 +- .../complexExampleWithClassMultiplyExtending.kt | 2 +- ...raitDoubleParametrizationWithTwoBoundsWithExtending.kt | 2 +- 36 files changed, 39 insertions(+), 39 deletions(-) diff --git a/j2k/src/org/jetbrains/kotlin/j2k/ast/Trait.kt b/j2k/src/org/jetbrains/kotlin/j2k/ast/Trait.kt index f2b707ae978..b90c67a079d 100644 --- a/j2k/src/org/jetbrains/kotlin/j2k/ast/Trait.kt +++ b/j2k/src/org/jetbrains/kotlin/j2k/ast/Trait.kt @@ -27,7 +27,7 @@ class Trait( ) : Class(name, annotations, modifiers, typeParameterList, extendsTypes, null, implementsTypes, body) { override val keyword: String - get() = "trait" + get() = "interface" override fun presentationModifiers(): Modifiers = modifiers.filter { it in ACCESS_MODIFIERS } diff --git a/j2k/testData/fileOrElement/annotations/annotationInterface3.kt b/j2k/testData/fileOrElement/annotations/annotationInterface3.kt index 7d1205a6dc7..7a85ee670d6 100644 --- a/j2k/testData/fileOrElement/annotations/annotationInterface3.kt +++ b/j2k/testData/fileOrElement/annotations/annotationInterface3.kt @@ -13,7 +13,7 @@ annotation class Anon(public val value: String) { } Anon("a") -trait I { +interface I { companion object { public val e: Anon.E = Anon.field } diff --git a/j2k/testData/fileOrElement/annotations/annotationInterface4.kt b/j2k/testData/fileOrElement/annotations/annotationInterface4.kt index cd0e4076e9d..23d67e2751d 100644 --- a/j2k/testData/fileOrElement/annotations/annotationInterface4.kt +++ b/j2k/testData/fileOrElement/annotations/annotationInterface4.kt @@ -1,13 +1,13 @@ annotation class Anon(public vararg val value: String, public val x: Int = 1) Anon("a", "b") -trait I1 +interface I1 Anon("c", "d", x = 1) -trait I2 +interface I2 Anon("c", "d", x = 1) -trait I3 +interface I3 Anon(value = *array("c", "d")) -trait I4 \ No newline at end of file +interface I4 diff --git a/j2k/testData/fileOrElement/class/innerClassInInterface.kt b/j2k/testData/fileOrElement/class/innerClassInInterface.kt index 115ec0dca8f..4d4f2dfea6c 100644 --- a/j2k/testData/fileOrElement/class/innerClassInInterface.kt +++ b/j2k/testData/fileOrElement/class/innerClassInInterface.kt @@ -1,3 +1,3 @@ -trait A { +interface A { public class B } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/class/innerInterface.kt b/j2k/testData/fileOrElement/class/innerInterface.kt index 1cd343ca1d0..74236cf4865 100644 --- a/j2k/testData/fileOrElement/class/innerInterface.kt +++ b/j2k/testData/fileOrElement/class/innerInterface.kt @@ -1,3 +1,3 @@ class A { - trait I + interface I } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/dropAccessors/AccessorsImplementInterface.kt b/j2k/testData/fileOrElement/dropAccessors/AccessorsImplementInterface.kt index 1b355d19fa7..5ef632893e6 100644 --- a/j2k/testData/fileOrElement/dropAccessors/AccessorsImplementInterface.kt +++ b/j2k/testData/fileOrElement/dropAccessors/AccessorsImplementInterface.kt @@ -1,4 +1,4 @@ -trait I { +interface I { public fun getX(): Int public fun setX(x: Int) } diff --git a/j2k/testData/fileOrElement/equals/Equals1.kt b/j2k/testData/fileOrElement/equals/Equals1.kt index 9edae84960c..e2ac569cd4f 100644 --- a/j2k/testData/fileOrElement/equals/Equals1.kt +++ b/j2k/testData/fileOrElement/equals/Equals1.kt @@ -1,4 +1,4 @@ -trait I +interface I class C { fun foo1(i1: I, i2: I): Boolean { diff --git a/j2k/testData/fileOrElement/equals/ObjectsEquals.kt b/j2k/testData/fileOrElement/equals/ObjectsEquals.kt index cbaf0d64d72..1faa8707d70 100644 --- a/j2k/testData/fileOrElement/equals/ObjectsEquals.kt +++ b/j2k/testData/fileOrElement/equals/ObjectsEquals.kt @@ -1,6 +1,6 @@ import java.util.Objects -trait I +interface I class C { fun foo1(i1: I, i2: I): Boolean { diff --git a/j2k/testData/fileOrElement/inheritance/openModifier.kt b/j2k/testData/fileOrElement/inheritance/openModifier.kt index 020d6ebe578..c702e2825d6 100644 --- a/j2k/testData/fileOrElement/inheritance/openModifier.kt +++ b/j2k/testData/fileOrElement/inheritance/openModifier.kt @@ -23,7 +23,7 @@ class C : B() { } } -trait I { +interface I { public fun f() } diff --git a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull.kt b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull.kt index 39c39e23fa7..40ca83749a6 100644 --- a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull.kt +++ b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull.kt @@ -1,4 +1,4 @@ -trait I { +interface I { public fun getString(): String? } diff --git a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull2.kt b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull2.kt index 3d0e1b1c0e6..156bf205e0e 100644 --- a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull2.kt +++ b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull2.kt @@ -1,4 +1,4 @@ -trait I { +interface I { public fun getString(): String? } diff --git a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull3.kt b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull3.kt index 3d0e1b1c0e6..156bf205e0e 100644 --- a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull3.kt +++ b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull3.kt @@ -1,4 +1,4 @@ -trait I { +interface I { public fun getString(): String? } diff --git a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull4.kt b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull4.kt index a9ffcf3c3c4..2912db899cb 100644 --- a/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull4.kt +++ b/j2k/testData/fileOrElement/nullability/MethodResultComparedWithNull4.kt @@ -1,4 +1,4 @@ -trait I { +interface I { public fun getString(): String } diff --git a/j2k/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt b/j2k/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt index 6d5a2537e64..b1b8f5d516d 100644 --- a/j2k/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt +++ b/j2k/testData/fileOrElement/nullability/MethodReturnsNullInAnonymousClass.kt @@ -1,5 +1,5 @@ // ERROR: Return type of 'get' is not a subtype of the return type of overridden member public abstract fun get(): kotlin.String defined in Getter -trait Getter { +interface Getter { public fun get(): String } diff --git a/j2k/testData/fileOrElement/nullability/Overrides.kt b/j2k/testData/fileOrElement/nullability/Overrides.kt index 893150ec96c..e4eee547d5a 100644 --- a/j2k/testData/fileOrElement/nullability/Overrides.kt +++ b/j2k/testData/fileOrElement/nullability/Overrides.kt @@ -12,7 +12,7 @@ open class Base { } } -trait I { +interface I { public fun zoo(o: Any?): String? } diff --git a/j2k/testData/fileOrElement/objectLiteral/MyFrame.kt b/j2k/testData/fileOrElement/objectLiteral/MyFrame.kt index 6551e902250..fb445d06fa6 100644 --- a/j2k/testData/fileOrElement/objectLiteral/MyFrame.kt +++ b/j2k/testData/fileOrElement/objectLiteral/MyFrame.kt @@ -1,6 +1,6 @@ package demo -trait WindowListener { +interface WindowListener { public fun windowClosing() } diff --git a/j2k/testData/fileOrElement/overloads/Override.kt b/j2k/testData/fileOrElement/overloads/Override.kt index 00b881380d4..9fbf7956303 100644 --- a/j2k/testData/fileOrElement/overloads/Override.kt +++ b/j2k/testData/fileOrElement/overloads/Override.kt @@ -1,4 +1,4 @@ -trait I { +interface I { public fun foo(i: Int, c: Char, s: String) public fun bar() } diff --git a/j2k/testData/fileOrElement/returnStatement/currentMethodBug.kt b/j2k/testData/fileOrElement/returnStatement/currentMethodBug.kt index 2a185cd59fc..25001325d50 100644 --- a/j2k/testData/fileOrElement/returnStatement/currentMethodBug.kt +++ b/j2k/testData/fileOrElement/returnStatement/currentMethodBug.kt @@ -1,4 +1,4 @@ -trait I { +interface I { public fun getInt(): Int } diff --git a/j2k/testData/fileOrElement/settings/openByDefault.kt b/j2k/testData/fileOrElement/settings/openByDefault.kt index c8fb4b47d8b..3e4530c9fbd 100644 --- a/j2k/testData/fileOrElement/settings/openByDefault.kt +++ b/j2k/testData/fileOrElement/settings/openByDefault.kt @@ -20,7 +20,7 @@ abstract class C { abstract fun foo() } -trait I { +interface I { public fun foo() } diff --git a/j2k/testData/fileOrElement/toKotlinClasses/TypeParameterBound.kt b/j2k/testData/fileOrElement/toKotlinClasses/TypeParameterBound.kt index 64c96e18f7d..f683fef0a95 100644 --- a/j2k/testData/fileOrElement/toKotlinClasses/TypeParameterBound.kt +++ b/j2k/testData/fileOrElement/toKotlinClasses/TypeParameterBound.kt @@ -1,5 +1,5 @@ import java.util.* -trait I>> +interface I>> class C : I>> diff --git a/j2k/testData/fileOrElement/trait/abstactInterface.kt b/j2k/testData/fileOrElement/trait/abstactInterface.kt index 3906f3bee7e..f555b842e56 100644 --- a/j2k/testData/fileOrElement/trait/abstactInterface.kt +++ b/j2k/testData/fileOrElement/trait/abstactInterface.kt @@ -1 +1 @@ -trait I \ No newline at end of file +interface I \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/emptyInterface.kt b/j2k/testData/fileOrElement/trait/emptyInterface.kt index 16c5ea4846e..3c30d34f09c 100644 --- a/j2k/testData/fileOrElement/trait/emptyInterface.kt +++ b/j2k/testData/fileOrElement/trait/emptyInterface.kt @@ -1 +1 @@ -trait A \ No newline at end of file +interface A \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/extendsOneClassAndImplementsSeveralInterfaces.kt b/j2k/testData/fileOrElement/trait/extendsOneClassAndImplementsSeveralInterfaces.kt index ce36fca2a9d..79662ed5dc4 100644 --- a/j2k/testData/fileOrElement/trait/extendsOneClassAndImplementsSeveralInterfaces.kt +++ b/j2k/testData/fileOrElement/trait/extendsOneClassAndImplementsSeveralInterfaces.kt @@ -1 +1 @@ -trait A : I0, I1, I2 \ No newline at end of file +interface A : I0, I1, I2 \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/extendsOneInterface.kt b/j2k/testData/fileOrElement/trait/extendsOneInterface.kt index 5ece953808c..f313552745e 100644 --- a/j2k/testData/fileOrElement/trait/extendsOneInterface.kt +++ b/j2k/testData/fileOrElement/trait/extendsOneInterface.kt @@ -1 +1 @@ -trait A : I \ No newline at end of file +interface A : I \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/interfaceWithFields.kt b/j2k/testData/fileOrElement/trait/interfaceWithFields.kt index 890a4bea0ad..71dd3a2c487 100644 --- a/j2k/testData/fileOrElement/trait/interfaceWithFields.kt +++ b/j2k/testData/fileOrElement/trait/interfaceWithFields.kt @@ -1,4 +1,4 @@ -trait INode { +interface INode { companion object { public val IN: String = "in" public val AT: String = "@" diff --git a/j2k/testData/fileOrElement/trait/interfaceWithMethodDeclaration.kt b/j2k/testData/fileOrElement/trait/interfaceWithMethodDeclaration.kt index 7c80ad34f56..807968af167 100644 --- a/j2k/testData/fileOrElement/trait/interfaceWithMethodDeclaration.kt +++ b/j2k/testData/fileOrElement/trait/interfaceWithMethodDeclaration.kt @@ -1,4 +1,4 @@ -trait INode { +interface INode { public fun getTag(): Tag public fun toKotlin(): String } \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/interfaceWithStaticFields.kt b/j2k/testData/fileOrElement/trait/interfaceWithStaticFields.kt index 9c442eeb6c3..b911346f045 100644 --- a/j2k/testData/fileOrElement/trait/interfaceWithStaticFields.kt +++ b/j2k/testData/fileOrElement/trait/interfaceWithStaticFields.kt @@ -1,4 +1,4 @@ -public trait INode { +public interface INode { companion object { public val IN: String = "in" public val AT: String = "@" diff --git a/j2k/testData/fileOrElement/trait/internalInterface.kt b/j2k/testData/fileOrElement/trait/internalInterface.kt index 03eed70d1fb..616fc8d128e 100644 --- a/j2k/testData/fileOrElement/trait/internalInterface.kt +++ b/j2k/testData/fileOrElement/trait/internalInterface.kt @@ -1 +1 @@ -trait Test \ No newline at end of file +interface Test \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/privateInterface.kt b/j2k/testData/fileOrElement/trait/privateInterface.kt index 01664e81afe..da531e4ab19 100644 --- a/j2k/testData/fileOrElement/trait/privateInterface.kt +++ b/j2k/testData/fileOrElement/trait/privateInterface.kt @@ -1 +1 @@ -private trait Test \ No newline at end of file +private interface Test \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/protectedInterface.kt b/j2k/testData/fileOrElement/trait/protectedInterface.kt index 40e6bbe6a82..93399f6fe59 100644 --- a/j2k/testData/fileOrElement/trait/protectedInterface.kt +++ b/j2k/testData/fileOrElement/trait/protectedInterface.kt @@ -1 +1 @@ -protected trait Test \ No newline at end of file +protected interface Test \ No newline at end of file diff --git a/j2k/testData/fileOrElement/trait/publicInterface.kt b/j2k/testData/fileOrElement/trait/publicInterface.kt index 17b72fe1674..d4774e1a183 100644 --- a/j2k/testData/fileOrElement/trait/publicInterface.kt +++ b/j2k/testData/fileOrElement/trait/publicInterface.kt @@ -1 +1 @@ -public trait Test \ No newline at end of file +public interface Test \ No newline at end of file diff --git a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt index 3705ca42f53..ad9b3d05d1f 100644 --- a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt +++ b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass.kt @@ -1,6 +1,6 @@ import java.io.* -trait I { +interface I { throws(IOException::class) public fun doIt(stream: InputStream): Int } diff --git a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt index 4b7b5b936ac..0b7051c782f 100644 --- a/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt +++ b/j2k/testData/fileOrElement/tryWithResource/WithReturnInAnonymousClass2.kt @@ -1,6 +1,6 @@ import java.io.* -trait I { +interface I { throws(IOException::class) public fun doIt(stream: InputStream): Int } diff --git a/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassExtending.kt b/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassExtending.kt index b85297cbc4f..6bbbc353e7e 100644 --- a/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassExtending.kt +++ b/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassExtending.kt @@ -1 +1 @@ -trait CommandHandler \ No newline at end of file +interface CommandHandler \ No newline at end of file diff --git a/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassMultiplyExtending.kt b/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassMultiplyExtending.kt index 7fefeae3e8f..3d0fd4021d6 100644 --- a/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassMultiplyExtending.kt +++ b/j2k/testData/fileOrElement/typeParameters/complexExampleWithClassMultiplyExtending.kt @@ -1 +1 @@ -trait CommandHandler \ No newline at end of file +interface CommandHandler \ No newline at end of file diff --git a/j2k/testData/fileOrElement/typeParameters/traitDoubleParametrizationWithTwoBoundsWithExtending.kt b/j2k/testData/fileOrElement/typeParameters/traitDoubleParametrizationWithTwoBoundsWithExtending.kt index 3f3a12bdfbb..324868ff658 100644 --- a/j2k/testData/fileOrElement/typeParameters/traitDoubleParametrizationWithTwoBoundsWithExtending.kt +++ b/j2k/testData/fileOrElement/typeParameters/traitDoubleParametrizationWithTwoBoundsWithExtending.kt @@ -1 +1 @@ -trait I : II where T : Comparable, K : Collection \ No newline at end of file +interface I : II where T : Comparable, K : Collection \ No newline at end of file