blob: d922d6333cb691dfd95110bd9e3e3cb5d8a9e3c0 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
object Bug {
def main(args: Array[String]) {
var test: String = null
val result = bar(foo(test))
test = "bar"
if (result.str == null) {
println("Destroy ALL THE THINGS!!!")
} else {
println("Stroke a kitten")
}
}
class Result(_str: => String) {
lazy val str = _str
}
def foo(str: => String)(i: Int) = new Result(str)
def bar(f: Int => Result) = f(42)
}
|