FIR: Implement data class constructor checker

This commit is contained in:
Tianyu Geng
2021-02-23 20:42:34 -08:00
committed by Mikhail Glukhikh
parent d2da15e039
commit 6e8bad6ef6
21 changed files with 160 additions and 69 deletions
@@ -13,10 +13,10 @@ class Case1<T>() {
// TESTCASE NUMBER: 2
class Case2<T>() {
data class A(t: T)
data class B(x: List<T>)
data class C(c: () -> T)
data class E(n: Nothing, t: T)
data class A(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>t: T<!>)
data class B(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>x: List<T><!>)
data class C(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>c: () -> T<!>)
data class E(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>n: Nothing<!>, <!DATA_CLASS_NOT_PROPERTY_PARAMETER!>t: T<!>)
}
// TESTCASE NUMBER: 3
@@ -4,18 +4,18 @@
// TESTCASE NUMBER: 1
data class A(x: Any?)
data class B(x: Any)
data class C(c: () -> Any)
data class D(e: Enum<*>)
data class E(n: Nothing)
data class F<T>(t: T)
data class A(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>x: Any?<!>)
data class B(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>x: Any<!>)
data class C(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>c: () -> Any<!>)
data class D(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>e: Enum<*><!>)
data class E(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>n: Nothing<!>)
data class F<T>(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>t: T<!>)
// TESTCASE NUMBER: 2
class Case2<T>() {
data class A(t: T)
data class B(x: List<T>)
data class C(c: () -> T)
data class E(n: Nothing, t: T)
data class A(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>t: T<!>)
data class B(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>x: List<T><!>)
data class C(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>c: () -> T<!>)
data class E(<!DATA_CLASS_NOT_PROPERTY_PARAMETER!>n: Nothing<!>, <!DATA_CLASS_NOT_PROPERTY_PARAMETER!>t: T<!>)
}