2014-02-14 07:16:56 -08:00
|
|
|
var fiber
|
|
|
|
|
var closure
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
var a = "before"
|
2014-04-04 18:24:55 -07:00
|
|
|
fiber = new Fiber {
|
2014-02-14 07:16:56 -08:00
|
|
|
IO.print(a)
|
|
|
|
|
Fiber.yield
|
|
|
|
|
a = "after"
|
|
|
|
|
Fiber.yield
|
|
|
|
|
IO.print(a)
|
|
|
|
|
a = "final"
|
2014-04-02 19:41:53 -07:00
|
|
|
}
|
2014-02-14 07:16:56 -08:00
|
|
|
|
2014-04-02 19:41:53 -07:00
|
|
|
closure = new Fn {
|
2014-02-14 07:16:56 -08:00
|
|
|
IO.print(a)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-04-14 07:23:05 -07:00
|
|
|
fiber.call // expect: before
|
2014-02-14 07:16:56 -08:00
|
|
|
closure.call // expect: before
|
2014-04-14 07:23:05 -07:00
|
|
|
fiber.call
|
2014-02-14 07:16:56 -08:00
|
|
|
closure.call // expect: after
|
2014-04-14 07:23:05 -07:00
|
|
|
fiber.call // expect: after
|
2014-02-14 07:16:56 -08:00
|
|
|
closure.call // expect: final
|