package toplevelObjectDeclarations | |
open class Foo(y : Int) { | |
~foo()~open fun foo() : Int = 1 | |
} | |
object ~A~A : Foo(0) { | |
~x~val x : Int = 2 | |
fun test() { | |
return `x`x + `foo()`foo() | |
} | |
} | |
object B : A {} | |
~ns.x~val x = `A`A.`foo()`foo() | |
fun f() { | |
~y~val y = object : Foo(`ns.x`x) { | |
init { | |
`ns.x`x + 12 | |
} | |
~y.foo()~override fun foo() : Int = 1 | |
} | |
val z = `y`y.`y.foo()`foo() | |
} |