Fix recusrive calls in infix and prefix form
The infamous invokeOperation() method removed
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
fun Int.test(x : Int) : Int {
|
||||
if (this > 1) {
|
||||
return (this - 1) test x
|
||||
}
|
||||
return this
|
||||
}
|
||||
|
||||
fun box() : String = if (10.test(10) == 1) "OK" else "FAIL"
|
||||
@@ -0,0 +1,8 @@
|
||||
fun String.plus() : String {
|
||||
if (this == "") {
|
||||
return "done"
|
||||
}
|
||||
return +""
|
||||
}
|
||||
|
||||
fun box() : String = if (+"11" == "done") "OK" else "FAIL"
|
||||
@@ -0,0 +1,11 @@
|
||||
class C
|
||||
|
||||
fun C.compareTo(o: C) : Int {
|
||||
if (this == o) return 0
|
||||
if (o >= o) {
|
||||
return 1
|
||||
}
|
||||
return -1
|
||||
}
|
||||
|
||||
fun box() : String = if (C() > C()) "OK" else "FAIL"
|
||||
@@ -0,0 +1,12 @@
|
||||
fun String.inc() : String {
|
||||
if (this == "") {
|
||||
return "done"
|
||||
}
|
||||
var s = ""
|
||||
return ++s
|
||||
}
|
||||
|
||||
fun box() : String {
|
||||
var s = "11test"
|
||||
return if (++s == "done") "OK" else "FAIL"
|
||||
}
|
||||
Reference in New Issue
Block a user