From b51368a5e5e0010d80ae3b1df7073a9c996ecbb5 Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Fri, 6 Mar 2015 15:41:30 +0300 Subject: [PATCH] Fix cls builder for new decompiler --- .../kotlin/psi/stubs/elements/JetFileElementType.java | 2 +- .../idea/decompiler/stubBuilder/ClassClsStubBuilder.kt | 1 + .../decompiler/stubBuilder/Annotations/Annotations.txt | 2 +- .../decompiler/stubBuilder/ClassObject/ClassObject.txt | 8 ++++---- idea/testData/decompiler/stubBuilder/Enum/Enum.txt | 2 +- 5 files changed, 8 insertions(+), 7 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/psi/stubs/elements/JetFileElementType.java b/compiler/frontend/src/org/jetbrains/kotlin/psi/stubs/elements/JetFileElementType.java index 90baf57a4b5..b8005d7f706 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/psi/stubs/elements/JetFileElementType.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/psi/stubs/elements/JetFileElementType.java @@ -36,7 +36,7 @@ import org.jetbrains.kotlin.psi.stubs.impl.KotlinFileStubImpl; import java.io.IOException; public class JetFileElementType extends IStubFileElementType { - public static final int STUB_VERSION = 37; + public static final int STUB_VERSION = 38; private static final String NAME = "kotlin.FILE"; diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/stubBuilder/ClassClsStubBuilder.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/stubBuilder/ClassClsStubBuilder.kt index 47facc3bb57..7d82ac46882 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/stubBuilder/ClassClsStubBuilder.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/stubBuilder/ClassClsStubBuilder.kt @@ -94,6 +94,7 @@ private class ClassClsStubBuilder( val additionalModifiers = when (classKind) { ProtoBuf.Class.Kind.ENUM_CLASS -> listOf(JetTokens.ENUM_KEYWORD) ProtoBuf.Class.Kind.ANNOTATION_CLASS -> listOf(JetTokens.ANNOTATION_KEYWORD) + ProtoBuf.Class.Kind.CLASS_OBJECT -> listOf(JetTokens.DEFAULT_KEYWORD) else -> listOf() } return createModifierListStubForDeclaration(parent, classProto.getFlags(), relevantFlags, additionalModifiers) diff --git a/idea/testData/decompiler/stubBuilder/Annotations/Annotations.txt b/idea/testData/decompiler/stubBuilder/Annotations/Annotations.txt index 4256f16d1e3..33fb41dc4e2 100644 --- a/idea/testData/decompiler/stubBuilder/Annotations/Annotations.txt +++ b/idea/testData/decompiler/stubBuilder/Annotations/Annotations.txt @@ -34,7 +34,7 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION:[referencedName=Int] CLASS_BODY: OBJECT_DECLARATION:[fqName=Annotations.Default, isDefault=true, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=Default, superNames=[]] - MODIFIER_LIST:[private] + MODIFIER_LIST:[private default] ANNOTATION_ENTRY:[hasValueArguments=false, shortName=b] CONSTRUCTOR_CALLEE: TYPE_REFERENCE: diff --git a/idea/testData/decompiler/stubBuilder/ClassObject/ClassObject.txt b/idea/testData/decompiler/stubBuilder/ClassObject/ClassObject.txt index fd9e05bfa37..f2e329be2e4 100644 --- a/idea/testData/decompiler/stubBuilder/ClassObject/ClassObject.txt +++ b/idea/testData/decompiler/stubBuilder/ClassObject/ClassObject.txt @@ -8,7 +8,7 @@ PsiJetFileStubImpl[package=test.class_object] VALUE_PARAMETER_LIST: CLASS_BODY: OBJECT_DECLARATION:[fqName=test.class_object.ClassObject.Default, isDefault=true, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=Default, superNames=[]] - MODIFIER_LIST:[public] + MODIFIER_LIST:[public default] CLASS_BODY: PROPERTY:[fqName=test.class_object.ClassObject.Default.j, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReceiverTypeRef=false, hasReturnTypeRef=true, isProbablyNothingType=false, isTopLevel=false, isVar=false, name=j] MODIFIER_LIST:[internal final] @@ -68,21 +68,21 @@ PsiJetFileStubImpl[package=test.class_object] VALUE_PARAMETER_LIST: CLASS_BODY: OBJECT_DECLARATION:[fqName=test.class_object.ClassObject.B.Default, isDefault=true, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=Default, superNames=[]] - MODIFIER_LIST:[internal] + MODIFIER_LIST:[internal default] CLASS_BODY: CLASS:[fqName=test.class_object.ClassObject.B.Default.C, isEnumEntry=false, isLocal=false, isTopLevel=false, isTrait=false, name=C, superNames=[]] MODIFIER_LIST:[internal final] VALUE_PARAMETER_LIST: CLASS_BODY: OBJECT_DECLARATION:[fqName=test.class_object.ClassObject.B.Default.C.Default, isDefault=true, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=Default, superNames=[]] - MODIFIER_LIST:[internal] + MODIFIER_LIST:[internal default] CLASS_BODY: CLASS:[fqName=test.class_object.ClassObject.B.Default.C.Default.D, isEnumEntry=false, isLocal=false, isTopLevel=false, isTrait=false, name=D, superNames=[]] MODIFIER_LIST:[internal final] VALUE_PARAMETER_LIST: CLASS_BODY: OBJECT_DECLARATION:[fqName=test.class_object.ClassObject.B.Default.C.Default.D.Default, isDefault=true, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=Default, superNames=[]] - MODIFIER_LIST:[internal] + MODIFIER_LIST:[internal default] CLASS_BODY: PROPERTY:[fqName=test.class_object.ClassObject.B.Default.C.Default.D.Default.i, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReceiverTypeRef=false, hasReturnTypeRef=true, isProbablyNothingType=false, isTopLevel=false, isVar=false, name=i] MODIFIER_LIST:[internal final] diff --git a/idea/testData/decompiler/stubBuilder/Enum/Enum.txt b/idea/testData/decompiler/stubBuilder/Enum/Enum.txt index 68cc95985b3..036177a026e 100644 --- a/idea/testData/decompiler/stubBuilder/Enum/Enum.txt +++ b/idea/testData/decompiler/stubBuilder/Enum/Enum.txt @@ -36,7 +36,7 @@ PsiJetFileStubImpl[package=a.b.c.test.enum] REFERENCE_EXPRESSION:[referencedName=Enum] CLASS_BODY: OBJECT_DECLARATION:[fqName=a.b.c.test.enum.Enum.Default, isDefault=true, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=Default, superNames=[]] - MODIFIER_LIST:[internal] + MODIFIER_LIST:[internal default] CLASS_BODY: PROPERTY:[fqName=a.b.c.test.enum.Enum.Default.c, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReceiverTypeRef=false, hasReturnTypeRef=true, isProbablyNothingType=false, isTopLevel=false, isVar=false, name=c] MODIFIER_LIST:[internal final]