diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedFlexibleTypes/AnnotatedFlexibleTypes.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedFlexibleTypes/AnnotatedFlexibleTypes.txt index fd4ad408ad7..0d2c03bdc28 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedFlexibleTypes/AnnotatedFlexibleTypes.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedFlexibleTypes/AnnotatedFlexibleTypes.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/AnnotatedFlexibleTypes, fqName=test.AnnotatedFlexibleTypes, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=AnnotatedFlexibleTypes, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnnotatedFlexibleTypes] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=javaClass] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInEnumConstructor/AnnotatedParameterInEnumConstructor.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInEnumConstructor/AnnotatedParameterInEnumConstructor.txt index caa91d9fb3f..f7c0c9ec4bb 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInEnumConstructor/AnnotatedParameterInEnumConstructor.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInEnumConstructor/AnnotatedParameterInEnumConstructor.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/AnnotatedParameterInEnumConstructor, fqName=test.AnnotatedParameterInEnumConstructor, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=AnnotatedParameterInEnumConstructor, superNames=[Enum]] MODIFIER_LIST[enum public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnnotatedParameterInEnumConstructor] MODIFIER_LIST[private] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=a] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInInnerClassConstructor/AnnotatedParameterInInnerClassConstructor.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInInnerClassConstructor/AnnotatedParameterInInnerClassConstructor.txt index 216ae99c2fc..8574d41738b 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInInnerClassConstructor/AnnotatedParameterInInnerClassConstructor.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotatedParameterInInnerClassConstructor/AnnotatedParameterInInnerClassConstructor.txt @@ -4,13 +4,13 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/AnnotatedParameterInInnerClassConstructor, fqName=test.AnnotatedParameterInInnerClassConstructor, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=AnnotatedParameterInInnerClassConstructor, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnnotatedParameterInInnerClassConstructor] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=test/AnnotatedParameterInInnerClassConstructor.Inner, fqName=test.AnnotatedParameterInInnerClassConstructor.Inner, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Inner, superNames=[]] MODIFIER_LIST[inner public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Inner] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=a] @@ -46,7 +46,7 @@ PsiJetFileStubImpl[package=test] MODIFIER_LIST[inner public final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=T] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=InnerGeneric] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=a] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationClass/AnnotationClass.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationClass/AnnotationClass.txt index 54d7edf0d69..d473b32b30b 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationClass/AnnotationClass.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationClass/AnnotationClass.txt @@ -6,7 +6,7 @@ PsiJetFileStubImpl[package=test.a] IMPORT_LIST CLASS[classId=test/a/AnnotationClass, fqName=test.a.AnnotationClass, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=AnnotationClass, superNames=[Annotation]] MODIFIER_LIST[public final annotation] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnnotationClass] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=i] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationValues/AnnotationValues.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationValues/AnnotationValues.txt index 21f2118e991..19eed58c106 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationValues/AnnotationValues.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationValues/AnnotationValues.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/AnnotationValues, fqName=test.AnnotationValues, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=AnnotationValues, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnnotationValues] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -17,7 +17,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=test] REFERENCE_EXPRESSION[referencedName=Arrays] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=WithArrays] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -32,7 +32,7 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=ClassLiteral] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=T] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=WithClassLiteral] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -45,7 +45,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=test] REFERENCE_EXPRESSION[referencedName=EnumLiteral] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=WithEnumLiteral] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -58,7 +58,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=test] REFERENCE_EXPRESSION[referencedName=Outer] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=WithNested] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -71,7 +71,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=test] REFERENCE_EXPRESSION[referencedName=Simple] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=WithSimple] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -84,7 +84,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=test] REFERENCE_EXPRESSION[referencedName=StringLiteral] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=WithStringLiteral] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -97,7 +97,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=test] REFERENCE_EXPRESSION[referencedName=VarArg] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=WithVarArg] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Annotations/Annotations.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Annotations/Annotations.txt index d305e7b135b..9cf67d348ad 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Annotations/Annotations.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Annotations/Annotations.txt @@ -8,7 +8,7 @@ PsiJetFileStubImpl[package=] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=a] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Annotations] MODIFIER_LIST[private] ANNOTATION_ENTRY[hasValueArguments=false, shortName=a] CONSTRUCTOR_CALLEE @@ -307,7 +307,7 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=/Annotations.ClassWithConstructor, fqName=Annotations.ClassWithConstructor, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=ClassWithConstructor, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=ClassWithConstructor] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=b] @@ -332,7 +332,7 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=Int] CLASS[classId=/Annotations.En, fqName=Annotations.En, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=En, superNames=[Enum]] MODIFIER_LIST[enum public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=En] MODIFIER_LIST[private] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -372,7 +372,7 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=c] CLASS[classId=/Annotations.Nested, fqName=Annotations.Nested, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Nested, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Nested] MODIFIER_LIST[private] ANNOTATION_ENTRY[hasValueArguments=false, shortName=a] CONSTRUCTOR_CALLEE diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnNullableTypes/AnnotationsOnNullableTypes.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnNullableTypes/AnnotationsOnNullableTypes.txt index 7deca3695fe..09d4057bbf5 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnNullableTypes/AnnotationsOnNullableTypes.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnNullableTypes/AnnotationsOnNullableTypes.txt @@ -3,7 +3,7 @@ PsiJetFileStubImpl[package=] IMPORT_LIST CLASS[classId=/AnnotationsOnNullableTypes, fqName=AnnotationsOnNullableTypes, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=AnnotationsOnNullableTypes, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnnotationsOnNullableTypes] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnParenthesizedTypes/AnnotationsOnParenthesizedTypes.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnParenthesizedTypes/AnnotationsOnParenthesizedTypes.txt index 510228d0d7f..a3b505ef940 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnParenthesizedTypes/AnnotationsOnParenthesizedTypes.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnnotationsOnParenthesizedTypes/AnnotationsOnParenthesizedTypes.txt @@ -3,7 +3,7 @@ PsiJetFileStubImpl[package=] IMPORT_LIST CLASS[classId=/AnnotationsOnParenthesizedTypes, fqName=AnnotationsOnParenthesizedTypes, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=AnnotationsOnParenthesizedTypes, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnnotationsOnParenthesizedTypes] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnonymousReturnWithGenericType/AnonymousReturnWithGenericType.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnonymousReturnWithGenericType/AnonymousReturnWithGenericType.txt index b2220af5ffb..0bfccaa9c66 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnonymousReturnWithGenericType/AnonymousReturnWithGenericType.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/AnonymousReturnWithGenericType/AnonymousReturnWithGenericType.txt @@ -5,7 +5,7 @@ PsiJetFileStubImpl[package=] MODIFIER_LIST[public final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=T] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=AnonymousReturnWithGenericType] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassMembers/ClassMembers.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassMembers/ClassMembers.txt index 8fa15d85bfc..7aa25e84684 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassMembers/ClassMembers.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassMembers/ClassMembers.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/ClassMembers, fqName=test.ClassMembers, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=ClassMembers, superNames=[]] MODIFIER_LIST[abstract public] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=ClassMembers] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassObject/ClassObject.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassObject/ClassObject.txt index bb5037c38f7..b13db90c17f 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassObject/ClassObject.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ClassObject/ClassObject.txt @@ -6,7 +6,7 @@ PsiJetFileStubImpl[package=test.class_object] IMPORT_LIST CLASS[classId=test/class_object/ClassObject, fqName=test.class_object.ClassObject, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=ClassObject, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=ClassObject] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -30,13 +30,13 @@ PsiJetFileStubImpl[package=test.class_object] REFERENCE_EXPRESSION[referencedName=Int] CLASS[classId=test/class_object/ClassObject.Companion.A, fqName=test.class_object.ClassObject.Companion.A, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=A, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=A] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=test/class_object/ClassObject.Companion.A.B, fqName=test.class_object.ClassObject.Companion.A.B, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=B, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=B] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -72,7 +72,7 @@ PsiJetFileStubImpl[package=test.class_object] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=test/class_object/ClassObject.B, fqName=test.class_object.ClassObject.B, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=B, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=B] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -81,7 +81,7 @@ PsiJetFileStubImpl[package=test.class_object] CLASS_BODY CLASS[classId=test/class_object/ClassObject.B.Companion.C, fqName=test.class_object.ClassObject.B.Companion.C, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=C, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=C] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -90,7 +90,7 @@ PsiJetFileStubImpl[package=test.class_object] CLASS_BODY CLASS[classId=test/class_object/ClassObject.B.Companion.C.Companion.D, fqName=test.class_object.ClassObject.B.Companion.C.Companion.D, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=D, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=D] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -114,7 +114,7 @@ PsiJetFileStubImpl[package=test.class_object] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=test/class_object/ClassObject.B.Companion.C.Companion.D.Companion.Anno, fqName=test.class_object.ClassObject.B.Companion.C.Companion.D.Companion.Anno, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Anno, superNames=[Annotation]] MODIFIER_LIST[public final annotation] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Anno] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -127,7 +127,7 @@ PsiJetFileStubImpl[package=test.class_object] CLASS_BODY CLASS[classId=test/class_object/ClassObject.B.Companion.C.Companion.D.Companion.En, fqName=test.class_object.ClassObject.B.Companion.C.Companion.D.Companion.En, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=En, superNames=[Enum]] MODIFIER_LIST[enum public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=En] MODIFIER_LIST[private] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversCallableMembers/ContextReceiversCallableMembers.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversCallableMembers/ContextReceiversCallableMembers.txt index d46a4a11d19..99aaf94145a 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversCallableMembers/ContextReceiversCallableMembers.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversCallableMembers/ContextReceiversCallableMembers.txt @@ -3,17 +3,17 @@ PsiJetFileStubImpl[package=] IMPORT_LIST CLASS[classId=/ContextReceiversCallableMembers, fqName=ContextReceiversCallableMembers, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=ContextReceiversCallableMembers, superNames=[]] MODIFIER_LIST[open private] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=ContextReceiversCallableMembers] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY PROPERTY[fqName=ContextReceiversCallableMembers.property, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=true, isTopLevel=false, isVar=false, name=property] CONTEXT_RECEIVER_LIST - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=A] - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=B] @@ -30,11 +30,11 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=Int] PROPERTY[fqName=ContextReceiversCallableMembers.propertyWithSetter, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=true, isTopLevel=false, isVar=true, name=propertyWithSetter] CONTEXT_RECEIVER_LIST - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=A] - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=B] @@ -51,11 +51,11 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=Int] FUN[fqName=ContextReceiversCallableMembers.function, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=true, isTopLevel=false, mayHaveContract=false, name=function] CONTEXT_RECEIVER_LIST - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=A] - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=B] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnClass/ContextReceiversOnClass.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnClass/ContextReceiversOnClass.txt index 132c315467f..b56f3339262 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnClass/ContextReceiversOnClass.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnClass/ContextReceiversOnClass.txt @@ -3,16 +3,16 @@ PsiJetFileStubImpl[package=] IMPORT_LIST CLASS[classId=/ContextReceiversOnClass, fqName=ContextReceiversOnClass, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=ContextReceiversOnClass, superNames=[]] CONTEXT_RECEIVER_LIST - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=A] - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=B] MODIFIER_LIST[open private] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=ContextReceiversOnClass] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnTopLevelCallables/ContextReceiversOnTopLevelCallables.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnTopLevelCallables/ContextReceiversOnTopLevelCallables.txt index 111694f767a..7ca4cc5aa4b 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnTopLevelCallables/ContextReceiversOnTopLevelCallables.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/ContextReceiversOnTopLevelCallables/ContextReceiversOnTopLevelCallables.txt @@ -3,11 +3,11 @@ PsiJetFileStubImpl[package=] IMPORT_LIST PROPERTY[fqName=property, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=true, isTopLevel=true, isVar=false, name=property] CONTEXT_RECEIVER_LIST - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=A] - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=B] @@ -24,11 +24,11 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=Int] PROPERTY[fqName=propertyWithSetter, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=true, isTopLevel=true, isVar=true, name=propertyWithSetter] CONTEXT_RECEIVER_LIST - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=A] - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=B] @@ -45,11 +45,11 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=Int] FUN[fqName=function, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=true, isTopLevel=true, mayHaveContract=false, name=function] CONTEXT_RECEIVER_LIST - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=A] - CONTEXT_RECEIVER + CONTEXT_RECEIVER[label=null] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=B] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DataClass/DataClass.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DataClass/DataClass.txt index 29b338ac778..4eef53618e8 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DataClass/DataClass.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DataClass/DataClass.txt @@ -8,7 +8,7 @@ PsiJetFileStubImpl[package=a.b.c] IMPORT_LIST CLASS[classId=a/b/c/DataClass, fqName=a.b.c.DataClass, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=DataClass, superNames=[]] MODIFIER_LIST[public final data] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=DataClass] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=i] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DefinitelyNotNullTypes/DefinitelyNotNullTypes.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DefinitelyNotNullTypes/DefinitelyNotNullTypes.txt index 2a728b94d34..f54d058c19c 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DefinitelyNotNullTypes/DefinitelyNotNullTypes.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DefinitelyNotNullTypes/DefinitelyNotNullTypes.txt @@ -5,7 +5,7 @@ PsiJetFileStubImpl[package=] MODIFIER_LIST[public final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=T] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=DefinitelyNotNullTypes] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=x] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Delegation/Delegation.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Delegation/Delegation.txt index aa0bcbe03d1..f924eb751e1 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Delegation/Delegation.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Delegation/Delegation.txt @@ -3,7 +3,7 @@ PsiJetFileStubImpl[package=] IMPORT_LIST CLASS[classId=/Delegation, fqName=Delegation, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=Delegation, superNames=[T]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Delegation] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=c] diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DependencyOnNestedClasses/DependencyOnNestedClasses.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DependencyOnNestedClasses/DependencyOnNestedClasses.txt index 20624dc7c5b..d1202b20f74 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DependencyOnNestedClasses/DependencyOnNestedClasses.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/DependencyOnNestedClasses/DependencyOnNestedClasses.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/DependencyOnNestedClasses, fqName=test.DependencyOnNestedClasses, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=DependencyOnNestedClasses, superNames=[Nested]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=DependencyOnNestedClasses] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Enum/Enum.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Enum/Enum.txt index d7d119fa049..99bdacb5aab 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Enum/Enum.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Enum/Enum.txt @@ -12,7 +12,7 @@ PsiJetFileStubImpl[package=a.b.c.test.enum] IMPORT_LIST CLASS[classId=a/b/c/test/enum/Enum, fqName=a.b.c.test.enum.Enum, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=Enum, superNames=[Enum]] MODIFIER_LIST[enum public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Enum] MODIFIER_LIST[private] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FlexibleTypes/FlexibleTypes.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FlexibleTypes/FlexibleTypes.txt index 6aa419687c2..dcbf1114f8b 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FlexibleTypes/FlexibleTypes.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FlexibleTypes/FlexibleTypes.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/FlexibleTypes, fqName=test.FlexibleTypes, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=FlexibleTypes, superNames=[]] MODIFIER_LIST[abstract public] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=FlexibleTypes] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FunInterfaceDeclaration/FunInterfaceDeclaration.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FunInterfaceDeclaration/FunInterfaceDeclaration.txt index f41ceb7e0eb..6e4bc163c1c 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FunInterfaceDeclaration/FunInterfaceDeclaration.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/FunInterfaceDeclaration/FunInterfaceDeclaration.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/FunInterfaceDeclaration, fqName=test.FunInterfaceDeclaration, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=FunInterfaceDeclaration, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=FunInterfaceDeclaration] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InheritingClasses/InheritingClasses.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InheritingClasses/InheritingClasses.txt index 7a332259b73..0d9157bdfcc 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InheritingClasses/InheritingClasses.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InheritingClasses/InheritingClasses.txt @@ -4,13 +4,13 @@ PsiJetFileStubImpl[package=a] IMPORT_LIST CLASS[classId=a/InheritingClasses, fqName=a.InheritingClasses, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=InheritingClasses, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=InheritingClasses] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=a/InheritingClasses.A, fqName=a.InheritingClasses.A, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=A, superNames=[C]] MODIFIER_LIST[abstract public] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=A] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=c] @@ -68,7 +68,7 @@ PsiJetFileStubImpl[package=a] REFERENCE_EXPRESSION[referencedName=Int] CLASS[classId=a/InheritingClasses.B, fqName=a.InheritingClasses.B, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=B, superNames=[A]] MODIFIER_LIST[open public] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=B] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -147,7 +147,7 @@ PsiJetFileStubImpl[package=a] CLASS_BODY CLASS[classId=a/InheritingClasses.G, fqName=a.InheritingClasses.G, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=G, superNames=[B, C, D, E]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=G] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -193,25 +193,25 @@ PsiJetFileStubImpl[package=a] CLASS_BODY CLASS[classId=a/InheritingClasses.InheritAny, fqName=a.InheritingClasses.InheritAny, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=InheritAny, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=InheritAny] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=a/InheritingClasses.InheritAny.ExplicitAny, fqName=a.InheritingClasses.InheritAny.ExplicitAny, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=ExplicitAny, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=ExplicitAny] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=a/InheritingClasses.InheritAny.ImplicitAny, fqName=a.InheritingClasses.InheritAny.ImplicitAny, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=ImplicitAny, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=ImplicitAny] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=a/InheritingClasses.InheritAny.OnlyTrait, fqName=a.InheritingClasses.InheritAny.OnlyTrait, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=OnlyTrait, superNames=[SomeTrait]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=OnlyTrait] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -228,7 +228,7 @@ PsiJetFileStubImpl[package=a] CLASS_BODY CLASS[classId=a/InheritingClasses.InheritAny.OnlyTraits, fqName=a.InheritingClasses.InheritAny.OnlyTraits, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=OnlyTraits, superNames=[SomeTrait, SomeTrait2]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=OnlyTraits] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -261,7 +261,7 @@ PsiJetFileStubImpl[package=a] CLASS_BODY CLASS[classId=a/InheritingClasses.InheritAny.TraitWithExplicitAny, fqName=a.InheritingClasses.InheritAny.TraitWithExplicitAny, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=TraitWithExplicitAny, superNames=[Any, SomeTrait]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=TraitWithExplicitAny] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -284,7 +284,7 @@ PsiJetFileStubImpl[package=a] CLASS_BODY CLASS[classId=a/InheritingClasses.InheritAny.TraitsWithExplicitAny, fqName=a.InheritingClasses.InheritAny.TraitsWithExplicitAny, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=TraitsWithExplicitAny, superNames=[SomeTrait2, Any, SomeTrait]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=TraitsWithExplicitAny] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -317,7 +317,7 @@ PsiJetFileStubImpl[package=a] CLASS_BODY CLASS[classId=a/InheritingClasses.InheritFunctionType, fqName=a.InheritingClasses.InheritFunctionType, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=InheritFunctionType, superNames=[]] MODIFIER_LIST[abstract public] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=InheritFunctionType] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerClassEnumEntry/InnerClassEnumEntry.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerClassEnumEntry/InnerClassEnumEntry.txt index d1742328a11..13edbeab79e 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerClassEnumEntry/InnerClassEnumEntry.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerClassEnumEntry/InnerClassEnumEntry.txt @@ -3,7 +3,7 @@ PsiJetFileStubImpl[package=] IMPORT_LIST CLASS[classId=/InnerClassEnumEntry, fqName=InnerClassEnumEntry, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=InnerClassEnumEntry, superNames=[Enum]] MODIFIER_LIST[enum public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=InnerClassEnumEntry] MODIFIER_LIST[private] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerTypes/InnerTypes.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerTypes/InnerTypes.txt index ec9dfd3e05f..7cb8ef046cf 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerTypes/InnerTypes.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/InnerTypes/InnerTypes.txt @@ -7,7 +7,7 @@ PsiJetFileStubImpl[package=test] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=E] TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=F] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=InnerTypes] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -62,7 +62,7 @@ PsiJetFileStubImpl[package=test] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=G] TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=H] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Inner] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -70,7 +70,7 @@ PsiJetFileStubImpl[package=test] MODIFIER_LIST[inner public final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=I] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Inner3] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -211,7 +211,7 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=test/InnerTypes.Inner2, fqName=test.InnerTypes.Inner2, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Inner2, superNames=[]] MODIFIER_LIST[inner public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Inner2] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/LocalClass/LocalClass.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/LocalClass/LocalClass.txt index 7e1c85a61d7..a48faecc0f4 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/LocalClass/LocalClass.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/LocalClass/LocalClass.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/LocalClass, fqName=test.LocalClass, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=LocalClass, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=LocalClass] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Modifiers/Modifiers.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Modifiers/Modifiers.txt index d7d45a07ed0..f6a6e9001e2 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Modifiers/Modifiers.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Modifiers/Modifiers.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/Modifiers, fqName=test.Modifiers, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=Modifiers, superNames=[]] MODIFIER_LIST[public final data] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Modifiers] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=x] @@ -156,7 +156,7 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=test/Modifiers.Ann, fqName=test.Modifiers.Ann, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Ann, superNames=[Annotation]] MODIFIER_LIST[public final annotation] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Ann] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NamedCompanionObject/NamedCompanionObject.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NamedCompanionObject/NamedCompanionObject.txt index a140192b7a0..5ba07cad34a 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NamedCompanionObject/NamedCompanionObject.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NamedCompanionObject/NamedCompanionObject.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/NamedCompanionObject, fqName=test.NamedCompanionObject, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=NamedCompanionObject, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=NamedCompanionObject] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -28,13 +28,13 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=Int] CLASS[classId=test/NamedCompanionObject.Named.A, fqName=test.NamedCompanionObject.Named.A, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=A, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=A] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=test/NamedCompanionObject.Named.A.B, fqName=test.NamedCompanionObject.Named.A.B, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=B, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=B] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -70,7 +70,7 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=test/NamedCompanionObject.B, fqName=test.NamedCompanionObject.B, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=B, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=B] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -79,7 +79,7 @@ PsiJetFileStubImpl[package=test] CLASS_BODY CLASS[classId=test/NamedCompanionObject.B.NamedInB.C, fqName=test.NamedCompanionObject.B.NamedInB.C, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=C, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=C] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -88,7 +88,7 @@ PsiJetFileStubImpl[package=test] CLASS_BODY CLASS[classId=test/NamedCompanionObject.B.NamedInB.C.NamedInC.D, fqName=test.NamedCompanionObject.B.NamedInB.C.NamedInC.D, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=D, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=D] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -112,7 +112,7 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=test/NamedCompanionObject.B.NamedInB.C.NamedInC.D.Companion.Anno, fqName=test.NamedCompanionObject.B.NamedInB.C.NamedInC.D.Companion.Anno, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Anno, superNames=[Annotation]] MODIFIER_LIST[public final annotation] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Anno] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST @@ -125,7 +125,7 @@ PsiJetFileStubImpl[package=test] CLASS_BODY CLASS[classId=test/NamedCompanionObject.B.NamedInB.C.NamedInC.D.Companion.En, fqName=test.NamedCompanionObject.B.NamedInB.C.NamedInC.D.Companion.En, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=En, superNames=[Enum]] MODIFIER_LIST[enum public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=En] MODIFIER_LIST[private] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NestedClasses/NestedClasses.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NestedClasses/NestedClasses.txt index c87643bb129..ce044d4c4b2 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NestedClasses/NestedClasses.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/NestedClasses/NestedClasses.txt @@ -6,7 +6,7 @@ PsiJetFileStubImpl[package=test] MODIFIER_LIST[public final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TOuter] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=NestedClasses] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -32,7 +32,7 @@ PsiJetFileStubImpl[package=test] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=TOuter] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Inner] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -52,7 +52,7 @@ PsiJetFileStubImpl[package=test] MODIFIER_LIST[inner private final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TII] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=II] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -108,7 +108,7 @@ PsiJetFileStubImpl[package=test] MODIFIER_LIST[private final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TN] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Nested] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -138,7 +138,7 @@ PsiJetFileStubImpl[package=test] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=TN] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=NI] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -162,7 +162,7 @@ PsiJetFileStubImpl[package=test] MODIFIER_LIST[public final] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TNN] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=NN] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.kt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.kt index a7f36afe203..89e5e0980b0 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.kt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.kt @@ -5,6 +5,8 @@ public object Objects { fun f() { } + fun g() = 1 + private object InnerObject : A { val c = 0 diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.txt index df62221e586..5dd5d6ad001 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Objects/Objects.txt @@ -19,6 +19,14 @@ PsiJetFileStubImpl[package=] USER_TYPE REFERENCE_EXPRESSION[referencedName=kotlin] REFERENCE_EXPRESSION[referencedName=Unit] + FUN[fqName=Objects.g, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isTopLevel=false, mayHaveContract=false, name=g] + MODIFIER_LIST[public final] + VALUE_PARAMETER_LIST + TYPE_REFERENCE + USER_TYPE + USER_TYPE + REFERENCE_EXPRESSION[referencedName=kotlin] + REFERENCE_EXPRESSION[referencedName=Int] OBJECT_DECLARATION[classId=/Objects.InnerObject, fqName=Objects.InnerObject, isCompanion=false, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=InnerObject, superNames=[A]] MODIFIER_LIST[private] SUPER_TYPE_LIST @@ -44,7 +52,7 @@ PsiJetFileStubImpl[package=] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=/Objects.NestedClass, fqName=Objects.NestedClass, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=NestedClass, superNames=[]] MODIFIER_LIST[open public] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=NestedClass] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateConstField/PrivateConstField.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateConstField/PrivateConstField.txt index 7f158512f19..46c525b4900 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateConstField/PrivateConstField.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateConstField/PrivateConstField.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/PrivateConstField, fqName=test.PrivateConstField, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=PrivateConstField, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=PrivateConstField] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateToThis/PrivateToThis.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateToThis/PrivateToThis.txt index f47bd949cdc..640b6f13878 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateToThis/PrivateToThis.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/PrivateToThis/PrivateToThis.txt @@ -7,7 +7,7 @@ PsiJetFileStubImpl[package=p] TYPE_PARAMETER_LIST TYPE_PARAMETER[fqName=null, isInVariance=true, isOutVariance=false, name=I] MODIFIER_LIST[in] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=PrivateToThis] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/Sealed.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/Sealed.txt index cf87da7156d..3214a8c7434 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/Sealed.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/Sealed.txt @@ -4,13 +4,13 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/Sealed, fqName=test.Sealed, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=Sealed, superNames=[]] MODIFIER_LIST[public sealed] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Sealed] MODIFIER_LIST[protected] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=test/Sealed.Nested, fqName=test.Sealed.Nested, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Nested, superNames=[Sealed]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Nested] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SecondaryConstructors/SecondaryConstructors.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SecondaryConstructors/SecondaryConstructors.txt index 4b1b7125653..a9a3912087b 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SecondaryConstructors/SecondaryConstructors.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SecondaryConstructors/SecondaryConstructors.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/SecondaryConstructors, fqName=test.SecondaryConstructors, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=SecondaryConstructors, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=SecondaryConstructors] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=x] @@ -14,7 +14,7 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=kotlin] REFERENCE_EXPRESSION[referencedName=Boolean] CLASS_BODY - SECONDARY_CONSTRUCTOR + SECONDARY_CONSTRUCTOR[fqName=null, hasBody=true, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=SecondaryConstructors] MODIFIER_LIST[public] ANNOTATION_ENTRY[hasValueArguments=false, shortName=anno] CONSTRUCTOR_CALLEE @@ -30,7 +30,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=kotlin] REFERENCE_EXPRESSION[referencedName=String] - SECONDARY_CONSTRUCTOR + SECONDARY_CONSTRUCTOR[fqName=null, hasBody=true, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=SecondaryConstructors] MODIFIER_LIST[private] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=x] @@ -65,7 +65,7 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=io] REFERENCE_EXPRESSION[referencedName=Serializable] CLASS_BODY - SECONDARY_CONSTRUCTOR + SECONDARY_CONSTRUCTOR[fqName=null, hasBody=true, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Inner] MODIFIER_LIST[public] VALUE_PARAMETER_LIST VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=x] @@ -79,7 +79,7 @@ PsiJetFileStubImpl[package=test] CLASS[classId=test/SecondaryConstructors.Nested, fqName=test.SecondaryConstructors.Nested, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Nested, superNames=[]] MODIFIER_LIST[public final] CLASS_BODY - SECONDARY_CONSTRUCTOR + SECONDARY_CONSTRUCTOR[fqName=null, hasBody=true, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Nested] MODIFIER_LIST[public] ANNOTATION_ENTRY[hasValueArguments=false, shortName=anno] CONSTRUCTOR_CALLEE @@ -95,6 +95,6 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=kotlin] REFERENCE_EXPRESSION[referencedName=Int] - SECONDARY_CONSTRUCTOR + SECONDARY_CONSTRUCTOR[fqName=null, hasBody=true, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Nested] MODIFIER_LIST[internal] VALUE_PARAMETER_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SuspendLambda/SuspendLambda.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SuspendLambda/SuspendLambda.txt index 5c3bb7d85b7..c801c72f302 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SuspendLambda/SuspendLambda.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SuspendLambda/SuspendLambda.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/SuspendLambda, fqName=test.SuspendLambda, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=SuspendLambda, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=SuspendLambda] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeAliases/TypeAliases.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeAliases/TypeAliases.txt index 7aafcb92318..316a462d3ae 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeAliases/TypeAliases.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeAliases/TypeAliases.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/TypeAliases, fqName=test.TypeAliases, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=TypeAliases, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=TypeAliases] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY @@ -97,13 +97,13 @@ PsiJetFileStubImpl[package=test] REFERENCE_EXPRESSION[referencedName=Unit] CLASS[classId=test/TypeAliases.OrderA, fqName=test.TypeAliases.OrderA, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=OrderA, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=OrderA] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY CLASS[classId=test/TypeAliases.OrderB, fqName=test.TypeAliases.OrderB, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=OrderB, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=OrderB] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeBoundsAndDelegationSpecifiers/TypeBoundsAndDelegationSpecifiers.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeBoundsAndDelegationSpecifiers/TypeBoundsAndDelegationSpecifiers.txt index 379a79b417d..d5498a99ae5 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeBoundsAndDelegationSpecifiers/TypeBoundsAndDelegationSpecifiers.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeBoundsAndDelegationSpecifiers/TypeBoundsAndDelegationSpecifiers.txt @@ -18,7 +18,7 @@ PsiJetFileStubImpl[package=test] USER_TYPE REFERENCE_EXPRESSION[referencedName=test] REFERENCE_EXPRESSION[referencedName=T] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=TypeBoundsAndDelegationSpecifiers] MODIFIER_LIST[public] VALUE_PARAMETER_LIST SUPER_TYPE_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeModifiers/TypeModifiers.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeModifiers/TypeModifiers.txt index f290bed7c5a..25bd81f0684 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeModifiers/TypeModifiers.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeModifiers/TypeModifiers.txt @@ -3,7 +3,7 @@ PsiJetFileStubImpl[package=] IMPORT_LIST CLASS[classId=/TypeModifiers, fqName=TypeModifiers, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=TypeModifiers, superNames=[]] MODIFIER_LIST[public final] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=TypeModifiers] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeParams/TypeParams.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeParams/TypeParams.txt index 5e8112de3dc..534b7036400 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeParams/TypeParams.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/TypeParams/TypeParams.txt @@ -44,7 +44,7 @@ PsiJetFileStubImpl[package=test] TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION[referencedName=T6] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=TypeParams] MODIFIER_LIST[public] VALUE_PARAMETER_LIST TYPE_CONSTRAINT_LIST diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Types/Types.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Types/Types.txt index f12faa12bfb..c8a32278b4f 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Types/Types.txt +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Types/Types.txt @@ -4,7 +4,7 @@ PsiJetFileStubImpl[package=test] IMPORT_LIST CLASS[classId=test/Types, fqName=test.Types, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=Types, superNames=[]] MODIFIER_LIST[abstract public] - PRIMARY_CONSTRUCTOR + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Types] MODIFIER_LIST[public] VALUE_PARAMETER_LIST CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/CallableClsStubBuilder.kt b/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/CallableClsStubBuilder.kt index 4f52ca416c4..d246a1ebdb4 100644 --- a/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/CallableClsStubBuilder.kt +++ b/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/CallableClsStubBuilder.kt @@ -12,8 +12,8 @@ import org.jetbrains.kotlin.metadata.ProtoBuf.Modality import org.jetbrains.kotlin.metadata.deserialization.* import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes +import org.jetbrains.kotlin.psi.stubs.impl.KotlinConstructorStubImpl import org.jetbrains.kotlin.psi.stubs.impl.KotlinFunctionStubImpl -import org.jetbrains.kotlin.psi.stubs.impl.KotlinPlaceHolderStubImpl import org.jetbrains.kotlin.psi.stubs.impl.KotlinPropertyStubImpl import org.jetbrains.kotlin.resolve.DataClassResolver import org.jetbrains.kotlin.serialization.deserialization.AnnotatedCallableKind @@ -170,6 +170,9 @@ private class FunctionClsStubBuilder( override fun doCreateCallableStub(parent: StubElement): StubElement { val callableName = c.nameResolver.getName(functionProto.name) + // Note that arguments passed to stubs here and elsewhere are based on what stabs would be generated based on decompiled code + // As functions are never decompiled to fun f() = 1 form, hasBlockBody is always true + // This info is anyway irrelevant for the purposes these stubs are used return KotlinFunctionStubImpl( parent, callableName.ref(), @@ -237,6 +240,8 @@ private class PropertyClsStubBuilder( override fun doCreateCallableStub(parent: StubElement): StubElement { val callableName = c.nameResolver.getName(propertyProto.name) + // Note that arguments passed to stubs here and elsewhere are based on what stabs would be generated based on decompiled code + // This info is anyway irrelevant for the purposes these stubs are used return KotlinPropertyStubImpl( parent, callableName.ref(), @@ -287,9 +292,14 @@ private class ConstructorClsStubBuilder( } override fun doCreateCallableStub(parent: StubElement): StubElement { + val name = (protoContainer as ProtoContainer.Class).classId.shortClassName.ref() + // Note that arguments passed to stubs here and elsewhere are based on what stabs would be generated based on decompiled code + // As decompiled code for secondary constructor would be just constructor(args) { /* compiled code */ } every secondary constructor + // delegated call is not to this (as there is no this keyword) and it has body (while primary does not have one) + // This info is anyway irrelevant for the purposes these stubs are used return if (Flags.IS_SECONDARY.get(constructorProto.flags)) - KotlinPlaceHolderStubImpl(parent, KtStubElementTypes.SECONDARY_CONSTRUCTOR) + KotlinConstructorStubImpl(parent, KtStubElementTypes.SECONDARY_CONSTRUCTOR, name, hasBody = true, isDelegatedCallToThis = false) else - KotlinPlaceHolderStubImpl(parent, KtStubElementTypes.PRIMARY_CONSTRUCTOR) + KotlinConstructorStubImpl(parent, KtStubElementTypes.PRIMARY_CONSTRUCTOR, name, hasBody = false, isDelegatedCallToThis = false) } } diff --git a/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/ContextReceiversListStubBuilder.kt b/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/ContextReceiversListStubBuilder.kt index fe05b91492b..4af9e29c775 100644 --- a/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/ContextReceiversListStubBuilder.kt +++ b/analysis/decompiled/decompiler-to-stubs/src/org/jetbrains/kotlin/analysis/decompiler/stub/ContextReceiversListStubBuilder.kt @@ -7,9 +7,9 @@ package org.jetbrains.kotlin.analysis.decompiler.stub import com.intellij.psi.stubs.StubElement import org.jetbrains.kotlin.metadata.ProtoBuf -import org.jetbrains.kotlin.psi.KtContextReceiver import org.jetbrains.kotlin.psi.KtContextReceiverList import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes +import org.jetbrains.kotlin.psi.stubs.impl.KotlinContextReceiverStubImpl import org.jetbrains.kotlin.psi.stubs.impl.KotlinPlaceHolderStubImpl internal class ContextReceiversListStubBuilder(c: ClsStubBuilderContext) { @@ -21,7 +21,7 @@ internal class ContextReceiversListStubBuilder(c: ClsStubBuilderContext) { KotlinPlaceHolderStubImpl(parent, KtStubElementTypes.CONTEXT_RECEIVER_LIST) for (contextReceiverType in contextReceiverTypes) { val contextReceiverStub = - KotlinPlaceHolderStubImpl(contextReceiverListStub, KtStubElementTypes.CONTEXT_RECEIVER) + KotlinContextReceiverStubImpl(contextReceiverListStub, KtStubElementTypes.CONTEXT_RECEIVER, label = null) typeStubBuilder.createTypeReferenceStub(contextReceiverStub, contextReceiverType) } } diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/KtConstructor.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/KtConstructor.kt index fce7cabf53f..38a68a32eaf 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/KtConstructor.kt +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/KtConstructor.kt @@ -22,13 +22,13 @@ import com.intellij.psi.PsiElement import com.intellij.psi.search.SearchScope import com.intellij.util.IncorrectOperationException import org.jetbrains.kotlin.lexer.KtTokens -import org.jetbrains.kotlin.psi.stubs.KotlinPlaceHolderStub -import org.jetbrains.kotlin.psi.stubs.elements.KtPlaceHolderStubElementType +import org.jetbrains.kotlin.psi.stubs.KotlinConstructorStub +import org.jetbrains.kotlin.psi.stubs.elements.KtConstructorElementType import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes -abstract class KtConstructor> : KtDeclarationStub>, KtFunction { +abstract class KtConstructor> : KtDeclarationStub>, KtFunction { protected constructor(node: ASTNode) : super(node) - protected constructor(stub: KotlinPlaceHolderStub, nodeType: KtPlaceHolderStubElementType) : super(stub, nodeType) + protected constructor(stub: KotlinConstructorStub, nodeType: KtConstructorElementType) : super(stub, nodeType) abstract fun getContainingClassOrObject(): KtClassOrObject @@ -53,9 +53,21 @@ abstract class KtConstructor> : KtDeclarationStub false + is KtSecondaryConstructor -> getDelegationCallOrNull()?.isCallToThis() ?: true + else -> throw IllegalStateException("Unknown constructor type: $this") + } + } + + override fun hasBody(): Boolean { + stub?.let { return it.hasBody() } + return bodyExpression != null + } override fun hasDeclaredReturnType() = false @@ -90,8 +102,8 @@ abstract class KtConstructor> : KtDeclarationStub> { +class KtContextReceiver : KtElementImplStub { constructor(node: ASTNode) : super(node) - constructor(stub: KotlinPlaceHolderStub) : super(stub, KtStubElementTypes.CONTEXT_RECEIVER) + constructor(stub: KotlinContextReceiverStub) : super(stub, KtStubElementTypes.CONTEXT_RECEIVER) fun targetLabel(): KtSimpleNameExpression? = findChildByType(KtNodeTypes.LABEL_QUALIFIER) ?.findChildByType(KtNodeTypes.LABEL) - fun labelName(): String? = targetLabel()?.getReferencedName() + fun labelName(): String? { + stub?.let { return it.getLabel() } + return targetLabel()?.getReferencedName() + } + fun labelNameAsName(): Name? = targetLabel()?.getReferencedNameAsName() - fun typeReference(): KtTypeReference? = findChildByType(KtNodeTypes.TYPE_REFERENCE) + fun typeReference(): KtTypeReference? = getStubOrPsiChild(KtStubElementTypes.TYPE_REFERENCE) fun name(): String? = labelName() ?: typeReference()?.nameForReceiverLabel() } \ No newline at end of file diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/KtContextReceiverList.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/KtContextReceiverList.kt index 06b1a708f2b..6b81a664b9f 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/KtContextReceiverList.kt +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/KtContextReceiverList.kt @@ -6,7 +6,6 @@ package org.jetbrains.kotlin.psi import com.intellij.lang.ASTNode -import org.jetbrains.kotlin.KtNodeTypes import org.jetbrains.kotlin.psi.stubs.KotlinPlaceHolderStub import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes @@ -18,7 +17,7 @@ class KtContextReceiverList : KtElementImplStub = findChildrenByType(KtNodeTypes.CONTEXT_RECEIVER) + fun contextReceivers(): List = getStubOrPsiChildrenAsList(KtStubElementTypes.CONTEXT_RECEIVER) fun typeReferences(): List = contextReceivers().mapNotNull { it.typeReference() } diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/KtNamedFunction.java b/compiler/psi/src/org/jetbrains/kotlin/psi/KtNamedFunction.java index 4a8ae943861..815868604e4 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/KtNamedFunction.java +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/KtNamedFunction.java @@ -259,7 +259,7 @@ public class KtNamedFunction extends KtTypeParameterListOwnerStub { constructor(node: ASTNode) : super(node) - constructor(stub: KotlinPlaceHolderStub) : super(stub, KtStubElementTypes.PRIMARY_CONSTRUCTOR) + constructor(stub: KotlinConstructorStub) : super(stub, KtStubElementTypes.PRIMARY_CONSTRUCTOR) override fun accept(visitor: KtVisitor, data: D) = visitor.visitPrimaryConstructor(this, data) diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/KtPropertyAccessor.java b/compiler/psi/src/org/jetbrains/kotlin/psi/KtPropertyAccessor.java index 44b96660010..4787b4f7964 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/KtPropertyAccessor.java +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/KtPropertyAccessor.java @@ -140,7 +140,7 @@ public class KtPropertyAccessor extends KtDeclarationStub { constructor(node: ASTNode) : super(node) - constructor(stub: KotlinPlaceHolderStub) : super(stub, KtStubElementTypes.SECONDARY_CONSTRUCTOR) + constructor(stub: KotlinConstructorStub) : super(stub, KtStubElementTypes.SECONDARY_CONSTRUCTOR) override fun accept(visitor: KtVisitor, data: D) = visitor.visitSecondaryConstructor(this, data) override fun getContainingClassOrObject() = parent.parent as KtClassOrObject - override fun getBodyExpression() = findChildByClass(KtBlockExpression::class.java) + override fun getBodyExpression(): KtBlockExpression? { + if (stub?.hasBody() == false) { + return null + } + return findChildByClass(KtBlockExpression::class.java) + } override fun getConstructorKeyword() = notNullChild(super.getConstructorKeyword()) diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/KtSuperTypeCallEntry.java b/compiler/psi/src/org/jetbrains/kotlin/psi/KtSuperTypeCallEntry.java index 8b5398bda8e..41cf7b240d7 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/KtSuperTypeCallEntry.java +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/KtSuperTypeCallEntry.java @@ -85,5 +85,4 @@ public class KtSuperTypeCallEntry extends KtSuperTypeListEntry implements KtCall KtUserType userType = getTypeAsUserType(); return userType != null ? userType.getTypeArgumentList() : null; } - } diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/KotlinStubVersions.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/KotlinStubVersions.kt index c38b0008c78..2ed683ac757 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/KotlinStubVersions.kt +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/KotlinStubVersions.kt @@ -23,12 +23,12 @@ object KotlinStubVersions { // Though only kotlin declarations (no code in the bodies) are stubbed, please do increase this version // if you are not 100% sure it can be avoided. // Increasing this version will lead to reindexing of all kotlin source files on the first IDE startup with the new version. - const val SOURCE_STUB_VERSION = 144 + const val SOURCE_STUB_VERSION = 145 // Binary stub version should be increased if stub format (org.jetbrains.kotlin.psi.stubs.impl) is changed // or changes are made to the core stub building code (org.jetbrains.kotlin.idea.decompiler.stubBuilder). // Increasing this version will lead to reindexing of all binary files that are potentially kotlin binaries (including all class files). - private const val BINARY_STUB_VERSION = 81 + private const val BINARY_STUB_VERSION = 82 // Classfile stub version should be increased if changes are made to classfile stub building subsystem (org.jetbrains.kotlin.idea.decompiler.classFile) // Increasing this version will lead to reindexing of all classfiles. diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/StubInterfaces.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/StubInterfaces.kt index f9dfe7d7681..8f286e03832 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/StubInterfaces.kt +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/StubInterfaces.kt @@ -87,6 +87,12 @@ interface KotlinFunctionStub : KotlinCallableStubBase { fun mayHaveContract(): Boolean } +interface KotlinConstructorStub> : + KotlinCallableStubBase { + fun hasBody(): Boolean + fun isDelegatedCallToThis(): Boolean +} + interface KotlinImportAliasStub : StubElement { fun getName(): String? } @@ -163,3 +169,7 @@ interface KotlinUserTypeStub : StubElement interface KotlinScriptStub : KotlinStubWithFqName { override fun getFqName(): FqName } + +interface KotlinContextReceiverStub : StubElement { + fun getLabel(): String? +} diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtConstructorElementType.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtConstructorElementType.kt new file mode 100644 index 00000000000..24bda209fa0 --- /dev/null +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtConstructorElementType.kt @@ -0,0 +1,55 @@ +/* + * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ +package org.jetbrains.kotlin.psi.stubs.elements + +import com.intellij.psi.stubs.IndexSink +import com.intellij.psi.stubs.StubElement +import com.intellij.psi.stubs.StubInputStream +import com.intellij.psi.stubs.StubOutputStream +import com.intellij.util.io.StringRef +import org.jetbrains.annotations.NonNls +import org.jetbrains.kotlin.psi.KtConstructor +import org.jetbrains.kotlin.psi.stubs.KotlinConstructorStub +import org.jetbrains.kotlin.psi.stubs.elements.StubIndexService.Companion.getInstance +import java.io.IOException + +abstract class KtConstructorElementType>( + @NonNls debugName: String, + tClass: Class, + stubClass: Class> +) : KtStubElementType, T>(debugName, tClass, stubClass) { + protected abstract fun newStub( + parentStub: StubElement<*>, + nameRef: StringRef?, + hasBody: Boolean, + isDelegatedCallToThis: Boolean, + ): KotlinConstructorStub + + protected abstract fun isDelegatedCallToThis(constructor: T): Boolean + + override fun createStub(psi: T, parentStub: StubElement<*>): KotlinConstructorStub { + val hasBody = psi.hasBody() + val isDelegatedCallToThis = isDelegatedCallToThis(psi) + return newStub(parentStub, StringRef.fromString(psi.name), hasBody, isDelegatedCallToThis) + } + + @Throws(IOException::class) + override fun serialize(stub: KotlinConstructorStub, dataStream: StubOutputStream) { + dataStream.writeName(stub.name) + dataStream.writeBoolean(stub.hasBody()) + dataStream.writeBoolean(stub.isDelegatedCallToThis()) + } + + @Throws(IOException::class) + override fun deserialize(dataStream: StubInputStream, parentStub: StubElement<*>): KotlinConstructorStub { + val name = dataStream.readName() + val hasBody = dataStream.readBoolean() + val isDelegatedCallToThis = dataStream.readBoolean() + return newStub(parentStub, name, hasBody, isDelegatedCallToThis) + } + + override fun indexStub(stub: KotlinConstructorStub, sink: IndexSink) { + } +} \ No newline at end of file diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtContextReceiverElementType.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtContextReceiverElementType.kt new file mode 100644 index 00000000000..9735d7c3af0 --- /dev/null +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtContextReceiverElementType.kt @@ -0,0 +1,30 @@ +/* + * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.psi.stubs.elements + +import com.intellij.psi.stubs.StubElement +import com.intellij.psi.stubs.StubInputStream +import com.intellij.psi.stubs.StubOutputStream +import org.jetbrains.kotlin.psi.KtContextReceiver +import org.jetbrains.kotlin.psi.stubs.KotlinContextReceiverStub +import org.jetbrains.kotlin.psi.stubs.impl.KotlinContextReceiverStubImpl + +class KtContextReceiverElementType(debugName: String) : KtStubElementType( + debugName, + KtContextReceiver::class.java, + KotlinContextReceiverStub::class.java +) { + override fun createStub( + element: KtContextReceiver, + parentStub: StubElement<*>? + ): KotlinContextReceiverStub = KotlinContextReceiverStubImpl(parentStub, this, element.labelName()) + + override fun serialize(stub: KotlinContextReceiverStub, dataStream: StubOutputStream) = + dataStream.writeName(stub.getLabel()) + + override fun deserialize(dataStream: StubInputStream, parentStub: StubElement<*>?) = + KotlinContextReceiverStubImpl(parentStub, this, dataStream.readNameString()) +} diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtPrimaryConstructorElementType.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtPrimaryConstructorElementType.kt new file mode 100644 index 00000000000..cf73b369236 --- /dev/null +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtPrimaryConstructorElementType.kt @@ -0,0 +1,27 @@ +/* + * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ +package org.jetbrains.kotlin.psi.stubs.elements + +import com.intellij.psi.stubs.StubElement +import com.intellij.util.io.StringRef +import org.jetbrains.kotlin.psi.KtPrimaryConstructor +import org.jetbrains.kotlin.psi.stubs.KotlinConstructorStub +import org.jetbrains.kotlin.psi.stubs.impl.KotlinConstructorStubImpl + +class KtPrimaryConstructorElementType(debugName: String) : + KtConstructorElementType(debugName, KtPrimaryConstructor::class.java, KotlinConstructorStub::class.java) { + override fun newStub( + parentStub: StubElement<*>, + nameRef: StringRef?, + hasBody: Boolean, + isDelegatedCallToThis: Boolean, + ): KotlinConstructorStub { + return KotlinConstructorStubImpl( + parentStub, KtStubElementTypes.PRIMARY_CONSTRUCTOR, nameRef, hasBody, isDelegatedCallToThis + ) + } + + override fun isDelegatedCallToThis(constructor: KtPrimaryConstructor) = false +} \ No newline at end of file diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtSecondaryConstructorElementType.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtSecondaryConstructorElementType.kt new file mode 100644 index 00000000000..0ab1eb18a5e --- /dev/null +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtSecondaryConstructorElementType.kt @@ -0,0 +1,27 @@ +/* + * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ +package org.jetbrains.kotlin.psi.stubs.elements + +import com.intellij.psi.stubs.StubElement +import com.intellij.util.io.StringRef +import org.jetbrains.kotlin.psi.KtSecondaryConstructor +import org.jetbrains.kotlin.psi.stubs.KotlinConstructorStub +import org.jetbrains.kotlin.psi.stubs.impl.KotlinConstructorStubImpl + +class KtSecondaryConstructorElementType(debugName: String) : + KtConstructorElementType(debugName, KtSecondaryConstructor::class.java, KotlinConstructorStub::class.java) { + override fun newStub( + parentStub: StubElement<*>, + nameRef: StringRef?, + hasBody: Boolean, + isDelegatedCallToThis: Boolean, + ): KotlinConstructorStub { + return KotlinConstructorStubImpl( + parentStub, KtStubElementTypes.SECONDARY_CONSTRUCTOR, nameRef, hasBody, isDelegatedCallToThis + ) + } + + override fun isDelegatedCallToThis(constructor: KtSecondaryConstructor) = constructor.getDelegationCallOrNull()?.isCallToThis ?: true +} \ No newline at end of file diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtStubElementTypes.java b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtStubElementTypes.java index 5fdad3e9636..0f5cea254c6 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtStubElementTypes.java +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/KtStubElementTypes.java @@ -37,10 +37,10 @@ public interface KtStubElementTypes { KtObjectElementType OBJECT_DECLARATION = new KtObjectElementType("OBJECT_DECLARATION"); KtPlaceHolderStubElementType CLASS_INITIALIZER = new KtPlaceHolderStubElementType<>("CLASS_INITIALIZER", KtClassInitializer.class); - KtPlaceHolderStubElementType SECONDARY_CONSTRUCTOR = - new KtPlaceHolderStubElementType<>("SECONDARY_CONSTRUCTOR", KtSecondaryConstructor.class); - KtPlaceHolderStubElementType PRIMARY_CONSTRUCTOR = - new KtPlaceHolderStubElementType<>("PRIMARY_CONSTRUCTOR", KtPrimaryConstructor.class); + KtSecondaryConstructorElementType SECONDARY_CONSTRUCTOR = + new KtSecondaryConstructorElementType("SECONDARY_CONSTRUCTOR"); + KtPrimaryConstructorElementType PRIMARY_CONSTRUCTOR = + new KtPrimaryConstructorElementType("PRIMARY_CONSTRUCTOR"); KtParameterElementType VALUE_PARAMETER = new KtParameterElementType("VALUE_PARAMETER"); KtPlaceHolderStubElementType VALUE_PARAMETER_LIST = @@ -109,7 +109,8 @@ public interface KtStubElementTypes { KtNameReferenceExpressionElementType REFERENCE_EXPRESSION = new KtNameReferenceExpressionElementType("REFERENCE_EXPRESSION"); KtDotQualifiedExpressionElementType DOT_QUALIFIED_EXPRESSION = new KtDotQualifiedExpressionElementType("DOT_QUALIFIED_EXPRESSION"); KtEnumEntrySuperClassReferenceExpressionElementType - ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION = new KtEnumEntrySuperClassReferenceExpressionElementType("ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION"); + ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION = + new KtEnumEntrySuperClassReferenceExpressionElementType("ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION"); KtPlaceHolderStubElementType TYPE_ARGUMENT_LIST = new KtPlaceHolderStubElementType<>("TYPE_ARGUMENT_LIST", KtTypeArgumentList.class); @@ -147,8 +148,7 @@ public interface KtStubElementTypes { KtPlaceHolderStubElementType CONSTRUCTOR_CALLEE = new KtPlaceHolderStubElementType<>("CONSTRUCTOR_CALLEE", KtConstructorCalleeExpression.class); - KtPlaceHolderStubElementType CONTEXT_RECEIVER = - new KtPlaceHolderStubElementType<>("CONTEXT_RECEIVER", KtContextReceiver.class); + KtContextReceiverElementType CONTEXT_RECEIVER = new KtContextReceiverElementType("CONTEXT_RECEIVER"); KtPlaceHolderStubElementType CONTEXT_RECEIVER_LIST = new KtPlaceHolderStubElementType<>("CONTEXT_RECEIVER_LIST", KtContextReceiverList.class); @@ -174,5 +174,4 @@ public interface KtStubElementTypes { new KtPlaceHolderWithTextStubElementType<>("ESCAPE_STRING_TEMPLATE_ENTRY", KtEscapeStringTemplateEntry.class); KtScriptElementType SCRIPT = new KtScriptElementType("SCRIPT"); - } diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/StubIndexService.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/StubIndexService.kt index 76420e5f1c5..030d818c4bd 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/StubIndexService.kt +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/elements/StubIndexService.kt @@ -20,6 +20,7 @@ import com.intellij.openapi.components.ServiceManager import com.intellij.psi.stubs.IndexSink import com.intellij.psi.stubs.StubInputStream import com.intellij.psi.stubs.StubOutputStream +import org.jetbrains.kotlin.psi.KtConstructor import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.stubs.* import org.jetbrains.kotlin.psi.stubs.impl.KotlinFileStubImpl diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/impl/KotlinConstructorStubImpl.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/impl/KotlinConstructorStubImpl.kt new file mode 100644 index 00000000000..e02f380f3a3 --- /dev/null +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/impl/KotlinConstructorStubImpl.kt @@ -0,0 +1,28 @@ +/* + * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.psi.stubs.impl + +import com.intellij.psi.stubs.StubElement +import com.intellij.util.io.StringRef +import com.intellij.psi.PsiElement +import org.jetbrains.kotlin.psi.KtConstructor +import org.jetbrains.kotlin.psi.stubs.KotlinConstructorStub +import org.jetbrains.kotlin.psi.stubs.elements.KtConstructorElementType + +class KotlinConstructorStubImpl>( + parent: StubElement?, + elementType: KtConstructorElementType, + private val containingClassName: StringRef?, + private val hasBody: Boolean, + private val isDelegatedCallToThis: Boolean, +) : KotlinStubBaseImpl(parent, elementType), KotlinConstructorStub { + override fun getFqName() = null + override fun getName() = StringRef.toString(containingClassName) + override fun isTopLevel() = false + override fun isExtension() = false + override fun hasBody() = hasBody + override fun isDelegatedCallToThis() = isDelegatedCallToThis +} diff --git a/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/impl/KotlinContextReceiverStubImpl.kt b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/impl/KotlinContextReceiverStubImpl.kt new file mode 100644 index 00000000000..e7a2e67e32b --- /dev/null +++ b/compiler/psi/src/org/jetbrains/kotlin/psi/stubs/impl/KotlinContextReceiverStubImpl.kt @@ -0,0 +1,20 @@ +/* + * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.psi.stubs.impl + +import com.intellij.psi.stubs.StubElement +import com.intellij.psi.PsiElement +import org.jetbrains.kotlin.psi.KtContextReceiver +import org.jetbrains.kotlin.psi.stubs.KotlinContextReceiverStub +import org.jetbrains.kotlin.psi.stubs.elements.KtContextReceiverElementType + +class KotlinContextReceiverStubImpl( + parent: StubElement?, + elementType: KtContextReceiverElementType, + private val label: String?, +) : KotlinStubBaseImpl(parent, elementType), KotlinContextReceiverStub { + override fun getLabel() = label +}