Runner: Support classes and objects with [platformStatic] main()

#KT-6072 Fixed
This commit is contained in:
Alexey Sedunov
2014-12-12 19:11:27 +03:00
parent 4ecd3726b3
commit 3760eed8ff
5 changed files with 255 additions and 54 deletions
@@ -0,0 +1,78 @@
package q
import kotlin.platform.platformStatic
// RUN: q.Foo
object Foo {
// RUN: q.Foo
platformStatic fun main(s: Array<String>) {
println("Foo")
}
// RUN: q.Foo.InnerFoo
class InnerFoo {
class object {
// RUN: q.Foo.InnerFoo
platformStatic fun main(s: Array<String>) {
println("InnerFoo")
}
}
}
// RUN: q.Foo
class InnerFoo2 {
// RUN: q.Foo
platformStatic fun main(s: Array<String>) {
println("InnerFoo")
}
}
}
// RUN: q.QPackage
object Foo2 {
// RUN: q.QPackage
fun main(s: Array<String>) {
println("Foo2")
}
}
// RUN: q.Bar
class Bar {
class object {
// RUN: q.Bar
platformStatic fun main(s: Array<String>) {
println("Bar")
}
}
}
// RUN: q.QPackage
class Bar2 {
class object {
// RUN: q.QPackage
fun main(s: Array<String>) {
println("Bar2")
}
}
}
// RUN: q.QPackage
class Baz {
// RUN: q.QPackage
platformStatic fun main(s: Array<String>) {
println("Baz")
}
}
// RUN: q.QPackage
class Baz2 {
// RUN: q.QPackage
fun main(s: Array<String>) {
println("Baz2")
}
}
// RUN: q.QPackage
fun main(s: Array<String>) {
println("Top-level")
}