[FIR] Do not enhance java fields to firProperty

This commit is contained in:
Simon Ogorodnik
2019-05-15 15:51:25 +03:00
committed by Mikhail Glukhikh
parent 397aaa189e
commit 6c313895df
37 changed files with 86 additions and 176 deletions
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.fir.declarations.impl.FirAbstractCallableMember
import org.jetbrains.kotlin.fir.expressions.FirExpression
import org.jetbrains.kotlin.fir.java.types.FirJavaTypeRef
import org.jetbrains.kotlin.fir.symbols.impl.FirPropertySymbol
import org.jetbrains.kotlin.fir.types.FirTypeRef
import org.jetbrains.kotlin.name.Name
class FirJavaField(
@@ -21,7 +22,7 @@ class FirJavaField(
name: Name,
visibility: Visibility,
modality: Modality?,
returnTypeRef: FirJavaTypeRef,
returnTypeRef: FirTypeRef,
override val isVar: Boolean,
isStatic: Boolean
) : FirAbstractCallableMember(
@@ -59,7 +59,7 @@ class JavaClassEnhancementScope(
useSiteScope.processPropertiesByName(name) process@{ original ->
val field = enhancements.getOrPut(original) { enhance(original, name) }
processor(field as ConePropertySymbol)
processor(field as ConeVariableSymbol)
}
return super.processPropertiesByName(name, processor)
@@ -78,28 +78,26 @@ class JavaClassEnhancementScope(
private fun enhance(
original: ConeVariableSymbol,
name: Name
): ConePropertySymbol {
): ConeVariableSymbol {
when (val firElement = (original as FirBasedSymbol<*>).fir) {
is FirJavaField -> {
if (firElement.returnTypeRef !is FirJavaTypeRef) return original
val memberContext = context.copyWithNewDefaultTypeQualifiers(typeQualifierResolver, jsr305State, firElement.annotations)
val newReturnTypeRef = enhanceReturnType(firElement, emptyList(), memberContext, null)
val symbol = FirPropertySymbol(original.callableId)
with(firElement) {
FirMemberPropertyImpl(
this@JavaClassEnhancementScope.session, null, symbol, name,
visibility, modality, isExpect, isActual, isOverride,
isConst = false, isLateInit = false,
receiverTypeRef = null,
returnTypeRef = newReturnTypeRef,
isVar = isVar, initializer = null,
getter = FirDefaultPropertyGetter(this@JavaClassEnhancementScope.session, null, newReturnTypeRef, visibility),
setter = FirDefaultPropertySetter(this@JavaClassEnhancementScope.session, null, newReturnTypeRef, visibility),
delegate = null
FirJavaField(
session,
symbol,
name,
visibility,
modality,
newReturnTypeRef,
isVar,
isStatic
).apply {
annotations += firElement.annotations
status.isStatic = firElement.isStatic
}
}
return symbol
@@ -126,7 +126,7 @@ class JavaClassUseSiteScope(
}
}
is FirPropertySymbol -> {
val self = fir as FirProperty
val self = fir as? FirProperty ?: return null
candidates.firstOrNull {
val member = (it as FirFunctionSymbol).fir as FirNamedFunction
self.modality != Modality.FINAL && isOverriddenPropertyCheck(member, self)
@@ -70,6 +70,7 @@ abstract class AbstractFirOverrideScope(val session: FirSession) : FirScope {
self.receiverTypeRef,
ConeSubstitutor.Empty // TODO
)
is FirField -> false
else -> error("Unknown fir callable type: $declaration, $self")
}
}
@@ -1,9 +1,7 @@
@R|java/lang/annotation/Documented|() @R|javax/annotation/meta/TypeQualifierNickname|() @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) @R|java/lang/annotation/Retention|(R|java/lang/annotation/RetentionPolicy.RUNTIME|()) public abstract annotation class MyNullable : R|kotlin/Annotation| {
}
public open class NonNullNever : R|kotlin/Any| {
@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) public open var field: R|kotlin/String|?
public get(): R|kotlin/String|?
public set(value: R|kotlin/String|?): kotlin/Unit
@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) public open field field: R|kotlin/String|?
@R|MyNullable|() public open operator fun foo(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) x: R|kotlin/String|?, @R|MyNullable|() y: R|kotlin/CharSequence|?): R|kotlin/String|?
@@ -1,7 +1,5 @@
public open class Simple : R|kotlin/Any| {
@R|javax/annotation/Nullable|() public open var field: R|kotlin/String|?
public get(): R|kotlin/String|?
public set(value: R|kotlin/String|?): kotlin/Unit
@R|javax/annotation/Nullable|() public open field field: R|kotlin/String|?
@R|javax/annotation/Nullable|() public open operator fun foo(@R|javax/annotation/Nonnull|() x: R|kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence|?): R|kotlin/String|?
@@ -1,7 +1,5 @@
public open class Strange : R|kotlin/Any| {
@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.UNKNOWN|()) public open var field: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.UNKNOWN|()) public open field field: R|ft<kotlin/String, kotlin/String?>|!
@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.MAYBE|()) public open operator fun foo(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.ALWAYS|()) x: R|kotlin/String|, @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) y: R|kotlin/CharSequence|?): R|kotlin/String|?
@@ -1,11 +1,7 @@
@R|FieldsAreNullable|() public open class A : R|kotlin/Any| {
public open var field: R|kotlin/String|?
public get(): R|kotlin/String|?
public set(value: R|kotlin/String|?): kotlin/Unit
public open field field: R|kotlin/String|?
@R|javax/annotation/Nonnull|() public open var nonNullField: R|kotlin/String|
public get(): R|kotlin/String|
public set(value: R|kotlin/String|): kotlin/Unit
@R|javax/annotation/Nonnull|() public open field nonNullField: R|kotlin/String|
public open operator fun foo(q: R|ft<kotlin/String, kotlin/String?>|!, @R|javax/annotation/Nonnull|() x: R|kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence|?): R|ft<kotlin/String, kotlin/String?>|!
@@ -1,7 +1,5 @@
@R|NonNullApi|() public open class A : R|kotlin/Any| {
public open var field: R|kotlin/String|
public get(): R|kotlin/String|
public set(value: R|kotlin/String|): kotlin/Unit
public open field field: R|kotlin/String|
public open operator fun foo(x: R|kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence|?): R|kotlin/String|
@@ -1,7 +1,5 @@
@R|javax/annotation/ParametersAreNonnullByDefault|() public open class A : R|kotlin/Any| {
@R|javax/annotation/Nullable|() public open var field: R|kotlin/String|?
public get(): R|kotlin/String|?
public set(value: R|kotlin/String|?): kotlin/Unit
@R|javax/annotation/Nullable|() public open field field: R|kotlin/String|?
public open operator fun foo(q: R|kotlin/String|, @R|javax/annotation/Nonnull|() x: R|kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence|?): R|ft<kotlin/String, kotlin/String?>|!
@@ -1,7 +1,5 @@
public open class A : R|kotlin/Any| {
@R|javax/annotation/Nullable|() public open var field: R|kotlin/String|?
public get(): R|kotlin/String|?
public set(value: R|kotlin/String|?): kotlin/Unit
@R|javax/annotation/Nullable|() public open field field: R|kotlin/String|?
public open operator fun foo(q: R|ft<kotlin/String, kotlin/String?>|!, @R|javax/annotation/Nonnull|() x: R|kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence|?): R|ft<kotlin/String, kotlin/String?>|!
@@ -9,9 +7,7 @@ public open class A : R|kotlin/Any| {
}
public open class A2 : R|kotlin/Any| {
@R|javax/annotation/Nullable|() public open var field: R|kotlin/String|?
public get(): R|kotlin/String|?
public set(value: R|kotlin/String|?): kotlin/Unit
@R|javax/annotation/Nullable|() public open field field: R|kotlin/String|?
public open operator fun foo(q: R|ft<kotlin/String, kotlin/String?>|!, @R|javax/annotation/Nonnull|() x: R|kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence|?): R|ft<kotlin/String, kotlin/String?>|!
@@ -1,7 +1,5 @@
@R|spr/NonNullApi|() public open class A : R|kotlin/Any| {
public open var field: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
public open field field: R|ft<kotlin/String, kotlin/String?>|!
public open operator fun foo(x: R|kotlin/String|, @R|spr/Nullable|() y: R|kotlin/CharSequence|?): R|kotlin/String|
@@ -1,7 +1,5 @@
public open class A : R|kotlin/Any| {
public open var field: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
public open field field: R|ft<kotlin/String, kotlin/String?>|!
public open operator fun foo(x: R|ft<kotlin/String, kotlin/String?>|!, @R|spr/Nullable|() y: R|kotlin/CharSequence|?): R|ft<kotlin/String, kotlin/String?>|!
@@ -9,18 +9,14 @@ public/*package*/ open class A : R|kotlin/Any| {
}
public final enum class Mixed : R|kotlin/Enum<Mixed>| {
public final static val NOT_ENTRY_EITHER: R|ft<Mixed, Mixed?>|!
public get(): R|ft<Mixed, Mixed?>|!
public final static field NOT_ENTRY_EITHER: R|ft<Mixed, Mixed?>|!
}
public final enum class Signs : R|kotlin/Enum<Signs>| {
public final static val HELLO: R|ft<Signs, Signs?>|!
public get(): R|ft<Signs, Signs?>|!
public final static field HELLO: R|ft<Signs, Signs?>|!
public final static val WORLD: R|ft<Signs, Signs?>|!
public get(): R|ft<Signs, Signs?>|!
public final static field WORLD: R|ft<Signs, Signs?>|!
public final static val X: R|ft<Signs, Signs?>|!
public get(): R|ft<Signs, Signs?>|!
public final static field X: R|ft<Signs, Signs?>|!
}
@@ -276,6 +276,7 @@ class FirRenderer(builder: StringBuilder) : FirVisitorVoid() {
is FirTypeAlias -> "typealias"
is FirNamedFunction -> "fun"
is FirProperty -> if (declaration.isVal) "val" else "var"
is FirField -> "field"
is FirVariable -> if (declaration.isVal) "lval" else "lvar"
else -> "unknown"
}
@@ -335,6 +336,11 @@ class FirRenderer(builder: StringBuilder) : FirVisitorVoid() {
}
}
override fun visitField(field: FirField) {
visitVariable(field)
println()
}
override fun visitProperty(property: FirProperty) {
visitVariable(property)
println()
@@ -1,8 +1,6 @@
public final class ClassWithConstVal : R|kotlin/Any| {
public final val f: R|kotlin/Int|
public get(): R|kotlin/Int|
public final field f: R|kotlin/Int|
public final val f2: R|kotlin/Int|
public get(): R|kotlin/Int|
public final field f2: R|kotlin/Int|
}
+1 -3
View File
@@ -1,6 +1,4 @@
public final class FieldAsVar : R|kotlin/Any| {
public open var f: R|kotlin/Int|
public get(): R|kotlin/Int|
public set(value: R|kotlin/Int|): kotlin/Unit
public open field f: R|kotlin/Int|
}
@@ -1,6 +1,4 @@
public open class FieldOfArrayType : R|kotlin/Any| {
public open var files: R|kotlin/Array<ft<java/io/File, java/io/File?>>|
public get(): R|kotlin/Array<ft<java/io/File, java/io/File?>>|
public set(value: R|kotlin/Array<ft<java/io/File, java/io/File?>>|): kotlin/Unit
public open field files: R|kotlin/Array<ft<java/io/File, java/io/File?>>|
}
@@ -1,5 +1,4 @@
public final class FinalFieldAsVal : R|kotlin/Any| {
public final val f: R|kotlin/Int|
public get(): R|kotlin/Int|
public final field f: R|kotlin/Int|
}
@@ -1,17 +1,11 @@
public open class Frame : R|kotlin/Any| {
public/*package*/ open var accessibleContext: R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ get(): R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
public/*package*/ open field accessibleContext: R|ft<kotlin/String, kotlin/String?>|!
}
public open class JFrame : R|awt/Frame| {
protected/*protected and package*/ open var accessibleContext: R|ft<kotlin/String, kotlin/String?>|!
protected/*protected and package*/ get(): R|ft<kotlin/String, kotlin/String?>|!
protected/*protected and package*/ set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
protected/*protected and package*/ open field accessibleContext: R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ open var accessibleContext: R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ get(): R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
public/*package*/ open field accessibleContext: R|ft<kotlin/String, kotlin/String?>|!
public constructor(): R|test/JFrame|
@@ -1,11 +1,7 @@
public open class PrivateMembers : R|kotlin/Any| {
private open var field: R|kotlin/Int|
private get(): R|kotlin/Int|
private set(value: R|kotlin/Int|): kotlin/Unit
private open field field: R|kotlin/Int|
private open static var staticField: R|kotlin/Int|
private get(): R|kotlin/Int|
private set(value: R|kotlin/Int|): kotlin/Unit
private open static field staticField: R|kotlin/Int|
private open operator fun method(): R|kotlin/Unit|
+2 -6
View File
@@ -1,10 +1,6 @@
public final class TwoFields : R|kotlin/Any| {
public open var a: R|kotlin/Int|
public get(): R|kotlin/Int|
public set(value: R|kotlin/Int|): kotlin/Unit
public open field a: R|kotlin/Int|
public open var b: R|kotlin/Short|
public get(): R|kotlin/Short|
public set(value: R|kotlin/Short|): kotlin/Unit
public open field b: R|kotlin/Short|
}
@@ -1,11 +1,8 @@
public final enum class AnnotatedEnumEntry : R|kotlin/Enum<test/AnnotatedEnumEntry>| {
@R|test/AnnotatedEnumEntry.Anno|(String(a)) public final static val E1: R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
public get(): R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
@R|test/AnnotatedEnumEntry.Anno|(String(a)) public final static field E1: R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
@R|test/AnnotatedEnumEntry.Anno|(String(b)) @R|test/AnnotatedEnumEntry.Anno2|() public final static val E2: R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
public get(): R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
@R|test/AnnotatedEnumEntry.Anno|(String(b)) @R|test/AnnotatedEnumEntry.Anno2|() public final static field E2: R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
public final static val E3: R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
public get(): R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
public final static field E3: R|ft<test/AnnotatedEnumEntry, test/AnnotatedEnumEntry?>|!
}
@@ -1,8 +1,6 @@
public open class AnnotatedField : R|kotlin/Any| {
@R|test/AnnotatedField.Anno|(String(static)) public final static val x: R|kotlin/Int|
public get(): R|kotlin/Int|
@R|test/AnnotatedField.Anno|(String(static)) public final static field x: R|kotlin/Int|
@R|test/AnnotatedField.Anno|(String(member)) public final val y: R|kotlin/Int|
public get(): R|kotlin/Int|
@R|test/AnnotatedField.Anno|(String(member)) public final field y: R|kotlin/Int|
}
@@ -1,6 +1,5 @@
public final enum class EnumConstructorParameter : R|kotlin/Enum<test/EnumConstructorParameter>| {
public final static val INSTANCE: R|ft<test/EnumConstructorParameter, test/EnumConstructorParameter?>|!
public get(): R|ft<test/EnumConstructorParameter, test/EnumConstructorParameter?>|!
public final static field INSTANCE: R|ft<test/EnumConstructorParameter, test/EnumConstructorParameter?>|!
private constructor(@R|test/EnumConstructorParameter.Anno|(String(string)) s: R|ft<kotlin/String, kotlin/String?>|!): R|test/EnumConstructorParameter|
@@ -1,5 +1,4 @@
public abstract interface StringConstantInParam : R|kotlin/Any| {
public final static val HEL: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public final static field HEL: R|ft<kotlin/String, kotlin/String?>|!
}
@@ -1,12 +1,9 @@
public final enum class EnumMembers : R|kotlin/Enum<test/EnumMembers>| {
public final static val FIRST: R|ft<test/EnumMembers, test/EnumMembers?>|!
public get(): R|ft<test/EnumMembers, test/EnumMembers?>|!
public final static field FIRST: R|ft<test/EnumMembers, test/EnumMembers?>|!
public final static val SECOND: R|ft<test/EnumMembers, test/EnumMembers?>|!
public get(): R|ft<test/EnumMembers, test/EnumMembers?>|!
public final static field SECOND: R|ft<test/EnumMembers, test/EnumMembers?>|!
public final val isFirst: R|kotlin/Boolean|
public get(): R|kotlin/Boolean|
public final field isFirst: R|kotlin/Boolean|
public open operator fun first(): R|kotlin/Boolean|
@@ -1,8 +1,6 @@
public open enum class EnumWithSpecializedEntry : R|kotlin/Enum<test/EnumWithSpecializedEntry>| {
public final static val E1: R|ft<test/EnumWithSpecializedEntry, test/EnumWithSpecializedEntry?>|!
public get(): R|ft<test/EnumWithSpecializedEntry, test/EnumWithSpecializedEntry?>|!
public final static field E1: R|ft<test/EnumWithSpecializedEntry, test/EnumWithSpecializedEntry?>|!
public final static val E2: R|ft<test/EnumWithSpecializedEntry, test/EnumWithSpecializedEntry?>|!
public get(): R|ft<test/EnumWithSpecializedEntry, test/EnumWithSpecializedEntry?>|!
public final static field E2: R|ft<test/EnumWithSpecializedEntry, test/EnumWithSpecializedEntry?>|!
}
@@ -1,8 +1,6 @@
public final enum class JavaEnum : R|kotlin/Enum<test/JavaEnum>| {
public final static val ENTRY: R|ft<test/JavaEnum, test/JavaEnum?>|!
public get(): R|ft<test/JavaEnum, test/JavaEnum?>|!
public final static field ENTRY: R|ft<test/JavaEnum, test/JavaEnum?>|!
public final static val ANOTHER: R|ft<test/JavaEnum, test/JavaEnum?>|!
public get(): R|ft<test/JavaEnum, test/JavaEnum?>|!
public final static field ANOTHER: R|ft<test/JavaEnum, test/JavaEnum?>|!
}
@@ -1,14 +1,8 @@
public open class PropertyArrayTypes<T> : R|kotlin/Any| {
public open var arrayOfArrays: R|kotlin/Array<ft<kotlin/Array<ft<kotlin/String, kotlin/String?>>, kotlin/Array<ft<kotlin/String, kotlin/String?>>?>>|
public get(): R|kotlin/Array<ft<kotlin/Array<ft<kotlin/String, kotlin/String?>>, kotlin/Array<ft<kotlin/String, kotlin/String?>>?>>|
public set(value: R|kotlin/Array<ft<kotlin/Array<ft<kotlin/String, kotlin/String?>>, kotlin/Array<ft<kotlin/String, kotlin/String?>>?>>|): kotlin/Unit
public open field arrayOfArrays: R|kotlin/Array<ft<kotlin/Array<ft<kotlin/String, kotlin/String?>>, kotlin/Array<ft<kotlin/String, kotlin/String?>>?>>|
public open var array: R|kotlin/Array<ft<kotlin/String, kotlin/String?>>|
public get(): R|kotlin/Array<ft<kotlin/String, kotlin/String?>>|
public set(value: R|kotlin/Array<ft<kotlin/String, kotlin/String?>>|): kotlin/Unit
public open field array: R|kotlin/Array<ft<kotlin/String, kotlin/String?>>|
public open var genericArray: R|kotlin/Array<ft<T, T?>>|
public get(): R|kotlin/Array<ft<T, T?>>|
public set(value: R|kotlin/Array<ft<T, T?>>|): kotlin/Unit
public open field genericArray: R|kotlin/Array<ft<T, T?>>|
}
@@ -1,18 +1,10 @@
public open class PropertyComplexTypes<T> : R|kotlin/Any| {
public open var genericType: R|ft<T, T?>|!
public get(): R|ft<T, T?>|!
public set(value: R|ft<T, T?>|!): kotlin/Unit
public open field genericType: R|ft<T, T?>|!
public open var listDefinedGeneric: R|ft<java/util/ArrayList<ft<kotlin/String, kotlin/String?>>, java/util/ArrayList<ft<kotlin/String, kotlin/String?>>?>|!
public get(): R|ft<java/util/ArrayList<ft<kotlin/String, kotlin/String?>>, java/util/ArrayList<ft<kotlin/String, kotlin/String?>>?>|!
public set(value: R|ft<java/util/ArrayList<ft<kotlin/String, kotlin/String?>>, java/util/ArrayList<ft<kotlin/String, kotlin/String?>>?>|!): kotlin/Unit
public open field listDefinedGeneric: R|ft<java/util/ArrayList<ft<kotlin/String, kotlin/String?>>, java/util/ArrayList<ft<kotlin/String, kotlin/String?>>?>|!
public open var listGeneric: R|ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>|!
public get(): R|ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>|!
public set(value: R|ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>|!): kotlin/Unit
public open field listGeneric: R|ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>|!
public open var listOfGenericList: R|ft<java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>, java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>?>|!
public get(): R|ft<java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>, java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>?>|!
public set(value: R|ft<java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>, java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>?>|!): kotlin/Unit
public open field listOfGenericList: R|ft<java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>, java/util/ArrayList<ft<java/util/ArrayList<ft<T, T?>>, java/util/ArrayList<ft<T, T?>>?>>?>|!
}
@@ -1,10 +1,6 @@
public open class PropertySimpleType : R|kotlin/Any| {
public open var fieldOne: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
public open field fieldOne: R|ft<kotlin/String, kotlin/String?>|!
public open var fieldTwo: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public set(value: R|ft<kotlin/String, kotlin/String?>|!): kotlin/Unit
public open field fieldTwo: R|ft<kotlin/String, kotlin/String?>|!
}
@@ -1,6 +1,4 @@
public open class NotNullField : R|kotlin/Any| {
@R|org/jetbrains/annotations/NotNull|() public open var hi: R|kotlin/String|
public get(): R|kotlin/String|
public set(value: R|kotlin/String|): kotlin/Unit
@R|org/jetbrains/annotations/NotNull|() public open field hi: R|kotlin/String|
}
@@ -1,6 +1,4 @@
public open class ProtectedPackageProperty : R|kotlin/Any| {
protected/*protected and package*/ open var foo: R|kotlin/Int|
protected/*protected and package*/ get(): R|kotlin/Int|
protected/*protected and package*/ set(value: R|kotlin/Int|): kotlin/Unit
protected/*protected and package*/ open field foo: R|kotlin/Int|
}
@@ -1,11 +1,8 @@
public final enum class Enum : R|kotlin/Enum<test/Enum>| {
public final static val A: R|ft<test/Enum, test/Enum?>|!
public get(): R|ft<test/Enum, test/Enum?>|!
public final static field A: R|ft<test/Enum, test/Enum?>|!
public final static val B: R|ft<test/Enum, test/Enum?>|!
public get(): R|ft<test/Enum, test/Enum?>|!
public final static field B: R|ft<test/Enum, test/Enum?>|!
public final static val C: R|ft<test/Enum, test/Enum?>|!
public get(): R|ft<test/Enum, test/Enum?>|!
public final static field C: R|ft<test/Enum, test/Enum?>|!
}
@@ -1,20 +1,14 @@
public open class StaticFinal : R|kotlin/Any| {
public final static val publicNonNull: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public final static field publicNonNull: R|ft<kotlin/String, kotlin/String?>|!
public final static val publicNull: R|ft<kotlin/String, kotlin/String?>|!
public get(): R|ft<kotlin/String, kotlin/String?>|!
public final static field publicNull: R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ final static val packageNonNull: R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ get(): R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ final static field packageNonNull: R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ final static val packageNull: R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ get(): R|ft<kotlin/String, kotlin/String?>|!
public/*package*/ final static field packageNull: R|ft<kotlin/String, kotlin/String?>|!
private final static val privateNonNull: R|ft<kotlin/String, kotlin/String?>|!
private get(): R|ft<kotlin/String, kotlin/String?>|!
private final static field privateNonNull: R|ft<kotlin/String, kotlin/String?>|!
private final static val privateNull: R|ft<kotlin/String, kotlin/String?>|!
private get(): R|ft<kotlin/String, kotlin/String?>|!
private final static field privateNull: R|ft<kotlin/String, kotlin/String?>|!
}
@@ -1,13 +1,9 @@
public final enum class StaticMembersInEnum : R|kotlin/Enum<test/StaticMembersInEnum>| {
public final static val ENTRY: R|ft<test/StaticMembersInEnum, test/StaticMembersInEnum?>|!
public get(): R|ft<test/StaticMembersInEnum, test/StaticMembersInEnum?>|!
public final static field ENTRY: R|ft<test/StaticMembersInEnum, test/StaticMembersInEnum?>|!
public open static var STATIC_FIELD: R|kotlin/Int|
public get(): R|kotlin/Int|
public set(value: R|kotlin/Int|): kotlin/Unit
public open static field STATIC_FIELD: R|kotlin/Int|
public final static val CONSTANT: R|ft<test/StaticMembersInEnum, test/StaticMembersInEnum?>|!
public get(): R|ft<test/StaticMembersInEnum, test/StaticMembersInEnum?>|!
public final static field CONSTANT: R|ft<test/StaticMembersInEnum, test/StaticMembersInEnum?>|!
public open static operator fun foo(): R|kotlin/Unit|