Better main function recognition and tests

This commit is contained in:
Sergey Mashkov
2015-07-23 21:12:14 +03:00
parent 273e69c02c
commit 8457b53f8b
14 changed files with 217 additions and 58 deletions
-5
View File
@@ -1,5 +0,0 @@
package some
fun foo() {
}
@@ -0,0 +1,39 @@
package companions
import kotlin.platform.platformName
import kotlin.platform.platformStatic
class A {
companion object {
platformStatic
fun main(args: Array<String>) {
// yes
}
}
}
class B {
companion object {
fun main(args: Array<String>) {
// no
}
}
}
class C {
companion object {
platformStatic
platformName("main0")
fun main(args: Array<String>) { // no
}
}
}
class D {
companion object {
platformStatic
platformName("main")
fun badName(args: Array<String>) { // yes
}
}
}
@@ -0,0 +1,8 @@
package pkg2
import kotlin.platform.platformName
platformName("aa")
fun main(args: Array<String>) {
// no
}
@@ -0,0 +1,8 @@
package pkg3
import kotlin.platform.platformName
platformName("main")
fun aaa(args: Array<String>) {
// yes
}
@@ -0,0 +1,5 @@
package pkg1
fun main(args: Array<String>) { // yes
}
@@ -0,0 +1,5 @@
package pkg4
fun main(args: Array<in String>) {
// no
}
@@ -0,0 +1,5 @@
package pkg5
fun main(args: Array<out String>) {
// no
}