Drop Experimental.Impact, simplify related code and tests
See https://github.com/Kotlin/KEEP/issues/95#issuecomment-383889404 Drop Experimental.changesMayBreak, Experimental.Impact, the concept of signature/body usage, same module exemption. Make the majority of tests single-module because there is now no difference in the checker between usages from the same module or from another module
This commit is contained in:
+83
@@ -0,0 +1,83 @@
|
||||
// !DIAGNOSTICS: -NOTHING_TO_INLINE
|
||||
// !USE_EXPERIMENTAL: kotlin.Experimental
|
||||
// FILE: api.kt
|
||||
|
||||
package api
|
||||
|
||||
@Experimental(Experimental.Level.WARNING)
|
||||
annotation class API
|
||||
|
||||
@API
|
||||
fun f() {}
|
||||
|
||||
// FILE: usage.kt
|
||||
|
||||
package usage
|
||||
|
||||
import api.*
|
||||
|
||||
fun use1() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
|
||||
val use2 = <!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
|
||||
// FILE: inline-usage.kt
|
||||
|
||||
package usage
|
||||
|
||||
import api.*
|
||||
|
||||
inline fun inlineUse1() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
|
||||
inline var inlineUse2: Unit
|
||||
get() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
set(value) {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
|
||||
var inlineUse3: Unit
|
||||
inline get() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
@API
|
||||
inline set(value) {
|
||||
f()
|
||||
}
|
||||
|
||||
@API
|
||||
inline fun inlineUse4() {
|
||||
f()
|
||||
}
|
||||
|
||||
// FILE: private-inline-usage.kt
|
||||
|
||||
package usage
|
||||
|
||||
import api.*
|
||||
|
||||
private inline fun privateInline1() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
|
||||
internal inline fun privateInline2() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
|
||||
private inline var privateInline3: Unit
|
||||
get() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
set(value) {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
|
||||
internal class InternalClass {
|
||||
inline fun privateInline4() {
|
||||
<!EXPERIMENTAL_API_USAGE!>f<!>()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user