diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightClass.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightClass.kt index 8eb98380af8..ff6155903e1 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightClass.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightClass.kt @@ -209,7 +209,7 @@ internal open class SymbolLightClass( result } - private fun addPropertyBackingFields(result: MutableList) { + protected fun addPropertyBackingFields(result: MutableList) { val propertySymbols = classOrObjectSymbol.getDeclaredMemberScope().getCallableSymbols() .filterIsInstance() .applyIf(isCompanionObject) { diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightInlineClass.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightInlineClass.kt index 96bece41935..dd4ae69ee0f 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightInlineClass.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/SymbolLightInlineClass.kt @@ -57,9 +57,15 @@ internal class SymbolLightInlineClass( result } + private val _ownFields: List by lazyPub { + mutableListOf().apply { + addPropertyBackingFields(this) + } + } + override fun getOwnMethods(): List = _ownMethods - override fun getOwnFields(): List = emptyList() + override fun getOwnFields(): List = _ownFields override fun copy(): SymbolLightInlineClass = SymbolLightInlineClass(classOrObjectSymbol, manager) } diff --git a/compiler/testData/asJava/ultraLightClasses/inlineClasses.fir.java b/compiler/testData/asJava/ultraLightClasses/inlineClasses.fir.java new file mode 100644 index 00000000000..132994763bf --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/inlineClasses.fir.java @@ -0,0 +1,37 @@ +public final class UInt /* UInt*/ { + private final int value; + +} + +public enum Foo /* Foo*/ { + ; + + private final int x; + + @org.jetbrains.annotations.NotNull() + public static Foo valueOf(@org.jetbrains.annotations.NotNull() java.lang.String) throws java.lang.IllegalArgumentException;// valueOf(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public static Foo[] values();// values() + + public final int getX();// getX() + +} + +public final class InlinedDelegate /* InlinedDelegate*/ { + private T node; + + public final T getNode();// getNode() + +} + +public final class InlineInheritance /* InlineInheritance*/ { + private final int v; + + public final int getV();// getV() + + public int getX();// getX() + + public int y();// y() + +}