[SLC] implement infrastructure for light class hierarchy tests

This commit is contained in:
Dmitrii Gridin
2022-12-07 15:18:01 +01:00
committed by Space Team
parent feff03894f
commit b2c0a37050
38 changed files with 2233 additions and 13 deletions
@@ -0,0 +1,5 @@
one.MyAnnotationClass|java.lang.annotation.Annotation|false| -> true
one.MyAnnotationClass|java.lang.annotation.Annotation|true| -> true
one.MyAnnotationClass|java.lang.Object|false| -> true
one.MyAnnotationClass|java.lang.Object|true| -> true
one.MyAnnotationClass|java.util.Collection|true| -> false
@@ -0,0 +1,3 @@
package one
annotation class MyAnnotationClass
@@ -0,0 +1,19 @@
KtClass:
line: 6
name: MyAnnotationClass
qualifier: one.MyAnnotationClass
light: KtLightClassForDecompiledDeclaration
name: MyAnnotationClass
qualifier: one.MyAnnotationClass
superTypes: [
PsiType:Annotation
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
ClsClassImpl: Annotation (java.lang.annotation.Annotation)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
ClsClassImpl: Annotation (java.lang.annotation.Annotation)
]
@@ -0,0 +1,19 @@
KtClass:
line: 3
name: MyAnnotationClass
qualifier: one.MyAnnotationClass
light: SymbolLightClassForAnnotationClass
name: MyAnnotationClass
qualifier: one.MyAnnotationClass
superTypes: [
PsiType:Annotation
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
ClsClassImpl: Annotation (java.lang.annotation.Annotation)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
ClsClassImpl: Annotation (java.lang.annotation.Annotation)
]
@@ -0,0 +1,12 @@
cba.ChildOfOpen|cba.OpenClassFromAbstractClass|false| -> true
cba.ChildOfOpen|cba.OpenClassFromAbstractClass|true| -> true
cba.ChildOfOpen|java.lang.Object|false| -> false
cba.ChildOfOpen|java.lang.Object|true| -> true
cba.ChildOfOpen|cba.AbstractClass|false| -> false
cba.ChildOfOpen|cba.AbstractClass|true| -> true
cba.OpenClassFromAbstractClass|cba.AbstractClass|false| -> true
cba.OpenClassFromAbstractClass|cba.AbstractClass|true| -> true
cba.OpenClassFromAbstractClass|cba.OpenClassFromAbstractClass|false| -> false
cba.OpenClassFromAbstractClass|cba.OpenClassFromAbstractClass|true| -> false
cba.OpenClassFromAbstractClass|cba.FinalClass|false| -> false
cba.OpenClassFromAbstractClass|cba.FinalClass|true| -> false
@@ -0,0 +1,9 @@
package cba
class FinalClass
abstract class AbstractClass
open class OpenClassFromAbstractClass : AbstractClass()
class ChildOfOpen : OpenClassFromAbstractClass()
@@ -0,0 +1,68 @@
FinalClass.class:
KtClass:
line: 6
name: FinalClass
qualifier: cba.FinalClass
light: KtLightClassForDecompiledDeclaration
name: FinalClass
qualifier: cba.FinalClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
AbstractClass.class:
KtClass:
line: 6
name: AbstractClass
qualifier: cba.AbstractClass
light: KtLightClassForDecompiledDeclaration
name: AbstractClass
qualifier: cba.AbstractClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
ChildOfOpen.class:
KtClass:
line: 6
name: ChildOfOpen
qualifier: cba.ChildOfOpen
light: KtLightClassForDecompiledDeclaration
name: ChildOfOpen
qualifier: cba.ChildOfOpen
superTypes: [
PsiType:OpenClassFromAbstractClass
]
superClass: KtLightClassForDecompiledDeclaration: OpenClassFromAbstractClass (cba.OpenClassFromAbstractClass)
interfaces: []
supers: [
KtLightClassForDecompiledDeclaration: OpenClassFromAbstractClass (cba.OpenClassFromAbstractClass)
]
OpenClassFromAbstractClass.class:
KtClass:
line: 6
name: OpenClassFromAbstractClass
qualifier: cba.OpenClassFromAbstractClass
light: KtLightClassForDecompiledDeclaration
name: OpenClassFromAbstractClass
qualifier: cba.OpenClassFromAbstractClass
superTypes: [
PsiType:AbstractClass
]
superClass: KtLightClassForDecompiledDeclaration: AbstractClass (cba.AbstractClass)
interfaces: []
supers: [
KtLightClassForDecompiledDeclaration: AbstractClass (cba.AbstractClass)
]
@@ -0,0 +1,64 @@
KtClass:
line: 3
name: FinalClass
qualifier: cba.FinalClass
light: SymbolLightClassForClassOrObject
name: FinalClass
qualifier: cba.FinalClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 5
name: AbstractClass
qualifier: cba.AbstractClass
light: SymbolLightClassForClassOrObject
name: AbstractClass
qualifier: cba.AbstractClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 7
name: OpenClassFromAbstractClass
qualifier: cba.OpenClassFromAbstractClass
light: SymbolLightClassForClassOrObject
name: OpenClassFromAbstractClass
qualifier: cba.OpenClassFromAbstractClass
superTypes: [
PsiType:AbstractClass
]
superClass: SymbolLightClassForClassOrObject: AbstractClass (cba.AbstractClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: AbstractClass (cba.AbstractClass)
]
KtClass:
line: 9
name: ChildOfOpen
qualifier: cba.ChildOfOpen
light: SymbolLightClassForClassOrObject
name: ChildOfOpen
qualifier: cba.ChildOfOpen
superTypes: [
PsiType:OpenClassFromAbstractClass
]
superClass: SymbolLightClassForClassOrObject: OpenClassFromAbstractClass (cba.OpenClassFromAbstractClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: OpenClassFromAbstractClass (cba.OpenClassFromAbstractClass)
]
@@ -0,0 +1,14 @@
one.two.EnumEntries|java.lang.Object|false| -> false
one.two.EnumEntries|java.lang.Object|true| -> true
one.two.EnumEntries|java.lang.Enum|false| -> true
one.two.EnumEntries|java.lang.Enum|true| -> true
one.two.EnumEntries.SecondEntryWithBody|java.lang.Enum|false| -> false
one.two.EnumEntries.SecondEntryWithBody|java.lang.Enum|true| -> true
one.two.EnumEntries.SecondEntryWithBody|one.two.EnumEntries|false| -> true
one.two.EnumEntries.SecondEntryWithBody|one.two.EnumEntries|true| -> true
one.two.EnumEntries.SecondEntryWithBody|java.lang.Object|false| -> false
one.two.EnumEntries.SecondEntryWithBody|java.lang.Object|true| -> true
one.two.EnumEntries.SecondEntryWithBody|one.two.BaseInterface|false| -> false
one.two.EnumEntries.SecondEntryWithBody|one.two.BaseInterface|true| -> false
one.two.EnumClassWithInterface.NewSecondEntryWithBody|one.two.BaseInterface|false| -> false
one.two.EnumClassWithInterface.NewSecondEntryWithBody|one.two.BaseInterface|true| -> true
@@ -0,0 +1,21 @@
package one.two
interface BaseInterface
enum class EnumEntries {
FirstEntry,
SecondEntryWithBody {
fun foo() {
}
}
}
enum class EnumClassWithInterface : BaseInterface {
NewFirstEntry,
NewSecondEntryWithBody {
fun foo() {
}
}
}
@@ -0,0 +1,79 @@
BaseInterface.class:
KtClass:
line: 6
name: BaseInterface
qualifier: one.two.BaseInterface
light: KtLightClassForDecompiledDeclaration
name: BaseInterface
qualifier: one.two.BaseInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
EnumClassWithInterface.class:
KtEnumEntry:
line: 7
name: NewFirstEntry
qualifier: one.two.EnumClassWithInterface.NewFirstEntry
light: null
KtEnumEntry:
line: 9
name: NewSecondEntryWithBody
qualifier: one.two.EnumClassWithInterface.NewSecondEntryWithBody
light: null
KtClass:
line: 6
name: EnumClassWithInterface
qualifier: one.two.EnumClassWithInterface
light: KtLightClassForDecompiledDeclaration
name: EnumClassWithInterface
qualifier: one.two.EnumClassWithInterface
superTypes: [
PsiType:Enum<EnumClassWithInterface>
PsiType:BaseInterface
]
superClass: ClsClassImpl: Enum (java.lang.Enum)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface (one.two.BaseInterface)
]
supers: [
ClsClassImpl: Enum (java.lang.Enum)
KtLightClassForDecompiledDeclaration: BaseInterface (one.two.BaseInterface)
]
EnumEntries.class:
KtEnumEntry:
line: 7
name: FirstEntry
qualifier: one.two.EnumEntries.FirstEntry
light: null
KtEnumEntry:
line: 9
name: SecondEntryWithBody
qualifier: one.two.EnumEntries.SecondEntryWithBody
light: null
KtClass:
line: 6
name: EnumEntries
qualifier: one.two.EnumEntries
light: KtLightClassForDecompiledDeclaration
name: EnumEntries
qualifier: one.two.EnumEntries
superTypes: [
PsiType:Enum<EnumEntries>
]
superClass: ClsClassImpl: Enum (java.lang.Enum)
interfaces: []
supers: [
ClsClassImpl: Enum (java.lang.Enum)
]
@@ -0,0 +1,96 @@
KtClass:
line: 3
name: BaseInterface
qualifier: one.two.BaseInterface
light: SymbolLightClassForInterface
name: BaseInterface
qualifier: one.two.BaseInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtEnumEntry:
line: 6
name: FirstEntry
qualifier: one.two.EnumEntries.FirstEntry
light: null
KtEnumEntry:
line: 7
name: SecondEntryWithBody
qualifier: one.two.EnumEntries.SecondEntryWithBody
light: SymbolLightClassForEnumEntry
name: SecondEntryWithBody
qualifier: one.two.EnumEntries.SecondEntryWithBody
superTypes: [
PsiType:EnumEntries
]
superClass: SymbolLightClassForClassOrObject: EnumEntries (one.two.EnumEntries)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: EnumEntries (one.two.EnumEntries)
]
KtClass:
line: 5
name: EnumEntries
qualifier: one.two.EnumEntries
light: SymbolLightClassForClassOrObject
name: EnumEntries
qualifier: one.two.EnumEntries
superTypes: [
PsiType:Enum<EnumEntries>
]
superClass: ClsClassImpl: Enum (java.lang.Enum)
interfaces: []
supers: [
ClsClassImpl: Enum (java.lang.Enum)
]
KtEnumEntry:
line: 15
name: NewFirstEntry
qualifier: one.two.EnumClassWithInterface.NewFirstEntry
light: null
KtEnumEntry:
line: 16
name: NewSecondEntryWithBody
qualifier: one.two.EnumClassWithInterface.NewSecondEntryWithBody
light: SymbolLightClassForEnumEntry
name: NewSecondEntryWithBody
qualifier: one.two.EnumClassWithInterface.NewSecondEntryWithBody
superTypes: [
PsiType:EnumClassWithInterface
]
superClass: SymbolLightClassForClassOrObject: EnumClassWithInterface (one.two.EnumClassWithInterface)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: EnumClassWithInterface (one.two.EnumClassWithInterface)
]
KtClass:
line: 14
name: EnumClassWithInterface
qualifier: one.two.EnumClassWithInterface
light: SymbolLightClassForClassOrObject
name: EnumClassWithInterface
qualifier: one.two.EnumClassWithInterface
superTypes: [
PsiType:Enum<EnumClassWithInterface>
PsiType:BaseInterface
]
superClass: ClsClassImpl: Enum (java.lang.Enum)
interfaces: [
SymbolLightClassForInterface: BaseInterface (one.two.BaseInterface)
]
supers: [
ClsClassImpl: Enum (java.lang.Enum)
SymbolLightClassForInterface: BaseInterface (one.two.BaseInterface)
]
@@ -0,0 +1,27 @@
package my
interface BaseInterface1
interface BaseInterface2
interface ComplexInterface : BaseInterface1, BaseInterface2
open class OpenBaseClass
class FinalClassWithBaseInterface : BaseInterface1
class FinalClassWithSeveralBaseInterfaces : BaseInterface1, BaseInterface2
class FinalClassWithComplexInterface : ComplexInterface
class FinalClassWithComplexInterfaceAndBaseInterface : ComplexInterface, BaseInterface1
abstract class AbstractClassWithBaseInterface : BaseInterface2
abstract class AbstractClassWithComplexInterface : ComplexInterface
abstract class AbstractClassTransitiveBaseInterface : AbstractClassWithBaseInterface(), BaseInterface1
open class OpenComplexClass : ComplexInterface, AbstractClassTransitiveBaseInterface()
class OnlyTransitiveInterface : OpenComplexClass()
@@ -0,0 +1,265 @@
OpenBaseClass.class:
KtClass:
line: 6
name: OpenBaseClass
qualifier: my.OpenBaseClass
light: KtLightClassForDecompiledDeclaration
name: OpenBaseClass
qualifier: my.OpenBaseClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
FinalClassWithBaseInterface.class:
KtClass:
line: 6
name: FinalClassWithBaseInterface
qualifier: my.FinalClassWithBaseInterface
light: KtLightClassForDecompiledDeclaration
name: FinalClassWithBaseInterface
qualifier: my.FinalClassWithBaseInterface
superTypes: [
PsiType:Object
PsiType:BaseInterface1
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
]
AbstractClassWithBaseInterface.class:
KtClass:
line: 6
name: AbstractClassWithBaseInterface
qualifier: my.AbstractClassWithBaseInterface
light: KtLightClassForDecompiledDeclaration
name: AbstractClassWithBaseInterface
qualifier: my.AbstractClassWithBaseInterface
superTypes: [
PsiType:Object
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface2 (my.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: BaseInterface2 (my.BaseInterface2)
]
BaseInterface1.class:
KtClass:
line: 6
name: BaseInterface1
qualifier: my.BaseInterface1
light: KtLightClassForDecompiledDeclaration
name: BaseInterface1
qualifier: my.BaseInterface1
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
BaseInterface2.class:
KtClass:
line: 6
name: BaseInterface2
qualifier: my.BaseInterface2
light: KtLightClassForDecompiledDeclaration
name: BaseInterface2
qualifier: my.BaseInterface2
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
FinalClassWithSeveralBaseInterfaces.class:
KtClass:
line: 6
name: FinalClassWithSeveralBaseInterfaces
qualifier: my.FinalClassWithSeveralBaseInterfaces
light: KtLightClassForDecompiledDeclaration
name: FinalClassWithSeveralBaseInterfaces
qualifier: my.FinalClassWithSeveralBaseInterfaces
superTypes: [
PsiType:Object
PsiType:BaseInterface1
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
KtLightClassForDecompiledDeclaration: BaseInterface2 (my.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
KtLightClassForDecompiledDeclaration: BaseInterface2 (my.BaseInterface2)
]
OnlyTransitiveInterface.class:
KtClass:
line: 6
name: OnlyTransitiveInterface
qualifier: my.OnlyTransitiveInterface
light: KtLightClassForDecompiledDeclaration
name: OnlyTransitiveInterface
qualifier: my.OnlyTransitiveInterface
superTypes: [
PsiType:OpenComplexClass
]
superClass: KtLightClassForDecompiledDeclaration: OpenComplexClass (my.OpenComplexClass)
interfaces: []
supers: [
KtLightClassForDecompiledDeclaration: OpenComplexClass (my.OpenComplexClass)
]
AbstractClassWithComplexInterface.class:
KtClass:
line: 6
name: AbstractClassWithComplexInterface
qualifier: my.AbstractClassWithComplexInterface
light: KtLightClassForDecompiledDeclaration
name: AbstractClassWithComplexInterface
qualifier: my.AbstractClassWithComplexInterface
superTypes: [
PsiType:Object
PsiType:ComplexInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
]
FinalClassWithComplexInterfaceAndBaseInterface.class:
KtClass:
line: 6
name: FinalClassWithComplexInterfaceAndBaseInterface
qualifier: my.FinalClassWithComplexInterfaceAndBaseInterface
light: KtLightClassForDecompiledDeclaration
name: FinalClassWithComplexInterfaceAndBaseInterface
qualifier: my.FinalClassWithComplexInterfaceAndBaseInterface
superTypes: [
PsiType:Object
PsiType:ComplexInterface
PsiType:BaseInterface1
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
]
FinalClassWithComplexInterface.class:
KtClass:
line: 6
name: FinalClassWithComplexInterface
qualifier: my.FinalClassWithComplexInterface
light: KtLightClassForDecompiledDeclaration
name: FinalClassWithComplexInterface
qualifier: my.FinalClassWithComplexInterface
superTypes: [
PsiType:Object
PsiType:ComplexInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
]
AbstractClassTransitiveBaseInterface.class:
KtClass:
line: 6
name: AbstractClassTransitiveBaseInterface
qualifier: my.AbstractClassTransitiveBaseInterface
light: KtLightClassForDecompiledDeclaration
name: AbstractClassTransitiveBaseInterface
qualifier: my.AbstractClassTransitiveBaseInterface
superTypes: [
PsiType:AbstractClassWithBaseInterface
PsiType:BaseInterface1
]
superClass: KtLightClassForDecompiledDeclaration: AbstractClassWithBaseInterface (my.AbstractClassWithBaseInterface)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
]
supers: [
KtLightClassForDecompiledDeclaration: AbstractClassWithBaseInterface (my.AbstractClassWithBaseInterface)
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
]
ComplexInterface.class:
KtClass:
line: 6
name: ComplexInterface
qualifier: my.ComplexInterface
light: KtLightClassForDecompiledDeclaration
name: ComplexInterface
qualifier: my.ComplexInterface
superTypes: [
PsiType:BaseInterface1
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
KtLightClassForDecompiledDeclaration: BaseInterface2 (my.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: BaseInterface1 (my.BaseInterface1)
KtLightClassForDecompiledDeclaration: BaseInterface2 (my.BaseInterface2)
]
OpenComplexClass.class:
KtClass:
line: 6
name: OpenComplexClass
qualifier: my.OpenComplexClass
light: KtLightClassForDecompiledDeclaration
name: OpenComplexClass
qualifier: my.OpenComplexClass
superTypes: [
PsiType:AbstractClassTransitiveBaseInterface
PsiType:ComplexInterface
]
superClass: KtLightClassForDecompiledDeclaration: AbstractClassTransitiveBaseInterface (my.AbstractClassTransitiveBaseInterface)
interfaces: [
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
]
supers: [
KtLightClassForDecompiledDeclaration: AbstractClassTransitiveBaseInterface (my.AbstractClassTransitiveBaseInterface)
KtLightClassForDecompiledDeclaration: ComplexInterface (my.ComplexInterface)
]
@@ -0,0 +1,252 @@
KtClass:
line: 3
name: BaseInterface1
qualifier: my.BaseInterface1
light: SymbolLightClassForInterface
name: BaseInterface1
qualifier: my.BaseInterface1
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 5
name: BaseInterface2
qualifier: my.BaseInterface2
light: SymbolLightClassForInterface
name: BaseInterface2
qualifier: my.BaseInterface2
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 7
name: ComplexInterface
qualifier: my.ComplexInterface
light: SymbolLightClassForInterface
name: ComplexInterface
qualifier: my.ComplexInterface
superTypes: [
PsiType:BaseInterface1
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
SymbolLightClassForInterface: BaseInterface2 (my.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
SymbolLightClassForInterface: BaseInterface2 (my.BaseInterface2)
]
KtClass:
line: 9
name: OpenBaseClass
qualifier: my.OpenBaseClass
light: SymbolLightClassForClassOrObject
name: OpenBaseClass
qualifier: my.OpenBaseClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 11
name: FinalClassWithBaseInterface
qualifier: my.FinalClassWithBaseInterface
light: SymbolLightClassForClassOrObject
name: FinalClassWithBaseInterface
qualifier: my.FinalClassWithBaseInterface
superTypes: [
PsiType:Object
PsiType:BaseInterface1
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
]
KtClass:
line: 13
name: FinalClassWithSeveralBaseInterfaces
qualifier: my.FinalClassWithSeveralBaseInterfaces
light: SymbolLightClassForClassOrObject
name: FinalClassWithSeveralBaseInterfaces
qualifier: my.FinalClassWithSeveralBaseInterfaces
superTypes: [
PsiType:Object
PsiType:BaseInterface1
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
SymbolLightClassForInterface: BaseInterface2 (my.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
SymbolLightClassForInterface: BaseInterface2 (my.BaseInterface2)
]
KtClass:
line: 15
name: FinalClassWithComplexInterface
qualifier: my.FinalClassWithComplexInterface
light: SymbolLightClassForClassOrObject
name: FinalClassWithComplexInterface
qualifier: my.FinalClassWithComplexInterface
superTypes: [
PsiType:Object
PsiType:ComplexInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
]
KtClass:
line: 17
name: FinalClassWithComplexInterfaceAndBaseInterface
qualifier: my.FinalClassWithComplexInterfaceAndBaseInterface
light: SymbolLightClassForClassOrObject
name: FinalClassWithComplexInterfaceAndBaseInterface
qualifier: my.FinalClassWithComplexInterfaceAndBaseInterface
superTypes: [
PsiType:Object
PsiType:ComplexInterface
PsiType:BaseInterface1
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
]
KtClass:
line: 19
name: AbstractClassWithBaseInterface
qualifier: my.AbstractClassWithBaseInterface
light: SymbolLightClassForClassOrObject
name: AbstractClassWithBaseInterface
qualifier: my.AbstractClassWithBaseInterface
superTypes: [
PsiType:Object
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface2 (my.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface2 (my.BaseInterface2)
]
KtClass:
line: 21
name: AbstractClassWithComplexInterface
qualifier: my.AbstractClassWithComplexInterface
light: SymbolLightClassForClassOrObject
name: AbstractClassWithComplexInterface
qualifier: my.AbstractClassWithComplexInterface
superTypes: [
PsiType:Object
PsiType:ComplexInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
]
KtClass:
line: 23
name: AbstractClassTransitiveBaseInterface
qualifier: my.AbstractClassTransitiveBaseInterface
light: SymbolLightClassForClassOrObject
name: AbstractClassTransitiveBaseInterface
qualifier: my.AbstractClassTransitiveBaseInterface
superTypes: [
PsiType:AbstractClassWithBaseInterface
PsiType:BaseInterface1
]
superClass: SymbolLightClassForClassOrObject: AbstractClassWithBaseInterface (my.AbstractClassWithBaseInterface)
interfaces: [
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
]
supers: [
SymbolLightClassForClassOrObject: AbstractClassWithBaseInterface (my.AbstractClassWithBaseInterface)
SymbolLightClassForInterface: BaseInterface1 (my.BaseInterface1)
]
KtClass:
line: 25
name: OpenComplexClass
qualifier: my.OpenComplexClass
light: SymbolLightClassForClassOrObject
name: OpenComplexClass
qualifier: my.OpenComplexClass
superTypes: [
PsiType:AbstractClassTransitiveBaseInterface
PsiType:ComplexInterface
]
superClass: SymbolLightClassForClassOrObject: AbstractClassTransitiveBaseInterface (my.AbstractClassTransitiveBaseInterface)
interfaces: [
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
]
supers: [
SymbolLightClassForClassOrObject: AbstractClassTransitiveBaseInterface (my.AbstractClassTransitiveBaseInterface)
SymbolLightClassForInterface: ComplexInterface (my.ComplexInterface)
]
KtClass:
line: 27
name: OnlyTransitiveInterface
qualifier: my.OnlyTransitiveInterface
light: SymbolLightClassForClassOrObject
name: OnlyTransitiveInterface
qualifier: my.OnlyTransitiveInterface
superTypes: [
PsiType:OpenComplexClass
]
superClass: SymbolLightClassForClassOrObject: OpenComplexClass (my.OpenComplexClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: OpenComplexClass (my.OpenComplexClass)
]
@@ -0,0 +1,10 @@
package abc
interface SingleInterface
interface BaseInterface1
interface BaseInterface2
interface InterfaceWithBase : BaseInterface1, BaseInterface2
interface InterfaceWithTransitive : InterfaceWithBase
@@ -0,0 +1,94 @@
SingleInterface.class:
KtClass:
line: 6
name: SingleInterface
qualifier: abc.SingleInterface
light: KtLightClassForDecompiledDeclaration
name: SingleInterface
qualifier: abc.SingleInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
BaseInterface2.class:
KtClass:
line: 6
name: BaseInterface2
qualifier: abc.BaseInterface2
light: KtLightClassForDecompiledDeclaration
name: BaseInterface2
qualifier: abc.BaseInterface2
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
InterfaceWithTransitive.class:
KtClass:
line: 6
name: InterfaceWithTransitive
qualifier: abc.InterfaceWithTransitive
light: KtLightClassForDecompiledDeclaration
name: InterfaceWithTransitive
qualifier: abc.InterfaceWithTransitive
superTypes: [
PsiType:InterfaceWithBase
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: InterfaceWithBase (abc.InterfaceWithBase)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: InterfaceWithBase (abc.InterfaceWithBase)
]
InterfaceWithBase.class:
KtClass:
line: 6
name: InterfaceWithBase
qualifier: abc.InterfaceWithBase
light: KtLightClassForDecompiledDeclaration
name: InterfaceWithBase
qualifier: abc.InterfaceWithBase
superTypes: [
PsiType:BaseInterface1
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface1 (abc.BaseInterface1)
KtLightClassForDecompiledDeclaration: BaseInterface2 (abc.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: BaseInterface1 (abc.BaseInterface1)
KtLightClassForDecompiledDeclaration: BaseInterface2 (abc.BaseInterface2)
]
BaseInterface1.class:
KtClass:
line: 6
name: BaseInterface1
qualifier: abc.BaseInterface1
light: KtLightClassForDecompiledDeclaration
name: BaseInterface1
qualifier: abc.BaseInterface1
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
@@ -0,0 +1,89 @@
KtClass:
line: 3
name: SingleInterface
qualifier: abc.SingleInterface
light: SymbolLightClassForInterface
name: SingleInterface
qualifier: abc.SingleInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 5
name: BaseInterface1
qualifier: abc.BaseInterface1
light: SymbolLightClassForInterface
name: BaseInterface1
qualifier: abc.BaseInterface1
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 6
name: BaseInterface2
qualifier: abc.BaseInterface2
light: SymbolLightClassForInterface
name: BaseInterface2
qualifier: abc.BaseInterface2
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 8
name: InterfaceWithBase
qualifier: abc.InterfaceWithBase
light: SymbolLightClassForInterface
name: InterfaceWithBase
qualifier: abc.InterfaceWithBase
superTypes: [
PsiType:BaseInterface1
PsiType:BaseInterface2
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface1 (abc.BaseInterface1)
SymbolLightClassForInterface: BaseInterface2 (abc.BaseInterface2)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface1 (abc.BaseInterface1)
SymbolLightClassForInterface: BaseInterface2 (abc.BaseInterface2)
]
KtClass:
line: 10
name: InterfaceWithTransitive
qualifier: abc.InterfaceWithTransitive
light: SymbolLightClassForInterface
name: InterfaceWithTransitive
qualifier: abc.InterfaceWithTransitive
superTypes: [
PsiType:InterfaceWithBase
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: InterfaceWithBase (abc.InterfaceWithBase)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: InterfaceWithBase (abc.InterfaceWithBase)
]
@@ -0,0 +1,22 @@
two.Object|java.lang.Object|false| -> true
two.Object|java.lang.Object|true| -> true
two.Object|two.BaseInterface|false| -> false
two.Object|two.BaseInterface|true| -> false
two.ObjectWithInterface|two.BaseInterface|false| -> true
two.ObjectWithInterface|two.BaseInterface|true| -> true
two.ObjectWithInterface|java.lang.Object|false| -> true
two.ObjectWithInterface|java.lang.Object|true| -> true
two.ObjectWithClassAndInterface|java.lang.Object|false| -> false
two.ObjectWithClassAndInterface|java.lang.Object|true| -> true
two.ObjectWithClassAndInterface|two.NonBaseClass|false| -> true
two.ObjectWithClassAndInterface|two.NonBaseClass|true| -> true
two.ObjectWithClassAndInterface|two.NonBaseInterface|false| -> true
two.ObjectWithClassAndInterface|two.NonBaseInterface|true| -> true
two.ObjectWithClassAndJavaInterface|java.lang.Object|false| -> false
two.ObjectWithClassAndJavaInterface|java.lang.Object|true| -> true
two.ObjectWithClassAndJavaInterface|two.NonBaseClass|false| -> true
two.ObjectWithClassAndJavaInterface|two.NonBaseClass|true| -> true
two.ObjectWithClassAndJavaInterface|two.NonBaseInterface|false| -> false
two.ObjectWithClassAndJavaInterface|two.NonBaseInterface|true| -> false
two.ObjectWithClassAndJavaInterface|java.lang.Runnable|false| -> true
two.ObjectWithClassAndJavaInterface|java.lang.Runnable|true| -> true
@@ -0,0 +1,30 @@
package two
import java.lang.Runnable
interface BaseInterface
interface NonBaseInterface : BaseInterface
interface AnotherInterface
abstract class BaseClass
abstract class NonBaseClass : BaseClass()
object Object
object ObjectWithInterface : BaseInterface
object ObjectWithNonBaseInterface : NonBaseInterface
object ObjectWithClass : BaseClass()
object ObjectWithClassAndInterface : NonBaseClass(), NonBaseInterface
object ObjectWithClassAndJavaInterface : NonBaseClass(), Runnable {
override fun run() {}
}
val a = object : BaseClass() {}
val b = object : NonBaseClass() {}
val c = object : BaseInterface {}
val d = object : NonBaseInterface {}
val e: NonBaseInterface = object : BaseClass(), NonBaseInterface, AnotherInterface {}
val f: AnotherInterface = object : BaseInterface, AnotherInterface {}
@@ -0,0 +1,207 @@
ObjectWithClassAndInterface.class:
KtObjectDeclaration:
line: 6
name: ObjectWithClassAndInterface
qualifier: two.ObjectWithClassAndInterface
light: KtLightClassForDecompiledDeclaration
name: ObjectWithClassAndInterface
qualifier: two.ObjectWithClassAndInterface
superTypes: [
PsiType:NonBaseClass
PsiType:NonBaseInterface
]
superClass: KtLightClassForDecompiledDeclaration: NonBaseClass (two.NonBaseClass)
interfaces: [
KtLightClassForDecompiledDeclaration: NonBaseInterface (two.NonBaseInterface)
]
supers: [
KtLightClassForDecompiledDeclaration: NonBaseClass (two.NonBaseClass)
KtLightClassForDecompiledDeclaration: NonBaseInterface (two.NonBaseInterface)
]
BaseInterface.class:
KtClass:
line: 6
name: BaseInterface
qualifier: two.BaseInterface
light: KtLightClassForDecompiledDeclaration
name: BaseInterface
qualifier: two.BaseInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
NonBaseClass.class:
KtClass:
line: 6
name: NonBaseClass
qualifier: two.NonBaseClass
light: KtLightClassForDecompiledDeclaration
name: NonBaseClass
qualifier: two.NonBaseClass
superTypes: [
PsiType:BaseClass
]
superClass: KtLightClassForDecompiledDeclaration: BaseClass (two.BaseClass)
interfaces: []
supers: [
KtLightClassForDecompiledDeclaration: BaseClass (two.BaseClass)
]
Object.class:
KtObjectDeclaration:
line: 6
name: Object
qualifier: two.Object
light: KtLightClassForDecompiledDeclaration
name: Object
qualifier: two.Object
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
BaseClass.class:
KtClass:
line: 6
name: BaseClass
qualifier: two.BaseClass
light: KtLightClassForDecompiledDeclaration
name: BaseClass
qualifier: two.BaseClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
ObjectWithClass.class:
KtObjectDeclaration:
line: 6
name: ObjectWithClass
qualifier: two.ObjectWithClass
light: KtLightClassForDecompiledDeclaration
name: ObjectWithClass
qualifier: two.ObjectWithClass
superTypes: [
PsiType:BaseClass
]
superClass: KtLightClassForDecompiledDeclaration: BaseClass (two.BaseClass)
interfaces: []
supers: [
KtLightClassForDecompiledDeclaration: BaseClass (two.BaseClass)
]
ObjectWithInterface.class:
KtObjectDeclaration:
line: 6
name: ObjectWithInterface
qualifier: two.ObjectWithInterface
light: KtLightClassForDecompiledDeclaration
name: ObjectWithInterface
qualifier: two.ObjectWithInterface
superTypes: [
PsiType:Object
PsiType:BaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface (two.BaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: BaseInterface (two.BaseInterface)
]
ObjectWithClassAndJavaInterface.class:
KtObjectDeclaration:
line: 6
name: ObjectWithClassAndJavaInterface
qualifier: two.ObjectWithClassAndJavaInterface
light: KtLightClassForDecompiledDeclaration
name: ObjectWithClassAndJavaInterface
qualifier: two.ObjectWithClassAndJavaInterface
superTypes: [
PsiType:NonBaseClass
PsiType:Runnable
]
superClass: KtLightClassForDecompiledDeclaration: NonBaseClass (two.NonBaseClass)
interfaces: [
ClsClassImpl: Runnable (java.lang.Runnable)
]
supers: [
KtLightClassForDecompiledDeclaration: NonBaseClass (two.NonBaseClass)
ClsClassImpl: Runnable (java.lang.Runnable)
]
ObjectsKt.class:
NonBaseInterface.class:
KtClass:
line: 6
name: NonBaseInterface
qualifier: two.NonBaseInterface
light: KtLightClassForDecompiledDeclaration
name: NonBaseInterface
qualifier: two.NonBaseInterface
superTypes: [
PsiType:BaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: BaseInterface (two.BaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: BaseInterface (two.BaseInterface)
]
AnotherInterface.class:
KtClass:
line: 6
name: AnotherInterface
qualifier: two.AnotherInterface
light: KtLightClassForDecompiledDeclaration
name: AnotherInterface
qualifier: two.AnotherInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
ObjectWithNonBaseInterface.class:
KtObjectDeclaration:
line: 6
name: ObjectWithNonBaseInterface
qualifier: two.ObjectWithNonBaseInterface
light: KtLightClassForDecompiledDeclaration
name: ObjectWithNonBaseInterface
qualifier: two.ObjectWithNonBaseInterface
superTypes: [
PsiType:Object
PsiType:NonBaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
KtLightClassForDecompiledDeclaration: NonBaseInterface (two.NonBaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
KtLightClassForDecompiledDeclaration: NonBaseInterface (two.NonBaseInterface)
]
@@ -0,0 +1,303 @@
KtClass:
line: 5
name: BaseInterface
qualifier: two.BaseInterface
light: SymbolLightClassForInterface
name: BaseInterface
qualifier: two.BaseInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 6
name: NonBaseInterface
qualifier: two.NonBaseInterface
light: SymbolLightClassForInterface
name: NonBaseInterface
qualifier: two.NonBaseInterface
superTypes: [
PsiType:BaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]
KtClass:
line: 7
name: AnotherInterface
qualifier: two.AnotherInterface
light: SymbolLightClassForInterface
name: AnotherInterface
qualifier: two.AnotherInterface
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 9
name: BaseClass
qualifier: two.BaseClass
light: SymbolLightClassForClassOrObject
name: BaseClass
qualifier: two.BaseClass
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtClass:
line: 10
name: NonBaseClass
qualifier: two.NonBaseClass
light: SymbolLightClassForClassOrObject
name: NonBaseClass
qualifier: two.NonBaseClass
superTypes: [
PsiType:BaseClass
]
superClass: SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
]
KtObjectDeclaration:
line: 12
name: Object
qualifier: two.Object
light: SymbolLightClassForClassOrObject
name: Object
qualifier: two.Object
superTypes: [
PsiType:Object
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: []
supers: [
ClsClassImpl: Object (java.lang.Object)
]
KtObjectDeclaration:
line: 14
name: ObjectWithInterface
qualifier: two.ObjectWithInterface
light: SymbolLightClassForClassOrObject
name: ObjectWithInterface
qualifier: two.ObjectWithInterface
superTypes: [
PsiType:Object
PsiType:BaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]
KtObjectDeclaration:
line: 16
name: ObjectWithNonBaseInterface
qualifier: two.ObjectWithNonBaseInterface
light: SymbolLightClassForClassOrObject
name: ObjectWithNonBaseInterface
qualifier: two.ObjectWithNonBaseInterface
superTypes: [
PsiType:Object
PsiType:NonBaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: NonBaseInterface (two.NonBaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: NonBaseInterface (two.NonBaseInterface)
]
KtObjectDeclaration:
line: 18
name: ObjectWithClass
qualifier: two.ObjectWithClass
light: SymbolLightClassForClassOrObject
name: ObjectWithClass
qualifier: two.ObjectWithClass
superTypes: [
PsiType:BaseClass
]
superClass: SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
]
KtObjectDeclaration:
line: 20
name: ObjectWithClassAndInterface
qualifier: two.ObjectWithClassAndInterface
light: SymbolLightClassForClassOrObject
name: ObjectWithClassAndInterface
qualifier: two.ObjectWithClassAndInterface
superTypes: [
PsiType:NonBaseClass
PsiType:NonBaseInterface
]
superClass: SymbolLightClassForClassOrObject: NonBaseClass (two.NonBaseClass)
interfaces: [
SymbolLightClassForInterface: NonBaseInterface (two.NonBaseInterface)
]
supers: [
SymbolLightClassForClassOrObject: NonBaseClass (two.NonBaseClass)
SymbolLightClassForInterface: NonBaseInterface (two.NonBaseInterface)
]
KtObjectDeclaration:
line: 21
name: ObjectWithClassAndJavaInterface
qualifier: two.ObjectWithClassAndJavaInterface
light: SymbolLightClassForClassOrObject
name: ObjectWithClassAndJavaInterface
qualifier: two.ObjectWithClassAndJavaInterface
superTypes: [
PsiType:NonBaseClass
PsiType:Runnable
]
superClass: SymbolLightClassForClassOrObject: NonBaseClass (two.NonBaseClass)
interfaces: [
ClsClassImpl: Runnable (java.lang.Runnable)
]
supers: [
SymbolLightClassForClassOrObject: NonBaseClass (two.NonBaseClass)
ClsClassImpl: Runnable (java.lang.Runnable)
]
KtObjectDeclaration:
line: 25
name: null
qualifier: null
light: SymbolLightClassForAnonymousObject
name: null
qualifier: null
superTypes: [
PsiType:BaseClass
]
superClass: SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
]
KtObjectDeclaration:
line: 26
name: null
qualifier: null
light: SymbolLightClassForAnonymousObject
name: null
qualifier: null
superTypes: [
PsiType:NonBaseClass
]
superClass: SymbolLightClassForClassOrObject: NonBaseClass (two.NonBaseClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: NonBaseClass (two.NonBaseClass)
]
KtObjectDeclaration:
line: 27
name: null
qualifier: null
light: SymbolLightClassForAnonymousObject
name: null
qualifier: null
superTypes: [
PsiType:Object
PsiType:BaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]
KtObjectDeclaration:
line: 28
name: null
qualifier: null
light: SymbolLightClassForAnonymousObject
name: null
qualifier: null
superTypes: [
PsiType:Object
PsiType:NonBaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: NonBaseInterface (two.NonBaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: NonBaseInterface (two.NonBaseInterface)
]
KtObjectDeclaration:
line: 29
name: null
qualifier: null
light: SymbolLightClassForAnonymousObject
name: null
qualifier: null
superTypes: [
PsiType:BaseClass
]
superClass: SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
interfaces: []
supers: [
SymbolLightClassForClassOrObject: BaseClass (two.BaseClass)
]
KtObjectDeclaration:
line: 30
name: null
qualifier: null
light: SymbolLightClassForAnonymousObject
name: null
qualifier: null
superTypes: [
PsiType:Object
PsiType:BaseInterface
]
superClass: ClsClassImpl: Object (java.lang.Object)
interfaces: [
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]
supers: [
ClsClassImpl: Object (java.lang.Object)
SymbolLightClassForInterface: BaseInterface (two.BaseInterface)
]