AnalyzerExtension refactoring, added support for inline properties
This commit is contained in:
+21
@@ -0,0 +1,21 @@
|
||||
// WITH_REFLECT
|
||||
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
class Delegate {
|
||||
operator fun getValue(t: Any?, p: KProperty<*>): Int = 1
|
||||
}
|
||||
|
||||
open class A {
|
||||
<!INLINE_PROPERTY_WITH_BACKING_FIELD!>inline val z1<!> = 1
|
||||
|
||||
<!INLINE_PROPERTY_WITH_BACKING_FIELD!>val z1_1<!> = 1
|
||||
inline get() = field + 1
|
||||
|
||||
<!INLINE_PROPERTY_WITH_BACKING_FIELD!>inline var z2<!> = 1
|
||||
|
||||
<!INLINE_PROPERTY_WITH_BACKING_FIELD!>var z2_1<!> = 1
|
||||
inline set(p: Int) {}
|
||||
|
||||
<!INLINE_PROPERTY_WITH_BACKING_FIELD!>inline val z<!> by Delegate()
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package
|
||||
|
||||
public open class A {
|
||||
public constructor A()
|
||||
public final val z: kotlin.Int
|
||||
public final val z1: kotlin.Int = 1
|
||||
public final val z1_1: kotlin.Int = 1
|
||||
public final var z2: kotlin.Int
|
||||
public final var z2_1: kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Delegate {
|
||||
public constructor Delegate()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final operator fun getValue(/*0*/ t: kotlin.Any?, /*1*/ p: kotlin.reflect.KProperty<*>): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
// !DIAGNOSTICS: -UNUSED_EXPRESSION -UNUSED_PARAMETER -UNUSED_VARIABLE -NOTHING_TO_INLINE
|
||||
|
||||
inline val z: Int
|
||||
get() {
|
||||
|
||||
<!NOT_YET_SUPPORTED_IN_INLINE!>class A {
|
||||
fun a() {
|
||||
class AInner {}
|
||||
}
|
||||
}<!>
|
||||
|
||||
<!LOCAL_OBJECT_NOT_ALLOWED!>object B<!>{
|
||||
<!LOCAL_OBJECT_NOT_ALLOWED!>object BInner<!> {}
|
||||
}
|
||||
|
||||
<!NOT_YET_SUPPORTED_IN_INLINE!>fun local() {
|
||||
fun localInner() {}
|
||||
}<!>
|
||||
return 1
|
||||
}
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
package
|
||||
|
||||
public val z: kotlin.Int
|
||||
@@ -0,0 +1,38 @@
|
||||
final class FinalProperty {
|
||||
inline val valProp: Int
|
||||
get() = 1
|
||||
|
||||
val valProp_1: Int
|
||||
inline get() = 1
|
||||
|
||||
inline var varProp: Int
|
||||
get() = 1
|
||||
set(p: Int) {}
|
||||
|
||||
var varProp_2: Int
|
||||
get() = 1
|
||||
inline set(p: Int) {}
|
||||
}
|
||||
|
||||
|
||||
open class OpenProperty {
|
||||
<!DECLARATION_CANT_BE_INLINED!>inline open val valProp: Int<!>
|
||||
get() = 1
|
||||
|
||||
<!DECLARATION_CANT_BE_INLINED!>open val valProp_1: Int<!>
|
||||
inline get() = 1
|
||||
|
||||
<!DECLARATION_CANT_BE_INLINED!>inline open var varProp: Int<!>
|
||||
get() = 1
|
||||
set(p: Int) {}
|
||||
|
||||
<!DECLARATION_CANT_BE_INLINED!>open var varProp_2: Int<!>
|
||||
get() = 1
|
||||
inline set(p: Int) {}
|
||||
}
|
||||
|
||||
|
||||
interface AbstractProperty {
|
||||
<!DECLARATION_CANT_BE_INLINED!>inline abstract val valProp: Int<!>
|
||||
<!DECLARATION_CANT_BE_INLINED!>inline abstract var varProp: Int<!>
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package
|
||||
|
||||
public interface AbstractProperty {
|
||||
public abstract val valProp: kotlin.Int
|
||||
public abstract var varProp: kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class FinalProperty {
|
||||
public constructor FinalProperty()
|
||||
public final val valProp: kotlin.Int
|
||||
public final val valProp_1: kotlin.Int
|
||||
public final var varProp: kotlin.Int
|
||||
public final var varProp_2: kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class OpenProperty {
|
||||
public constructor OpenProperty()
|
||||
public open val valProp: kotlin.Int
|
||||
public open val valProp_1: kotlin.Int
|
||||
public open var varProp: kotlin.Int
|
||||
public open var varProp_2: kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
Reference in New Issue
Block a user